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),查看容器对应的镜像名称,已经根据版本号,动态发生了变化。

相关推荐
摸鱼仙人~8 分钟前
RAG 系统中的 TOC Enhance:用“目录增强”提升检索与生成效果
linux·运维·服务器
华如锦12 分钟前
一.2部署——大模型服务快速部署vLLM GPU 安装教程 (Linux)
java·linux·运维·人工智能·后端·python·vllm
China_Yanhy15 分钟前
金融级企业出口网关架构设计与实施指南Enterprise Egress Gateway Architecture & Implementation Guide
运维·金融·架构
Jacob程序员15 分钟前
Linux scp命令:高效远程文件传输指南
linux·运维·服务器
cyzat32117 分钟前
n8n 2.0 深度解析:从开发工具到企业级自动化平台的华丽
运维·自动化·n8n·企业级平台
小二·20 分钟前
前端 DevOps 完全指南:从 Docker 容器化到 GitHub Actions 自动化部署(Vue 3 + Vite)
前端·docker·devops
Cx330❀20 分钟前
Linux进程前言:从冯诺依曼体系到操作系统的技术演进
linux·运维·服务器
oMcLin23 分钟前
如何在 Manjaro Linux 上实现高效的 Ceph 存储集群,提升大规模文件存储的冗余性与性能?
linux·运维·ceph
咕噜企业分发小米24 分钟前
云服务器如何支持直播间的实时互动?
运维·服务器·实时互动
艾莉丝努力练剑27 分钟前
【脉脉】AI创作者AMA知无不言:人机共生时代的创作觉醒
运维·服务器·人工智能·企业