10-DevOps-Jenkins参数化构建实现多版本发布

在之前的Jenkins配置中,固定写死了程序的版本号,实际情况是随着版本的不断迭代,版本号也是不断变化的,版本号由代码仓库(GitLab)设置。

当前Jenkins配置是固定写的1.0,本节我们要把它改成动态的,随着代码的版本自动更新。

Jenkins配置参数化构建过程

在构建的地方,新增sheel,然后按照下图的顺序,执行脚本。

获取到tag的版本号

git checkout $tag

将原来固定写死1.0的地方,都改成 $tag

配置GitLab

1.0.0版本的tag就创建好了。

修改代码,创建新tag

为了看到不同版本的区别,现在把代码改动一下,形成一个新的tag版本。

提交代码到GitLab仓库

新建tag1.0.1

此时GitLab的tag列表中会有两个版本的tag

Jenkins构建

回到Jenkins,选择使用参数构建,发现会多出选择tag版本的步骤。

选择1.0.1版本进行构建

等待构建完成

访问应用程序

http://192.168.1.11:81/

程序返回的就是最新1.0.1版本的内容,说明版本已经更新成功。

在目标服务器上(192.168.0.11),查看容器对应的镜像名称,已经根据版本号,动态发生了变化。

相关推荐
大树8810 分钟前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠13 分钟前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质37 分钟前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工2 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智2 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_2 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉3 小时前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
lunzi_08263 小时前
【开源治理】05-把流程翻译成门禁:开源治理嵌入 DevOps 流水线实战
供应链管理·devops·开源治理
AC赳赳老秦4 小时前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
java_cj4 小时前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes