Jenkins 自定义全局变量如何设置使用

2023-03-06 1,992 0

自定义全局变量

定义全局环境变量可以跨pipeline使用。 进入Jenkins→Manage Jenkins→Confiure System找到Global properties→勾选”Environment variables”复选框,单击“Add”按钮,在输入框中输入变量名和变量值即可。

自定义全局环境变量会被加入env属性列表中,所以使用时可以直接用${env.g_name}引用。

常用变量定义

1.定义构建名和构建显示,在script包裹后直接覆盖即可

  1. currentBuild.displayName = "1.2.3-SNAPSHOT"
  2. currentBuild.description ="分支: " + "2020-09-18"

还可以插入html显示颜色或者链接

currentBuild.setDescription(<p><font color="blue">All cases Passed but maybe include retry cases</font></p>’)

2.设置job状态

jenkins job的状态,常用状态有几种:SUCCESS,UNSTABLE,FAILURE,ABORTED,可以在pipeline脚本中自主修改job的状态,但只能由好的状态变成坏的。例如发布成功是SUCCESS,可以修改为UNSTABLE。

  1. currentBuild.result = 'FAILURE'

常用环境变量

BUILD_NUMBER 构建号,累加的数字。在打包时,它可作为制品名称的一部分,比如server-${BUILD_NUMBER}.jar

BRANCH_NAME 多分支pipeline项目支持。当需要根据不同的分支做不同的事情时就会用到,比如通过代码将release分支发布到生产环境中、master分支发布到测试环境中。

BUILD_URL 当前构建的页面URL。如果构建失败,则需要将失败的构建链接放到邮件通知中,这个链接就可以是BUILD_URL

GIT_BRANCH 通过git拉取的源码构建的项目才会有此变量。在使用env变量时,需要注意不同类型的项目,env变量所包含的属性及其值是不一样的。比如普通pipeline任务中的GIT_BRANCH变量值为roigin/master,在多分支pipeline中GIT BRANCH变量的值为master

所以,在pipeline中根据分支进行不同行为的逻辑处理时,需要留意。

CHANGE_ID 对于与某种更改请求相对应的多分支项目,这将被设置为更改ID,例如拉取请求号。

CHANGE_URL 对于与某种更改请求相对应的多分支项目,这将被设置为更改URL。

CHANGE_TITLE 对于对应于某种变更请求的多分支项目,这将被设置为更改的标题。

CHANGE_AUTHOR 对于对应于某种变更请求的多分支项目,这将被设置为拟议更改的作者的用户名。

CHANGE_AUTHOR_DISPLAY_NAME 对于对应于某种变更请求的多分支项目,这将被设置为作者的人名。

CHANGE_AUTHOR_EMAIL 对于对应于某种变更请求的多分支项目,这将被设置为作者的电子邮件地址。

CHANGE_TARGET

对于对应于某种变更请求的多分支项目,这将被设置为可以合并更改的目标或基本分支。

BUILD_ID 当前版本ID,与BUILD_NUMBER相同,用于在1.597+中创​​建的构建,但较旧版本的YYYY-MM-DD_hh-mm-ss时间戳记

BUILD_DISPLAY_NAME 当前版本的显示名称,默认为“#153”。

JOB_NAME 此构建项目的名称,如“foo”或“foo / bar”。

JOB_BASE_NAME 此建立项目的名称将剥离文件夹路径,例如“bar / foo”的“foo”。

BUILD_TAG “jenkins- $ {JOB_NAME} - $ {BUILD_NUMBER} ”的字符串。JOB_NAME中的所有正斜杠(/)都会用破折号( - )替换。方便放入资源文件,jar文件等,以方便识别。

EXECUTOR_NUMBER 识别执行此构建的当前执行程序(在同一台计算机的执行程序中)的唯一编号。这是您在“构建执行者状态”中看到的数字,但数字从0开始,而不是1。

NODE_NAME 代理的名称,如果构建是代理,或者“主”,如果在主机上运行

NODE_LABELS 空格分隔的节点分配的标签列表。

WORKSPACE 分配给构建作为工作区的目录的绝对路径。

JENKINS_HOME Jenkins主节点上分配的目录绝对路径存储数据。

JENKINS_URL 完整的Jenkins网址,例如http://server:port/jenkins/ (注意:只有在系统配置中设置了Jenkins URL)

JOB_URL 此作业的完整URL,如http://server:port/jenkins/job/foo/ (必须设置Jenkins URL)

SVN_REVISION Subversion版本号,当前已被检出到工作区,如“12345”

SVN_URL 当前已经检出到工作空间的Subversion URL。

相关文章

Jenkins Pipeline中与JaCoCo,Nexus 和 SonarQube 进行持续集成
Redis 主从复制如何实现?
如何查看网络的性能指标?
ping的工作原理是什么?
CPU工作原理
java内存分配理解
Index