云原生构建Cloud Native Build构建项目配置 demo

云原生构建Cloud Native Build

cnb 构建项目 demo

  • 支持自定义构建环境
  • 支持部署到服务器
  • 支持发送构建结果通知

可拓展前后端项目

仓库地址

https://cnb.cool/passerma/cnb-build-demo

配置文件

yaml 复制代码
main:
  push:
    - name: "构建 $CNB_REPO_NAME"
      imports:
        - https://cnb.cool/your-repo-slug/-/blob/main/xxx/envs.yml
      docker:
        build: .cnb/Dockerfile  # 使用 Dockerfile 构建
      env:
        BUILD_MSG: ""           # 编译信息
        INDEX_PATH: "/home/"    # 部署路径
      # 这里写你的编译步骤
      stages:
        - name: 编译前端文件
          script: |
            npm install
            npm run build
        - name: 部署到服务器
          script: |
              sshpass -p "$REMOTE_PASS" ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null "$REMOTE_USER@$REMOTE_ADDR" "mv $INDEX_PATH/index $INDEX_PATH/index_$(date +%Y%m%d%H%M%S)"
              sshpass -p "$REMOTE_PASS" scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -r dist "$REMOTE_USER@$REMOTE_ADDR:$INDEX_PATH/index"

      # 编译完成发送消息
      endStages:
        - name: 生成构建消息
          exports:
            info: BUILD_MSG
          script: |
            MSG=$([ "$CNB_PIPELINE_STATUS" = "success" ] && echo "成功" || echo "失败, 原因: $CNB_BUILD_FAILED_MSG, 步骤: $CNB_BUILD_FAILED_STAGE_NAME")
            echo "$CNB_BUILD_USER 构建 $CNB_REPO_NAME $MSG"

        - name: 发送构建消息
          image: tencentcom/dingtalk-msg:latest
          settings:
            content: $BUILD_MSG
            to: $DINGTALK_USER
            c_type: "text"
            appKey: $DINGTALK_APPKEY
            appSecret: $DINGTALK_APPSECRET
            agentId: $DINGTALK_AGENTID
相关推荐
分布式存储与RustFS4 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
codeejun4 天前
每日一Go·MySQL-5、锁机制全解析
云原生·golang
张洛闻Eren4 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
不吃香菜kkk、4 天前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
ChaITSimpleLove4 天前
云原生性能对决:JDK21虚拟线程+GraalVM vs .NET10/11 技术栈深度对比
微服务·云原生·serverless·graalvm native·native aot·runtime async·.net11/java21
春天花会开1315 天前
Supabase 自部署 Edge Functions 超时从 60s 延长到 360s 完整复盘
运维·云原生
ysu_03145 天前
【2026】K8s GPU调度空占怎么解?Kueue与Volcano Gang配置
云原生·kubernetes·gpu算力·volcano·ai基础设施·kueue·gang scheduling
天天喝旺仔6 天前
分布式服务容错实战:用 Sentinel 实现限流、熔断与降级
分布式·微服务·云原生·sentinel
逐流人6 天前
Containerd容器管理实战:从架构原理到nerdctlcrictl工具链
linux·运维·云原生·容器·云计算·containerd
运维开发王义杰7 天前
跨项目直连数据库:是架构反模式,还是现实的工程妥协?
云原生