当前位置: 首页 > 面试题库 >

如何在詹金斯建立工作流水线?

段干宜
2023-03-14
问题内容

在我的项目中,我有3个Web应用程序,都依赖于一个all-commons项目。

在我的詹金斯的服务器,我建了4个作业,all-commons_RELEASEweb-A_RELEASEweb-B_RELEASEweb- C_RELEASE。这些工作的作用是构建工件,这些工件部署在我们的Nexus上。然后,有人在Nexus中检索这些工件,并将它们部署在我们的开发/认证服务器上。

我想要的是拥有一个(其他?)工作,该工作将按顺序启动所有这四个版本。这样,完成此作业后,所有的RELEASE作业都已执行。当然,如果一个构建失败,则该过程将停止。

我首先想到的是表明了web-A_RELEASE构建其他项目 的列表 生成后行动all- commons_RELEASE。然后,web-B_RELEASE取决于web-A_RELEASE,依此类推。

但是,我希望能够分别启动它们中的任何一个,如果我表示对项目有依赖性,那是不可能的。例如,如果我手动启动web-B_RELEASEweb- C_RELEASE则将在此之后构建,这不是我想要的…

您是否知道我如何实现这一目标,或者有一个插件可以帮助我做到这一点?

问候。

ps:Jenkins 1.430,并且所有RELEASE作业都是自由样式的项目(它们混合了Maven和bash命令)。


问题答案:

也许您可以使用参数化触发器插件?

使用插件,您可以将触发器设置为“管道”作业中的构建步骤。有一个复选框“阻止,直到触发的作业完成”,您需要激活它。您可以简单地配置要通过这种方式触发的三个作业,并且仅当您运行此新的管道作业时才会触发,因此在不触发任何操作的情况下运行其他作业就可以正常工作。

这应该正是您所需要的。



 类似资料:
  • 构建步骤“调用顶级 Maven 目标”将构建标记为失败。

  • 问题内容: 我正在使用ansible在centos7上部署jenkins CI服务器的项目,并且在使用ansible从xml模板创建jenkins作业时遇到了问题。 到目前为止,一切工作正常,但现在我希望能够创建作业,并使用ansible从xml文件为它们提供一些基本配置。我的解决方案是jenkins-cli的以下命令: 在centos7框中手动输入时,此方法非常有效,但是当我将其放入ansibl

  • 问题内容: 当我尝试在openshift jenkins上构建项目时出现以下异常 问题答案: 我们正在升级中,这可能是这里的原因。升级完成后,请重试。要获取最新状态,请点击此处: https //openshift.redhat.com/app/status

  • 问题内容: 我已经全局安装了gulp(npm install gulp -g)。但是我认为这是行不通的。当我在本地程序上进行gulp测试时,它工作正常。但是,当我在github(在Jenkins上)的同一个程序上进行gulp测试时,会出现以下错误。它不会识别gulp命令。有人能帮我吗?感谢詹金斯的错误: 但是在命令行中它运行良好。 问题答案: 为了知道您的gulp在哪里,您应该全局(对所有用户)将

  • 问题内容: 我想在不同的机器上使用相同的作业。但是我不想每次都更改作业的配置。我可以通过机器名称标签作为参数并在另一台机器上运行作业吗?(不同时)。 我想在将作业运行到我在配置中编写的脚本(批处理脚本)时传递参数。我们能做到吗? 我可以从工作中获得返回值并在下一个工作中使用它吗? 问题答案: 是的,您可以使用NodeLabel Parameter Plugin传递节点标签参数。 是的,您可以按照描

  • 问题内容: 我正在尝试找出一种具有一个参数列表的方法,并让詹金斯为列表中的每个项目创建作业或运行构建。 该参数是一个目录,因此我有一个目录列表,我希望它能够正常工作,因此对于每个目录,构建都需要执行几个步骤-因此,基本上每个目录都需要运行git pull,ant命令,ant命令,ant命令目录名称,发布测试结果,下一个版本。 我看过很多插件,但是直到完成所有操作后,我才能弄清楚如何使它进入列表中的