2017-04-24 227 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

相關問題