在上一篇[Jenkins的使用教程]()中我介绍了如何创建一个项目
Jenkins在创建项目中提供了很多功能供我们选择,这里我将对配置项目做一个较完整的介绍


Jenkins配置项目

  • 0、所有功能选项
  • 1、General
  • 1) 一般的项目设置:
  • 2) 参数设置
  • - 1、单选参数 Active Choices Parameter
  • - 2、布尔值 Boolean Parameter
  • - 3、文件参数 File system objects list Parameter
  • - 4、Git参数 Git Parameter
  • - 5、节点参数 Node
  • - 6、分隔符参数 Parameter Separator
  • - 7、字符串参数 String Parameter
  • 2、Source Code Management
  • 1)、需要使用git
  • 2)、凭据 Credential使用的场景
  • (1)、管理Node
  • (2) 、项目中使用Git
  • 3、Build Triggers
  • 4、Build Environment
  • 5、Build
  • 举例1:Execute Shell
  • 举例2:Trigger/call builds on other projects
  • 6、Post-build Actions
  • 举例1:Editable Email Notification 编辑通知邮件
  • 举例2:Trigger parameterized build on other projects 触发执行其他项目
  • 7、构建 MultiJob Project
  • 举例、构建 MultiJob Project


0、所有功能选项

每个Jenkins的项目级都有以下6个选项,我们可以按需选择。

图1:项目中所有的option功能图

jenkins 新增用户 指定项目 jenkins添加项目_Jenkins

1、General

1) 一般的项目设置:

  1. Use custom workspace” :指定机器的工作根目录。如勾选并不填写Directory 则说明指定工作目录为创建该机器时设置的路径。也可手动填入新的目录。
  2. This project is parameterized”: 为该项目添加参数, 点击Add Parameter。【详细见图2.1】
  3. Restrict where this project can be run”:限制该项目可执行在哪个机器上,如输入机器名A。当然也可以不指定机器名,程序就会随机选一个当前在线且空闲的机器执行程序

图2:General图

jenkins 新增用户 指定项目 jenkins添加项目_java_02


在勾选This project is parameterized后点击Add Parameter,可以看到存在很多参数供我们选择,如下图。

2) 参数设置

图2.1:Paramter图

jenkins 新增用户 指定项目 jenkins添加项目_java_03

我将就以下几个常用的参数做个讲解:

- 1、单选参数 Active Choices Parameter

- 设置参数

jenkins 新增用户 指定项目 jenkins添加项目_运维_04

- 显示参数

jenkins 新增用户 指定项目 jenkins添加项目_java_05

- 2、布尔值 Boolean Parameter

- 设置参数

jenkins 新增用户 指定项目 jenkins添加项目_java_06

- 显示参数

jenkins 新增用户 指定项目 jenkins添加项目_运维_07

- 3、文件参数 File system objects list Parameter

- 设置参数

jenkins 新增用户 指定项目 jenkins添加项目_运维_08

Include Pattern 和 Exclude Pattern用来 过滤匹配我们需要的内容,

如 ^Auto-aaa-\d{12}.tgz 用来匹配 以 Auto-aaa-开头,且包含12个数字的tgz文件。

- 4、Git参数 Git Parameter

- 设置参数   【设置Git参数的前提是Source Code Management中选Git,以及正确的Repository URL 和 Credentials】
        在设置Git 参数时,需要选类型:
    	

	 选Tag      供应的参数值为Tag
	 选Branch   供应的参数值为Branch
	 选Revision 供应的参数值为Revision

jenkins 新增用户 指定项目 jenkins添加项目_jenkins 新增用户 指定项目_09


也可通过Parameter type下面的Default Value来设置默认值,

黄色字写的是“Default Value is required. Example origin/master”说明在我们的显示页面中显示的branch前面会有个origin(比如origin/master),如果在显示页面只想显示具体的branch值,而不要origin这个前缀字符,就在设置Git Parameter的右下角点击 Advanced, 在显示出来的页面中做如下操作:将原来默认的Branch Filter中的 .* 改为 origin/(.*),则在显示页面就不会出现origin的前缀了。

jenkins 新增用户 指定项目 jenkins添加项目_Jenkins_10

- 5、节点参数 Node

- 设置参数

jenkins 新增用户 指定项目 jenkins添加项目_jenkins 新增用户 指定项目_11

- 6、分隔符参数 Parameter Separator

- 设置参数
 Section Header 输入文字描述,其他两个框都是一些css,描述字体颜色等可以任意设置

jenkins 新增用户 指定项目 jenkins添加项目_jenkins 新增用户 指定项目_12

- 显示参数
 	按照上图的设置,显示如下图

jenkins 新增用户 指定项目 jenkins添加项目_java_13

- 7、字符串参数 String Parameter

- 设置参数

jenkins 新增用户 指定项目 jenkins添加项目_java_14

- 显示参数

jenkins 新增用户 指定项目 jenkins添加项目_java_15


执行项目前,修改该值,可将值传入项目中。

2、Source Code Management

1)、需要使用git

如果需要使用git,就点击Git,然后根据下图配置信息。

