Jenkins JobA将JobB作为子项目触发。
有什么办法可以强制JobB拥有与JobA相同的内部版本号?
我目前正在将一个环境变量传递给JobB,以便JobB在构建期间可以使用正确的数字。但让JobA和JobB有不同的构建号码仍然令人困惑。
我也在使用" Next Build Number Plugin"但JobA和JobB的构建号码随着JobA在调用JobB之前失败而不断分开,迫使我回来并手动解决它。
答案 0 :(得分:0)
您应该考虑 https://docs.wso2.com/display/ESB460/Send+Mediator ,因为它允许通过变量设置BUILD_NUMBER
。将其配置为使用$parentBuildNumber
现在,在JobB中配置文本/字符串参数parentBuildNumber
从JobA触发JobB时,您应该使用 Build Name Setter Plugin 。
将预定义参数设置为parentBuildNumber=$BUILD_NUMBER
答案 1 :(得分:-1)
在父作业中获取下一个内部版本号,如果需要减去1并将其传递给子作业:
cat $JENKINS_HOME/jobs/$JOB_NAME/nextBuildNumber
并将其输出到
$JENKINS_HOME/jobs/$CHILD_JOB_NAME/nextBuildNumber
您可能需要也可能不需要安装NextBuildNumber插件:
此外,还有一个CLI命令set-next-build-number。尝试执行jenkins CLI帮助。