1、简单介绍
反正你知道他有这些功能就行了,腾讯的东西是出了名的|文档不知所云|使用莫名其妙|
这篇文章带你解决腾讯云持续部署的问题。
2、持续部署、持续集成搭建
a、这里使用腾讯云原生构建
b、首先我们需要在代码仓库创建一个.coding-ci.yml文件
前面有个. 完整文件名为“.coding-ci.yml”
前面有个. 完整文件名为“.coding-ci.yml”
前面有个. 完整文件名为“.coding-ci.yml”
c、.coding-ci.yml代码说明
# 声明了在 master 分支在收到 push 事件时(即有新的 Commit 推送到 master 分支)的时候
master:
# push 事件时
push:
# runner
- runner:
# runner配置 内存为cpus*2
cpus: 2
- name: 构建
docker:
# 指定环境镜像
image: maven:3.8.6-openjdk-8
volumes:
- /root/.m2:copy-on-write
# 部署步骤
stages:
- name: 安装环境
script:
- java -version
- name: 编译
script:
- mvn -B clean package -Dmaven.test.skip=true -Dautoconfig.skip -P prod
- ls
- name: 打包产物
script:
- cd ******-system/******-system-server/target
- tar -cvf ******-server.tar.gz ******-system-server-3.6.0.jar
- name: 推送
script: curl -T ******-system/******-system-server/target/******-server.tar.gz -u ******-generic-******02fa3 "https://******-generic.pkg.coding.net/******/******-generic/******-server.tar.gz?version=latest"
- name: 完成
script: echo 发布完成
上面的推送语句参考下面的步骤然后进行修改
d、构建推送语句
选择制品仓库
创建仓库
选择generic
进入创建的仓库选择操作指引
输入对应的内容再复制
例如我们的推送地址如下
curl -T <LOCAL_FILE_NAME> -u zingyang@icloud.com "https://123456-generic.pkg.coding.net/12345/12345-generic/<PACKAGE>?version=<VERSION>"
则对应的.coding-ci.yml的推送如下
# 声明了在 master 分支在收到 push 事件时(即有新的 Commit 推送到 master 分支)的时候
master:
# push 事件时
push:
# runner
- runner:
# runner配置 内存为cpus*2
cpus: 2
- name: 构建
docker:
# 指定环境镜像
image: maven:3.8.6-openjdk-8
volumes:
- /root/.m2:copy-on-write
# 部署步骤
stages:
- name: 安装环境
script:
- java -version
- name: 编译
script:
- mvn -B clean package -Dmaven.test.skip=true -Dautoconfig.skip -P prod
- ls
- name: 打包产物
script:
- cd ******-system/******-system-server/target
- tar -cvf ******-server.tar.gz ******-system-server-3.6.0.jar
- name: 推送
script: curl -T <LOCAL_FILE_NAME> -u zingyang@icloud.com "https://123456-generic.pkg.coding.net/12345/12345-generic/<PACKAGE>?version=<VERSION>"
- name: 完成
script: echo 发布完成
其中<PACKAGE>为你的打包文件名
这里用命令打包的文件为******-server.tar.gz
tar -cvf ******-server.tar.gz ******-system-server-3.6.0.jar
所以<PACKAGE>写******-server.tar.gz,得出.coding-ci.yml如下
# 声明了在 master 分支在收到 push 事件时(即有新的 Commit 推送到 master 分支)的时候
master:
# push 事件时
push:
# runner
- runner:
# runner配置 内存为cpus*2
cpus: 2
- name: 构建
docker:
# 指定环境镜像
image: maven:3.8.6-openjdk-8
volumes:
- /root/.m2:copy-on-write
# 部署步骤
stages:
- name: 安装环境
script:
- java -version
- name: 编译
script:
- mvn -B clean package -Dmaven.test.skip=true -Dautoconfig.skip -P prod
- ls
- name: 打包产物
script:
- cd ******-system/******-system-server/target
- tar -cvf ******-server.tar.gz ******-system-server-3.6.0.jar
- name: 推送
script: curl -T <LOCAL_FILE_NAME> -u zingyang@icloud.com "https://123456-generic.pkg.coding.net/12345/12345-generic/******-server.tar.gz?version=<VERSION>"
- name: 完成
script: echo 发布完成