1 字符参数

参数配置

Jenkins参数化构建_安装包

构建

Jenkins参数化构建_安装包_02

Jenkins参数化构建_参数类型_03

2 文本参数

参数配置

Jenkins参数化构建_参数类型_04

构建

Jenkins参数化构建_参数类型_05

Jenkins参数化构建_参数配置_06

字符参数和文本参数是比较常用的,他们最大的区别是,文本参数可以换行写多行。

3 选项参数

参数配置

Jenkins参数化构建_安装包_07

构建

Jenkins参数化构建_安装包_08

Jenkins参数化构建_参数类型_09

4 布尔值参数

参数配置

Jenkins参数化构建_安装包_10

Jenkins参数化构建_安装包_11

Jenkins参数化构建_参数类型_12

取消勾选,输出false

Jenkins参数化构建_参数配置_13

Jenkins参数化构建_参数配置_14

5 密码参数

参数配置

Jenkins参数化构建_安装包_15

Jenkins参数化构建_参数类型_16

Jenkins参数化构建_参数配置_17

6 文件参数

6.1 文件路径只有文件名

参数配置

Jenkins参数化构建_安装包_18

Jenkins参数化构建_参数配置_19

Jenkins参数化构建_安装包_20

文件上传到当前job的${WORKSPACE}目录下,然后重命名为fileValue

文件上传时候的名称,保存在fileValue} 变量中

6.2 文件路径带目录

参数配置

Jenkins参数化构建_安装包_21

Jenkins参数化构建_参数配置_22

Jenkins参数化构建_参数配置_23

文件上传到当前job的${WORKSPACE}/tmp目录下,然后重命名为fileValue

${tmp/fileValue} 无法获取文件上传时候的名称

7 运行时参数

参数配置

Jenkins参数化构建_安装包_24

Jenkins参数化构建_参数配置_25

Jenkins参数化构建_安装包_26

8 凭据参数

安装了 Credentials插件才会有此参数

不直接公开凭据,而是公开凭据的ID

参数配置

Jenkins参数化构建_参数配置_27

Jenkins参数化构建_参数类型_28

Jenkins参数化构建_参数类型_29

Jenkins参数化构建_安装包_30

9 隐藏参数

需要安装Hidden Parameter插件

版本构建时隐藏起来的参数,感觉和文本参数、字符参数一样,只是构建时不会在页面显示key和value值,当然也就没法修改

参数配置

Jenkins参数化构建_参数类型_31

Jenkins参数化构建_安装包_32

Jenkins参数化构建_参数类型_33

安装报错处理

如果Jenkins不是较新版本,联网安装插件可能报错,因为联网安装默认拉取最新版本

Jenkins参数化构建_安装包_34

这个报错不是因为安装包找不到,是因为当前jenkins不支持这个最新的237版本

去https://plugins.jenkins.io/hidden-parameter/releases/获取旧版本安装包手动安装的

10 Git Parameter

需要安装Git Parameter插件

10.1 根据分支

根据git配置,自动识别当前项目所有分支

参数配置

Jenkins参数化构建_安装包_35

Jenkins参数化构建_参数配置_36

Jenkins参数化构建_参数配置_37

10.2 根据提交记录

如果改成修订,可以选取git提交记录

参数配置

Jenkins参数化构建_安装包_38

Jenkins参数化构建_安装包_39

11 Active Choices

需要安装Active Choices插件

安装插件后,有三种新的参数类型可用:

主动选择参数(Active Choices Parameter)

主动选择反应参数(Active Choices Reactive Parameter)

主动选择反应引用参数(Active Choices Reactive Reference Parameter)

11.1 主动选择参数

11.1.1 一级下拉参数

参数配置

Jenkins参数化构建_参数类型_40

一定要点击审批按钮

Jenkins参数化构建_参数类型_41

不点击审批按钮

Jenkins参数化构建_安装包_42

点击审批按钮

Jenkins参数化构建_参数配置_43

11.1.2 默认选择和禁用选择

Jenkins参数化构建_参数配置_44

11.1.3 选择类型

Choice Type’ 选项为选项值提供了四种不同的呈现选项:

  • 允许单个选择的列表框
  • 允许多个选择的列表框
  • 复选框列表(允许多个选择)
  • 单选按钮列表(允许单个选择)

