如何替换声明的Jenkinsfile管道变量的一部分来获取作业的名称?

时间:2017-05-18 15:31:02

标签: jenkins jenkins-pipeline

我想得到詹金斯工作的名字。该名称是一个名为JOB_NAME的Jenkins环境变量(看起来像project_name/branch)。 JOB_BASE_NAME删除project_name/,离开branch

我想获得project_name

我以为我可以这样做:

environment {
  NAME = "${env.JOB_NAME}.replaceAll(~/\/.*$/, '')
}

然后在管道中使用${NAME},但这似乎无法正常工作

1 个答案:

答案 0 :(得分:1)

如果你需要丢失最后的env.JOB_NAME - env.JOB_BASE_NAME,你也可以/然后删除一个字符。

一旦你在environment闭包中定义了某些东西,它就不能像NAME这样的普通变量访问,而是像预定义的env变量一样,例如env.NAME < / p>