Jenkins 流水线参数

Posted

技术标签:

【中文标题】Jenkins 流水线参数【英文标题】:Jenkins pipeline parameters 【发布时间】:2021-09-29 12:40:27 【问题描述】:

所以我定义了一个 Jenkins 管道,它仅在我将 git 标签作为字符串传递时才运行构建。有没有办法在下拉列表中列出来自特定分支的所有标签,以便选择我要构建的标签?

【问题讨论】:

【参考方案1】:

您可以使用两个不错的选项:

您可以使用Git Parameter Plugin,它与您的 SCM 步骤配置集成,并允许您公开与定义的存储库相关的参数 - 您可以根据以下内容轻松创建可用分支、标签、修订或拉取请求的选择列表您的需求。 如果您的工作中已经有 SCM 配置,则最好使用此插件,因为它会为该配置绘制存储库信息。

第二个选项是使用List Git Branches Parameter Plugin,这个插件还增加了创建参数的能力,允许从配置的git存储库中选择分支、标签或修订,但与Git参数插件不同,这个插件需要一个git存储库定义而不是从您的项目中读取 GIT SCM 配置。 此外,这个插件在构建时根本不会改变工作空间。

总结一下:当您的作业中已经有 SCM 配置时,Git 参数是完美的选择,但有时我们希望在执行开始之前指定一个 git 分支或标记作为参数,用于“管道脚本”作业(不是“来自 SCM 的管道脚本”)在脚本中使用 SCM,使用 Git 参数插件是不可能的。在这种特殊情况下,需要一个无需在作业中定义 SCM 即可列出远程 git 分支或标签的插件,List Git Branches Parameter Plugin 可以实现这一点。

【讨论】:

以上是关于Jenkins 流水线参数的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins教程——从安装到部署Docker服务声明式流水线HelloWorld

15-Jenkins-Pipeline-声明式流水线语法-agent

17-Jenkins-Pipeline-声明式流水线语法-environment/options/parameters指令

Jenkins的参数化构建

部署流水线搭建小记:DockerJenkinsJava和Couchbase

史上最全 Jenkins Pipeline流水线详解