假设我有一个看起来像这样的Jenkins文件:
pipeline {
agent any
environment {
FOO = "bar"
}
stages {
stage('Build') {
steps {
main: {
build 'foo-job'
}
}
}
}
}
我如何在FOO
的shell脚本中使用foo-job
的值?我已尝试${FOO}
和$FOO
(空),以及${env.FOO}
(显然是错误替换)。
答案 0 :(得分:1)
作业foo-job
参数化了吗?您不能只是简单地将环境变量传递给下游作业,只需在管道中设置它即可。在您的情况下,您可以将作业foo-job
称为:
build(job: 'foo-job', parameters: [string(name: 'FOO', value: 'FOO')])
此处FOO
是作业foo-job
的字符串类型的输入参数。有关详细信息,请参阅https://jenkins.io/doc/pipeline/steps/pipeline-build-step/