自动部署到云存储

功能介绍

持续集成可自动部署项目到云存储,适用于静态网站、编译供下载等场景,步骤如下:

  1. 在云存储(如「腾讯云 COS 对象存储」)中创建一个「存储桶」,获取名称、区域、密钥;

腾讯云存储 COS 创建存储桶

  1. 在持续集成中使用下述 Jenkinsfile:执行云存储命令进行上传;

Jenkinsfile

pipeline {
  agent any
  stages {
    stage('检出') {
      steps {
        checkout([$class: 'GitSCM', branches: [[name: env.GIT_BUILD_REF]],
        userRemoteConfigs: [[url: env.GIT_REPO_URL, credentialsId: env.CREDENTIALS_ID]]])
      }
    }
    stage('编译') {
      steps {
        // Markdown 转成 HTML
        // sh 'pip install mkdocs && mkdocs build'
        // React/VUE SPA 生成 HTML
        // sh 'npm run build'
        // Android 打包
        // sh './gradlew assembleDebug'
      }
    }
    stage('上传到腾讯云 COS 对象存储') {
      steps {
        sh "coscmd config -a ${env.COS_SECRET_ID} -s ${env.COS_SECRET_KEY}" +
           " -b ${env.COS_BUCKET_NAME} -r ${env.COS_BUCKET_REGION}"
        sh "rm -rf .git"
        sh 'coscmd upload -r ./ /'
        //sh 'coscmd upload -r ./dist /'
      }
    }
  }
}

持续集成环境变量

变量名 含义 参考值
COS_SECRET_ID 腾讯云访问密钥 ID stringLength36stringLength36string36
COS_SECRET_KEY 腾讯云访问密钥 KEY stringLength32stringLength323232
COS_BUCKET_NAME 腾讯云对象存储桶 devops-host-1257110097
COS_BUCKET_REGION 腾讯云对象存储区域 ap-nanjing

上一篇构建 Composer 类型制品
最近更新
感谢反馈有用
感谢反馈没用