如何根据用户输入调用jenkins作业

时间:2014-08-13 15:25:11

标签: jenkins jenkins-plugins

这里的问题是,一旦Jenkins管道中的第一个Job完成,我们需要询问用户的一些输入并根据用户输入决定下一个要触发的作业(Job2或Job3) 尝试构建流程和参数化触发器插件,但没有在这些下找到任何合适的选项。 任何其他插件或jenkins功能可以帮助实现上述场景吗?

2 个答案:

答案 0 :(得分:2)

我尝试过一些插件,用于在构建管道中手动触发的作业上收集用户输入:Active Choices Plug-in 1.2和Extensible Choice Parameter 1.3.2。

使用Active Choices,您可以定义选择列表和默认值。使用可扩展选择参数,您可以使用文本框和默认值。

这是他们在jenkins 1.628

上的Build Pipeline 1.4.8中为我工作的方式
  1. 如果直接在管道中运行手动步骤,则使用默认值,其他参数正确传播。
  2. 如果您打开该步骤,则可以选择使用参数构建,这将询问用户输入。这有效,但其他参数(如内部版本号)不会传播,因此管道已损坏,并且管道屏幕未显示状态。

答案 1 :(得分:1)

Jenkins永远不会停下来并要求用户输入。它是一个自动构建系统。它并不指望有人坐在控制台上观看进展。

您可以在手动触发作业时提供“输入”或参数,即管道中的第一个作业。您可以通过Parameterized Trigger插件或a file copied between jobs将这些参数传递给下游作业。

如果您需要在构建流程的中间做出人为决定,请考虑使用Promoted Builds插件。使用此插件,人类可以选择构建,然后决定执行哪个“促销”(可以根据需要分支您的工作流程)。如果需要,促销也可以根据标准而非人工输入进行自动化。