gpt4 book ai didi

Jenkins 管道将所有参数传递给下游作业

转载 作者:行者123 更新时间:2023-12-03 16:00:43 25 4
gpt4 key购买 nike

我有一个名为 的管道作业buildall 看起来像这样:

pipeline {
stages {
stage("job1") {
build job: "job1"
}
}
}

buildall 作业有 25 个参数。我想通过所有 buildall 的参数下降到 工作1 .有没有一种简单的方法可以做到这一点,而不是手动指定每个参数?

在这个问题中: Pipeline pass parameters to downstream jobs
提出了一个子问题但从未回答: 或者更好的是,是否有一种不那么麻烦的方法可以将所有管道参数传递给下游作业。

这和我有同样的问题。

最佳答案

以下似乎有效(不过我还没有对其进行广泛测试):

pipeline {
agent any
parameters {
string(name: 'PARAM1', description: 'Param 1?')
string(name: 'PARAM2', description: 'Param 2?')
}
stages {
stage('Example') {
steps {
echo "${params}"
script {
def myparams = currentBuild.rawBuild.getAction(ParametersAction).getParameters()
build job: 'downstream-pipeline-with-params', parameters: myparams
}
}
}
}
}

缺点:要访问 rawBuild 和 getAction,您必须禁用 Groove 沙箱或在 Jenkins 中的 Manage Jenkins > In-process Script Approval 下批准这些签名。此对话框将显示您可能引入了安全漏洞。因此,您是否愿意承担此风险取决于您的环境。

关于Jenkins 管道将所有参数传递给下游作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44397910/

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