2012-07-24 60 views
0

我正在使用jenkins進行持續集成。 對於我的構建目的,我使用Ant任務觸發電子郵件。我無法找到通過ant發送電子郵件構建狀態(成功/失敗/穩定)的環境變量。 我想知道如何獲取構建狀態的環境變量?..如果不可用,構建狀態的替代選項是什麼?通過環境變量獲取構建狀態

由於提前

Varghese表示

回答

0

構建狀態未設置直到作業完成運行,所以沒有簡單的方法來推動構建狀態的過程中構建自身內觸發。您可以通過API獲取構建狀態,但由於上述限制,這必須是一個外部觸發的過程。任何你沒有使用內置電子郵件支持的理由,或者是一個優秀的電子郵件擴展插件,如this之一?

+0

我會告訴你我的方案。工作A和B在那裏。作業一個輪詢svn並將變更集複製到我的項目目錄(作業B)。在這裏,我使用升級的版本在成功完成作業B之後獲取電子郵件通知。在作業B中,另一個版本由定期計劃觸發。爲此,我已經把一個電子郵件分機放在了後建議的行動上。我擔心的是,如果通過提交構建,即從作業A到作業B,在完成作業B構建之後,它將在作業B的構建後作業中以推薦的電子郵件分機和電子郵件分機的形式進行。因此,我將獲得兩個通知..(促進我使用,因爲發送郵件提交者)。 – varghese 2012-07-25 05:59:49

1

爲什麼使用ANT從詹金斯發送電子郵件時,當你有兩個偉大的插件,只是這樣做?

默認的郵件通知是相當不錯的,如果你想有更多的控制
我建議使用Email-ext plugin這是非常全面的。

如果仍然希望使用ANT來發送郵件,通知包括狀態
你將不得不打破你的過程分爲兩個步驟,
其中第一部分運行構建,第二個運行Ant腳本報告狀態。

在這種情況下,你需要通過參數從第一個任務觸發第二個作業構建插件 -
在這裏看到我的回答:
trigger other configuration and send current build status with Jenkins

+0

我會告訴你我的情況。工作A和B在那裏。作業一個輪詢svn並將變更集複製到我的項目目錄(作業B)。在這裏,我使用升級的版本在成功完成作業B之後獲取電子郵件通知。在作業B中,另一個版本由定期計劃觸發。爲此,我已經把一個電子郵件分機放在了後建議的行動上。我擔心的是,如果通過提交構建,即從作業A到作業B,在完成作業B構建之後,它將在作業B的構建後作業中以推薦的電子郵件分機和電子郵件分機的形式進行。因此,我將獲得兩個通知..(促進我使用,因爲發送郵件提交者)。 – varghese 2012-07-25 05:52:29

+0

我認爲你可以使用一個單一的工作:作業A可以輪詢SVN,並且該作業的構建操作將複製文件,運行構建或其他任何操作。另一種選擇是使用'Parameterized Build'插件觸發作業B,而不是電子郵件,如上所述。 – Gonen 2012-07-26 10:03:12