回答
这可以通过许多方式完成。一种方法是将作业A配置为具有构建步骤,触发作业B,并在作业B完成后获取文档中的变量。然后作业A可以读取这些变量并在后面的步骤中使用它们。
虽然有几件事情需要考虑。首先,这要求作业B在作业A可以/应该继续之前完成,因此如果您想要并行作业执行,这并不理想。其次,在处理env变量时,您需要一个插件来使构建步骤之外的变量可用(导出不够),请查看EnvInject插件。第三,如果工作配置变得复杂,那么可能会有更好的方法。通过使用Jenkinsfile和以前的流水线插件,Job编排得到了很大改善,并且在这个新的闪亮的世界中传递参数并且更容易。话虽如此,以下是一些与你所问的内容相似的例子。
作业A
作为构建步骤,触发作业B,并且让作业A停止而作业B完成
作为下一个生成步骤,从另一个构建复制的伪影(Job B最新稳定版),使用Copy Artifact Plugin。
做一些事情的文件,例如只是打印它的内容,它现在在工作A.访问
作业B
导出变量并将其保存到文件
将写入的文件归档并使作业A可访问。
这并不美观,但它至少起作用。
P.s.我建议查看Jenkinsfile(https://jenkins.io/doc/book/pipeline/jenkinsfile/)选项,它在初始学习曲线之后简化了很多。
由于我无法将图片添加到我的文章中,因此这里是Github Gist,其中包含这些配置的内嵌图像。 https://gist.github.com/arnlaugsson/657387b6f206b2b65f2d0e2473c4e3d5 –
- 1. Jenkins将SVN_DIR变量传递给作业
- 2. Jenkins:将git commit hash传递给下游作业
- 3. Jenkins - 将更新后的修订版传递给下游作业
- 4. Jenkins - 如何将值从pom.xml传递给下游作业(免费样式)
- 5. 设置生成Jenkins中主作业的下游作业数量
- 6. 从下游作业获取变量
- 7. 如何将$ {CHANGES}传递给下游作业?
- 8. 在下游Jenkins作业中传递$ CHANGES,$ CONSOLE
- 9. Jenkins矩阵作业不触发多个下游作业
- 10. Jenkins下游作业触发Gerrit事件
- 11. 如何将上游作业构建参数传递给在多任务阶段中配置的下游作业?
- 12. 如何通过执行shell将参数传递给Jenkins作业
- 13. Powershell的:将参数传递给作业
- 14. 将结果传递给作业 - python rq
- 15. Jenkins/Hudson上游作业没有获得下游作业的状态“球”颜色
- 16. 启动作业scriptblock传递变量
- 17. PowerShell传递变量启动作业
- 18. 推广Jenkins时传递GIT_COMMIT作业
- 19. Jenkins在存在多个上游作业时从上游作业复制工件
- 20. 在运行构建流程插件的Jenkins作业中,将其BUILD_NUMBER作为参数传递给子作业
- 21. Jenkins选择参数传递给管道作业
- 22. 如果上游作业停止,如何杀死下游作业?
- 23. Jenkins - 在所有下游作业完成后触发作业,不仅是直接作业
- 24. Concourse:如何将作业的输出传递给另一个作业
- 25. 如何从流水线作业参数传递给行家作业詹金斯
- 26. 从作业传递参数到石英中的作业人员
- 27. 如何将价值从Dashing的.erb传递给作业(.rb)
- 28. 如何将实例变量传递到Quartz作业?
- 29. 将实例变量传递到延迟作业中
- 30. Jenkins中的作业
在作业B中的.properties中写入变量,然后读取作业A的属性文件 – Jignesh