首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jenkins Delivery Pipeline插件和参数化构建

Jenkins Delivery Pipeline插件和参数化构建
EN

Stack Overflow用户
提问于 2015-05-07 22:38:22
回答 2查看 10.8K关注 0票数 13

我正在使用Jenkins Delivery Pipeline插件。我有一些手动触发的参数化构建。如果我从项目页面触发构建,构建会显示一个需要定义参数的屏幕(正如预期的那样)。但是,当我从Delivery Pipeline插件启动参数化构建时,它只是启动构建,而不提供屏幕。这是奇怪的行为,有没有可能让管道插件显示参数化的构建屏幕?

谢谢你的帮忙!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-15 22:39:08

我大体回答这个问题。

您需要使用Parameterized Trigger PluginBuild Pipeline Plugin。Jenkins团队仍在解决Delivery Pipeline插件的问题。有关此问题的最新信息,请访问https://issues.jenkins-ci.org/browse/JENKINS-25685查看此链接。您可以通过该链接了解问题何时得到解决。

如果Build Pipeline插件可以合并到您的用例中,则可以使用它。构建管道插件也有类似的问题,现在已经修复了。它在22天内得到了修复(https://issues.jenkins-ci.org/browse/JENKINS-25427https://github.com/jenkinsci/build-pipeline-plugin/pull/56)。您只希望Delivery Pipeline插件的相同问题很快得到解决。

你能给我提供Jenkins的版本,环境和插件版本吗?我可以根据你给出的答案更新我的答案。

票数 9
EN

Stack Overflow用户

发布于 2015-05-15 23:18:16

当您使用Delivery Pipeline插件,并且具有手动触发的参数化构建时,只要您将上游作业配置为将参数传递到下游作业,当在管道视图页面上单击"build trigger“按钮时,参数就会自动传递。

例如,假设你有一个这样的设置:

代码语言:javascript
复制
Compile_Project ---> Deploy_Project

假设您正在从Compile_ProjectDeploy_Project作业传递一个名为versionNumber的变量。让我们还假设您的配置管理使用Subversion,并且您的versionNumber看起来像1.0.${SVN_REVISION}${SVN_REVISION}是由Jenkins自动提供的,因此您的版本号将类似于1.0.1234,其中1234是Subversion提供的提交号。

在您的Delivery Pipeline视图上,假设它被配置为显示3个管道实例,并且在视图设置中启用了手动触发器。你的管道视图页面可能看起来像这样(耶,ASCII艺术!):

代码语言:javascript
复制
Compile_Project ---> Deploy_Project (>)

Compile_Project ---> Deploy_Project (>)

Compile_Project ---> Deploy_Project (>)

在本例中,我使用(>)来表示手动触发器按钮。底部的按钮将尝试部署version 1.0.1234,中间的按钮将尝试部署version 1.0.1235,顶部的按钮将尝试部署version 1.0.1236,假设您的项目已连续提交SVN。

为了将参数从Compile_Project传递到Deploy_Project作业,您需要执行以下操作。(注意:听起来您已经完成了这一部分,但我将其包括在内,以防您遗漏了一步,也是为了完整。)

Compile_Project作业的配置中,作为后期构建操作,选择“构建其他项目(手动步骤)”。在“下游项目名称”框中,输入Deploy_Project,然后从“添加参数”下拉列表中选择“预定义参数”。在出现的"Parameters“文本区域中,创建一个要传递的参数,我将其命名为VERSION_NUMBER。然后在文本区中输入的是VERSION_NUMBER=1.0.${SVN_REVISION}。这将使参数能够从Compile_Project传递到Deploy_Project。然而,您还没有完全完成。

Deploy_Project作业的配置中,您需要将其设置为接受传递到作业中的参数。为此,请配置Deploy_Project,并选中"This build is parameterized“复选框。然后从“添加参数”下拉列表中添加一个字符串参数。在"Name“字段中,输入VERSION_NUMBER。此时,您可以根据需要在Deploy_Project的配置中使用${VERSION_NUMBER},以便指定要部署的项目的正确版本号。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30104285

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档