Jenkins基于tag的构建

文章目录

Jenkins参数化构建设置

选择参数化构建:

在gradle构建之前,增加执行shell的步骤:

把新增的shell框挪到gradle构建之前,

最后保存

设置gitlab tag

这样在每次改了代码提交后,可以在新的时间点上设置新的tag。

在工程中维护构建的版本

gitlab上打的标签,在jenkins中执行构建时,可以从环境参数获取git参数传过来的信息,也就是这里的tag参数:

build.gradle中获取环境参数:

groovy 复制代码
ext.PROJECT_VERSION = System.getenv('tag')

docker-compose.yml中获取环境参数:

yaml 复制代码
...
services:
  hello:
    image: hello:${tag}
    ...

按指定tag的版本启动服务

当gradle的docker插件按tag打出版本后,要在目标服务器上启动相应版本的应用,这里需要在docker-compose up时指定一个tag相关的环境变量,而在jenkins服务器发送命令时,可以这样传递环境变量:

对于同一个tag,如果要更新功能,可以先在gitlab上删除tag,提交代码后重新再打相同的tag,再jenkins构建该tag,此时docker image prune -f会清理废弃的image。

相关推荐
wuyikeer19 分钟前
Java进阶(ElasticSearch的安装与使用)
java·elasticsearch·jenkins
aiAIman28 分钟前
OpenClaw 2026.3.12+ 外网访问云服务器完全指南
运维·服务器·开源·aigc
桌面运维家2 小时前
Windows VHD虚拟磁盘技术详解与应用指南
linux·运维·服务器
GAOJ_K2 小时前
滚柱导轨安装后如精度偏差对机械设备有影响吗?
运维·人工智能·科技·自动化·制造
大黄说说3 小时前
Spring Boot 项目优雅上线:日志、监控、异常处理最佳实践
运维·jenkins
桌面运维家3 小时前
云桌面vDisk解决方案:Windows/Linux高效部署与优化
linux·运维·服务器
Adorable老犀牛3 小时前
给运维同行的一个小提议:一起做「不费力的周复盘」,让经验不白费
运维·周报·复盘·反人性·为自己
xlq223223 小时前
26(下).库的理解与加载
linux·运维·服务器
爱学习的小囧3 小时前
零门槛!VCF 自动化环境登录 vSphere Supervisor 全教程
运维·服务器·算法·自动化·vmware·虚拟化
wbs_scy4 小时前
Linux 动静态库完全指南:制作、使用、原理与实战
linux·运维·服务器