2017-04-24 230 views
1

我目前正在编写一个Jenkins作业来连接到不同的sql服务器,以检查所有应用程序服务器是否已启动并正在运行。Jenkins - 构建步骤

我想达到的目标:

  1. 连接到QA的SQL Server,运行查询,以验证服务器的状态。
    解析Jenkins日志,如果有任何服务器关闭,请发送邮件至[email protected],并附带服务器名称和服务器标识。

  2. 连接到并行SQL Server,运行查询来验证服务器状态。
    解析Jenkins日志,如果有任何服务器发生故障,请发送邮件至[email protected],并附带服务器名称和服务器ID。

挑战我面临:

我已经使用2个生成步骤(Windows批处理命令),即一个用于平行,一个用于QA。但是,如果第一个失败,詹金斯不会执行第二个。

有人可以请建议如何实现?

+0

为什么不让他们2个单独的工作? –

+0

你好,不想为这个小任务创建多个作业,我们已经为不同的目的配置了多个作业。 – shiva

回答

0

传统的解决方案是写第二构建步骤作为后生成步骤,使用JENKINS Post build task

该职位生成步骤,即使第一次构建步骤失败会被处决。

但更现代的和合乎逻辑的解决方案是在他们自己的工作中使用JENKINS Multijob Plugin甚至Jenkins pipelines, as shown in "Jobs in parallel"执行它们。

+0

我如何实现邮件部分,即不同的构建步骤不同的邮件? 后期构建任务对所有构建步骤都是相同的。 – shiva

+0

@shiva这就是为什么我建议有两个单独的工作:每个人都可以有自己的关联邮件列表。由于您不需要单独的工作,请尝试查看http://stackoverflow.com/a/24083316/6309。 – VonC

+0

谢谢@Vonc。我决定在较低的环境中使用相同的邮件。 – shiva

相关问题