2016-09-20 89 views
0

我有一個要求Serverspec測試由Jenkins作業「Create_Stack」創建的Cloudformation棧。將參數化觸發步驟的數據饋送到執行shell步驟

第二個Jenkins作業將通過Parameterized Trigger調用現有的Create_Stack作業,然後在隨後的Execute Shell步驟中執行Serverspec測試套件。

但是,爲了做到這一點,Execute Shell步驟需要知道Cloudformation Stack Name。

目前,堆棧名稱作爲Create_Stack作業中的環境變量存在,它也存在於包含aws cloudformation create-stack命令的返回輸出的存檔工件文件中。

我曾考慮在$WORKSPACE/../../Create_Stack/workspace/my-stack-output.json的工件文件中查找堆棧名稱。這是不理想的,因爲它是尷尬的,並且如果有人在我的測試運行時立即再次運行這項工作,也容易受到競爭狀況的影響。

是否有一種乾淨的方法可以使堆棧名稱在隨後的Execute Shell構建步驟中可用?

+0

這不是一個真正的serverspec問題。 –

+0

謝謝,好,已更新。 –

+0

你有什麼版本的詹金斯?因爲如果您使用的是最新的Jenkins(2.x),那麼您可能會受此影響:https://wiki.jenkins-ci.org/display/SECURITY/Jenkins+Security+Advisory+2016-05-11 – Fadi

回答