gpt4 book ai didi

jenkins - 如何在 Jenkins Pipeline 构建中的构建中保留环境?

转载 作者:行者123 更新时间:2023-12-02 13:12:24 25 4
gpt4 key购买 nike

我需要在其环境变量中保留一些构建信息,就像我之前在 POFP(普通旧自由式项目)中使用 EnvInject 操作所做的那样。目的是能够在其他作业中阅读它们。

我的印象是,在 Jenkins Pipeline 中,这是开箱即用的。

比如说,我有这个管道代码:

AAA = '123'
env.BBB = '123'
def CCC = '123'

node('local_devkit'){
DDD = '123'
env.EEE = '123'
}

我运行了这项工作并得到了一个版本。然后,我尝试从 Jenkins Groovy 控制台访问其环境:

b = Jenkins.instance.getItem('test').getBuildByNumber(1)
println b.environment
println b.envVars

我可以看到一些自动变量,例如 BUILD_NUMBER 或 JOB_URL。问题是我想从我的示例中访问在作业运行时创建的自定义变量:AAA、BBB 等。

即使添加新的ParametersAction 技巧也无济于事,因为在 Jenkins Pipeline 中对参数的访问方式不同。

pa = new ParametersAction([
new StringParameterValue("QWERTY", 'AAAA')
])
currentBuild.rawBuild.addAction(pa)

如何实现所需的行为?

最佳答案

您的变量正在被存储,尽管我认为不能通过您调用的API访问。通过构建 REST 导出,或者通过 Java 中的 EnvAction 导出,或者在调用 build 步骤的上游管道构建中作为 .buildVariables 导出。

关于jenkins - 如何在 Jenkins Pipeline 构建中的构建中保留环境?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35070628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com