管道作业中全局 属性 的使用
Usage of Global property in Pipeline job
我想使用我在 Jenkins 配置中创建的全局变量,如下所示:
我的问题是:如何在我的流水线(又称工作流)作业中使用它?我正在做类似的事情:
当我运行它时,它显示:
[Pipeline] node
Running on master in /opt/devops/jenkins_home/jobs/siman/jobs/java/jobs/demo-job/workspace
[Pipeline] {
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
groovy.lang.MissingPropertyException: No such property: PRODUCTION_MAILS for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:224)
相反,如果我创建一个 "Free Style Project",我可以按如下方式使用全局 属性 而不会出现问题:
当我运行它时,如果我按如下方式"echo"它会显示值:
我是这样实现的:
node('master') {
echo "${env.PRODUCTION_MAILS}"
}
或者您可以使用
echo "This is the value: " + PRODUCTION_MAILS
应该可以。
我想使用我在 Jenkins 配置中创建的全局变量,如下所示:
我的问题是:如何在我的流水线(又称工作流)作业中使用它?我正在做类似的事情:
当我运行它时,它显示:
[Pipeline] node
Running on master in /opt/devops/jenkins_home/jobs/siman/jobs/java/jobs/demo-job/workspace
[Pipeline] {
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
groovy.lang.MissingPropertyException: No such property: PRODUCTION_MAILS for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:224)
相反,如果我创建一个 "Free Style Project",我可以按如下方式使用全局 属性 而不会出现问题:
当我运行它时,如果我按如下方式"echo"它会显示值:
我是这样实现的:
node('master') {
echo "${env.PRODUCTION_MAILS}"
}
或者您可以使用
echo "This is the value: " + PRODUCTION_MAILS
应该可以。