Jenkins参数化构建_安装包_45

Jenkins参数化构建_参数类型_46

Jenkins参数化构建_参数配置_47

Jenkins参数化构建_参数类型_48

11.1.4 配置筛选

Jenkins参数化构建_安装包_49

Jenkins参数化构建_参数配置_50

Jenkins参数化构建_参数类型_51

11.2 主动选择反应参数

11.2.1 二级下拉菜单

参数配置

Jenkins参数化构建_参数类型_52

记得点击审核脚本

Jenkins参数化构建_参数类型_53

Jenkins参数化构建_参数类型_54

Jenkins参数化构建_参数配置_55

Jenkins参数化构建_参数类型_56

11.3 主动选择反应引用参数

仅做了解

参数配置

Jenkins参数化构建_参数配置_57

Jenkins参数化构建_参数配置_58

Jenkins参数化构建_安装包_59

Jenkins参数化构建_参数配置_60

Jenkins参数化构建_参数配置_61

Groovy Script脚本:
switch(WINE_MENU){
 case~/.*Champagne.*/:
    winerec='Champagne is perfect with anything salty'
    return "<b>${winerec}</b>"
 break
case ~/.*Sauvignon Blanc.*/:
    winerec='Sauvignon Blanc goes with tart dressings and sauces'
    return "<b>${winerec}</b>"
break
 case~/.*Grüner Veltliner.*/:
    winerec='Choose Grüner Veltliner when a dish has lots of fresh herbs'
    return "<b>${winerec}</b>"
 break
case~/.*Pinot Grigio.*/:
    winerec='Pinot Grigio pairs well with light fish dishes'
    return "<b>${winerec}</b>"
 break
case ~/.*Chardonnay.*/:
    winerec='Choose Chardonnay for fatty fish or fish in a rich sauce'
    return "<b>${winerec}</b>"
break
 case~/.*Off-Dry Riesling.*/:
    winerec='Off-Dry Riesling pairs with sweet & spicy dishes'
    return "<b>${winerec}</b>"
 break
 case~/.*Moscato dAsti.*/:
    winerec='Moscato dAsti loves fruit desserts'
    return "<b>${winerec}</b>"
 break
case ~/.*dry Rosé.*/:
    winerec='Pair a dry Rosé with rich, cheesy dishes'
    return "<b>${winerec}</b>"
break
 case~/.*Pinot Noir.*/:
    winerec='Pinot Noir is great for dishes with earthy flavors'
    return "<b>${winerec}</b>"
 break
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.

默认【Active Choices Reactive Reference Parameter 】的值,不传递到构建环境的,如果需要传递到构建环境,需要如下使用:

Jenkins参数化构建_安装包_62

11.4 安装报错处理

Jenkins参数化构建_安装包_63

当前jenkins-2.426版本根本安装不上这个插件

这个报错不是因为安装包找不到,是因为当前jenkins不支持这个最新的2.8.3版本

去https://plugins.jenkins.io/uno-choice/releases/获取旧版本安装包手动安装

使用jenkins页面点击升级到最新版本,结果启动不起来,jdk版本太低

当前jenkins升级到2.467,jdk使用的17

12 Extended Choice Parameter

需要安装Extended Choice Parameter插件

Jenkins参数化构建_参数类型_64

12.1 基本参数类型

参数配置

Jenkins参数化构建_参数配置_65

Jenkins参数化构建_参数配置_66

Jenkins参数化构建_参数配置_67

Jenkins参数化构建_参数类型_68

Jenkins参数化构建_参数类型_69

Jenkins参数化构建_参数配置_70

12.2 多级参数类型

多级单选(Multi-Level Single Select)

参数配置

Jenkins参数化构建_安装包_71

Jenkins参数化构建_参数类型_72

Jenkins参数化构建_参数配置_73

Jenkins参数化构建_安装包_74

Jenkins参数化构建_参数类型_75

多级多选(Multi-Level Multi Select)

参数配置

Jenkins参数化构建_参数配置_76

Jenkins参数化构建_参数配置_77

Jenkins参数化构建_安装包_78

Jenkins参数化构建_参数类型_79

Jenkins参数化构建_参数类型_80

输出的并不符合预期

12.3 Json参数类型

仅做了解