jenkins 新增用户 指定项目 jenkins添加项目_jenkins_16

2)、凭据 Credential使用的场景

(1)、管理Node

step1: 在 launch method :SSH
step2: HOST : IP地址
step3: Credentials: 登录该机器的用户名和密码

(2) 、项目中使用Git

step1: Repository URL : GIt仓库地址
step2: Credentials: 两种
第一种: Private Key     被Git管控的机器的私钥,内容为: ~/.ssh/id_rsa
第二种: 登录Git的用户名密码     直接可登Git的用户名密码, git config user.name

3、Build Triggers

可以设置项目定期执行, 语法和crontab 一样

jenkins 新增用户 指定项目 jenkins添加项目_运维_17

比如设置为 00 22 * * * ,那么在每天22点,该项目就会定期自动执行。

4、Build Environment

在构建环境中,包含以下内容,比如 在执行前删除工作空间内容, 如果项目动不了就中止, 添加时间戳在结果输入页面等等。

jenkins 新增用户 指定项目 jenkins添加项目_java_18

5、Build

Build部分内容就是添加执行脚本:

jenkins 新增用户 指定项目 jenkins添加项目_java_19

点击 Add build step,会发现有很多类型供我们选择,一般就是 Execute Shell, 如果选择的机器是Windows,那么就选择Execue Windows batch command.

jenkins 新增用户 指定项目 jenkins添加项目_Jenkins_20

举例1:Execute Shell

step1:选择Execute Shell,输入Shell脚本

jenkins 新增用户 指定项目 jenkins添加项目_jenkins 新增用户 指定项目_21

step2:按照上面shell构建完后的显示页面如下

jenkins 新增用户 指定项目 jenkins添加项目_运维_22

step3:点击step2中的 Build,运行结果如下

jenkins 新增用户 指定项目 jenkins添加项目_java_23

举例2:Trigger/call builds on other projects

就是说我们可以建立触发条件来执行某项目

step1:选择Trigger/call builds on other projects

jenkins 新增用户 指定项目 jenkins添加项目_java_24

step2:设置触发条件的项目  
可将触发项目移动至原来项目前面,则触发条件执行后,原项目才会执行。

jenkins 新增用户 指定项目 jenkins添加项目_Jenkins_25

step3:执行方法跟普通项目一样

6、Post-build Actions

Post-build Actions 就是项目执行后要做的操作

jenkins 新增用户 指定项目 jenkins添加项目_java_26

点击Add post-build actions,有很多选项供我们选择:

jenkins 新增用户 指定项目 jenkins添加项目_jenkins_27

举例1:Editable Email Notification 编辑通知邮件

step1:点击Editable Email Notification,根据需求做以下操作

jenkins 新增用户 指定项目 jenkins添加项目_运维_28

step2:完成上述编辑通知邮件后,如果执行,我们会发现设置的收件人并不会收到邮件,是因为我们没有`设置邮件发送的触发条件`,也就是第7小点,点击Advanced Settings...

jenkins 新增用户 指定项目 jenkins添加项目_Jenkins_29

step3: 选择要发送邮件的触发条件

jenkins 新增用户 指定项目 jenkins添加项目_运维_30

step4:为了方便观察结果,我们一般设置Always,邮件一般格式如下:

jenkins 新增用户 指定项目 jenkins添加项目_java_31

step5:设置邮件的内容,上述的邮件内容不直观,可以通过以下设置:
  • Jenkins为我们提供了一个template文件,它使用groovy+HTML语法编写 (需要网上下载到自己本地)
  • 需要把该文件指定的目录下,首先需要找配置该Jenkins的工作目录( Manage Jenkins下的Configure System )
  • 把该template放在 /Jenkins的工作目录/email-templates目录
  • 该模板文件一般叫 groovy-html.template,当然也可以自己改名
  • 使用Jenkins提供的模板来作为邮件的内容格式的设置

    step6:使用Jenkins提供的模板后,邮件的内容如下

举例2:Trigger parameterized build on other projects 触发执行其他项目

当本项目执行完后,需要一些处理后续操作的步骤,就可以建立该项目

jenkins 新增用户 指定项目 jenkins添加项目_jenkins 新增用户 指定项目_32

7、构建 MultiJob Project

前面介绍的项目是每次执行一个项目,假设我们每次都需要执行同样的三个项目,就可以构建一个多任务的项目来帮我们执行。

以下步骤:

step1: 创建MultiJob Project

jenkins 新增用户 指定项目 jenkins添加项目_运维_33

step2:在Build中选择 Add build step,点击MultiJob Phase

jenkins 新增用户 指定项目 jenkins添加项目_Jenkins_34

step3: 输入阶段描述名,项目名,条件

jenkins 新增用户 指定项目 jenkins添加项目_运维_35

举例、构建 MultiJob Project

step1:创建名为MultiJob_2023_0224的MultiJob项目,并添加如下MultiJob Phase

jenkins 新增用户 指定项目 jenkins添加项目_java_36

step2:执行页面

jenkins 新增用户 指定项目 jenkins添加项目_jenkins 新增用户 指定项目_37