首页 > 解决方案 > 如何在 Jenkins 管道作业中使用环境变量?

问题描述

我在Jenkins users Google group中发布了这个,但我想我也会在这里发布。

我有一个 Jenkins 流水线作业,在其配置页面中,我使用“来自 SCM 的流水线脚本”作为我的流水线。这个块的参数之一当然是“要构建的分支”。如何为文本块使用环境变量?例如,我尝试了 $branchToBuild、${branchToBuild} 或 "${branchToBuild}",它只是将它们作为文字值而不插入字符串。我确实定义了该变量并将其用于其他工作。

有人建议使用 ${env.branchToBuild},所以我尝试了 env.branchToBuild、$env.branchToBuild、${env.branchToBuild} 和 "${env.branchToBuild}" 都无济于事,也就是说,它们也只是被视为文字字符串而不是插值。

Jenkins 流水线配置

是不是不可能做到这一点?

标签: jenkins-pipeline

解决方案


您必须取消选中 轻量级结帐 才能使用variable分支名称来构建。

这是一个已知的 Jenkins 错误,这里有更多信息:How to pass project parameter as branch name to build in Jenkins

显然,如果您使用轻量级结帐,则代码路径会非常不同,而且显然还没有解决。

另一个来源:https ://cleverbuilder.com/notes/jenkins-dynamic-git-branch/


推荐阅读