Jenkins - 参数化构建

时间:2024-03-04 09:41:43

1 - 任务参数化配置

通过插件,Jenkins支持文本、变量、外部引入等多种方式的参数化配置。
通过可参数化的配置可以让不同的环境、不同的配置在一个Jenkins任务中实现。

参数化配置
Jenkins job页面---》General ---》“参数化构建过程” --》 “添加参数”
配置完成后,在Jenkins job页面会出现“Build with Parameters”链接。

2 - Jenkins自带参数

2.1 自带参数

Jenkins本身支持简单的参数化配置,例如:凭据参数、字符参数、密码参数、布尔值参数,选项参数等。

2.2 示例 - 选项参数


参数TIME作为环境变量,可以被引用。


项目的首页会出现“ Build with Parameters”功能链接,没有了“立即构建”功能。

运行“Build with Parameters”,会出现参数选择值界面,选择并执行就会得到对应的结果。

3 - Node参数

在有多个可用节点的环境中,可以分配任务到指定的节点上运行任务。

3.1 限制项目的运行节点

  • Job页面---》General ---》限制项目的运行节点 ---》标签表达式---》填写具体的节点名称
  • 也可以填写标签名(多个节点可以配置同一个标签,通过标签来分组),根据标签内节点负载情况来选择

3.2 Node and Label parameter插件

实现了节点和节点组的动态选择,也就是,每次构建时可以通过参数选择需要的节点或节点组。

Jenkins job页面---》General ---》“参数化构建过程” --》 “添加参数”---》Node

4 - Git参数

通过Git Parameter插件可以支持传入分支参数或标签。
注意:插件本身无法配置访问代码仓库的权限,需要通过源码管理中的Git配置来获取源码、分支等信息。

Jenkins job页面---》General ---》“参数化构建过程” --》 “添加参数”---》Git Parameter

5 - 动态选择参数

通过Active Choices插件可以实现更复杂的动态和交互式参数化需求。

  • 根据变脚本动态生成参数
  • 根据其他参数的值动态更新参数
  • 通过下拉框、复选框、单选按钮或HTML等展示参数

    Jenkins job页面---》General ---》“参数化构建过程” --》 “添加参数”

5.1 Active Choices Parameter

通过Groovy脚本来实现参数化选择

5.2 Active Choices Reactive Parameter

适合解决参数互相依赖的场景。

5.3 Active Choices Reactive Reference Parameter

实现界面上参数的动态描述。

6 - 设定执行条件

通过Conditional BuildStep插件可以全面地设置构建步骤的执行条件。

Jenkins job页面---》“构建” --》 “增加构建步骤”---》

6.1 Conditional step (single)

6.2 Conditional steps (multiple)

构建步骤可以选择多个。