使用插件实现Jenkins参数化构建

时间:2023-03-09 02:18:16
使用插件实现Jenkins参数化构建

一、插件安装

1、打开插件管理,在此界面可以安装插件

使用插件实现Jenkins参数化构建

二、参数化

1、在“可选插件”中查找如下两个插件然后安装,安装后重启Jenkins

Build With Parameters 输入框式的参数

Persistent Parameter  下拉框式的参数

使用插件实现Jenkins参数化构建

2、git参数化

1、勾选“参数化构建过程”

2、名称处输入名称,例如“branch_name”,输入描述

使用插件实现Jenkins参数化构建

3、在源码管理git中将分支号改为参数“${branch_name}”

使用插件实现Jenkins参数化构建

4、点击“Build with Parameters”发布,如下图输入你要发布的分支号然后点击“开始构建”则用你输入的这个分支号构建项目。

使用插件实现Jenkins参数化构建

3、参数化发布(根据参数发布到不同服务器)

1、在可选插件中搜索 “Publish over SSH” ,并安装

使用插件实现Jenkins参数化构建

2、添加待发布服务器(之后会将应用发布到这些机器上)

  a)打开系统设置

使用插件实现Jenkins参数化构建

  b)移动到最下方,点击 ssh servers下的 “增加”

使用插件实现Jenkins参数化构建

  c)输入服务器信息后保存,注意输入密码是参照下图中的“高级”才能显示出来,点击test后如果显示成功即表示可以连通服务器。

使用插件实现Jenkins参数化构建

使用插件实现Jenkins参数化构建

3、添加参数,勾选“参数化构建过程”添加一个字符参数起个名字“server_env”这个名字用来接收你想发布的环境,这个名字需要跟后边对应上;

使用插件实现Jenkins参数化构建

4、在构建环境中添加label,这个label和上边server_env变量中数据的内容相匹配如果匹配成功则会发布到这个环境中否则不发布,label选择需要点击“高级”按钮才能显示出来;

使用插件实现Jenkins参数化构建

5、创建如下另外两台服务器;

使用插件实现Jenkins参数化构建

使用插件实现Jenkins参数化构建

6、点击“高级”设置Parameterized publishing 参数化发布

使用插件实现Jenkins参数化构建

7、设置参数化发布变量“server_env”这个变量就是步骤1中输入的名称;

使用插件实现Jenkins参数化构建

8、应用,点击“Build with Parameters”输入分支号输入要发布的服务器即可,如果想发布一台输入“prodA”如果一次想发布多台输入“prodA||prodB”依次类推;

使用插件实现Jenkins参数化构建

三、显示用户名

1、在插件处查找 “user build vars” 插件并安装

使用插件实现Jenkins参数化构建

可以使用如下用户变量:

Property Default
BUILD_USER Full name (first name + last name)
BUILD_USER_FIRST_NAME First name
BUILD_USER_LAST_NAME Last name
BUILD_USER_ID Jenkins user ID
BUILD_USER_EMAIL Email address

使用参考见:https://wiki.jenkins.io/display/JENKINS/Build+User+Vars+Plugin

2、在jenkins任务中使用构建变量:注意需要勾选 "Set jenkins user build variables."

使用插件实现Jenkins参数化构建

参考文档:

  https://www.cnblogs.com/honeybee/p/6525322.html

  https://www.cnblogs.com/honeybee/p/6525322.html

  https://baijiahao.baidu.com/s?id=1589219847663812987&wfr=spider&for=pc

  https://wenku.baidu.com/view/3971a14faeaad1f347933f41.html

  http://blog.sina.com.cn/s/blog_13cc013b50102wrjj.html

  http://www.tothenew.com/blog/jenkins-parameterized-publishing/

  https://blog.****.net/qq744746842/article/details/49668799