种子作业环境变量$ {WORKSPACE}已分配给子作业

时间:2017-06-30 13:06:32

标签: jenkins jenkins-job-dsl jenkins-groovy

使用可创建5个子作业的DSL创建种子作业。作为构建步骤的一部分,我要使用$ {WORKSPACE}环境变量,该变量应该从运行子Job的从机读取值。但是,当创建子作业时,工作空间值将替换为主服务器中的SeedJobs工作空间位置。

如何限制种子作业不要注入$ {WORKSPACE}值。

有人可以帮我解决这个问题。

由于 真

1 个答案:

答案 0 :(得分:1)

要在job-dsl代码中引用生成的作业的BUILD_NUMBER,您应该按如下方式编写代码:

"\${BUILD_NUMBER}"

重要的部分是 $ 符号之前的\,它阻止了对BUILD_NUMBER变量的评估,因为它与(可能)你的Jenkins job-dsl种子作业的Goovy运行时有关。 p>

生成的作业的config.xml将包含 $ {BUILD_NUMBER} ,而不是代表您的种子作业的内部版本号的数字。然后,生成的作业将在运行时对其进行评估。