如何设计一个优秀的小程序开发平台?
839
2022-10-12
devops学习(六)Jenkins 持续部署-版本选择
在上一章我们将gitlab 上传的代码通过jenkins打成jar包后发送到目标主机进行构建镜像操作这里存在一个问题,我们每次构建的时候都是拿到最新的代码去构建的,那么包永远都是最新的latest,然而最新的包反而bug可能最多,为了版本发布的可靠性,我们会在测试中选定一个最稳定的版本去发布,所以当我们认为当前版本是可用的,我们就给他打一个标签tag
1、定义参数化构建
在参数化构建,让我们在构建的时候选择一个版本去进行部署,这里的tag标签来自于gitlab定义的
2、定义构建之前切换分支操作
这里操作的意思是,让我们在做maven编译之前先切换到指定版本的分支上
切换分支操作
git checkout $tag //这里的$tag 的值是取自我们上面获取到gitlab标签的值
3、在gitlab上添加版本标签
下图中我们在gitlab上打了一个标签v1.0.0版本,这个相当于是打了一个快照将当前代码从master分支上复刻了一份,起名叫做v1.0.0 然后jenkins自动识别到这个标签我们在根据这个标签手动选择我们要发布的版本是那个
标签名称 v1.0.0代码来自于 master分支
4、修改idea代码重新上传
上面我们设置了一个稳定版本v1.0.0 现在假设我们程序更新到v2.0.0版本为了区分不同的版本,我们先修改代码上传后,将新版本也打一套标签
mytest-dev.yaml
17 image: mytest:v2.0.0 //修改镜像版本为v2.0.0
handler.java
59 String data = "
5、修改项目构建后打镜像的操作
我们在发送到指定服务器上后有几步是用来构建镜像的,当时写死了这里改一下
cd /usr/local/test/docker mv ../target/*.jar ./ docker build -t ${JOB_NAME}:${tag} . kubectl apply -f mytest-dev.yaml
说明
${JOB_NAME} jenkins项目的名称 mytest${tag} 标签名称 取自gitlab的分支标签
如上,我们就可以在不同版本中随意滚动了( •̀ ω •́ )y
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~