我已經從gitlab設置了一個webhook來啓動一個基於標籤推送事件的jenkins作業。可能是合併或提交,但開發人員想使用標籤。沒有問題,它工作正常。這項工作獲得了標記提交的散列,並且我已經驗證了這一點。然後這份工作開始了另一項工作,該工作運行一本完美的劇本,並開始構建。試圖從jenkins傳遞一個變量到合理的劇本
所以我想通過git commit hash作爲ansible extra_var,並且我通過執行shell命令將散列寫入到構建步驟中的文件中。我正在使用後構建操作來觸發下游作業,並使用此屬性文件中的參數。
控制檯輸出驗證了這一點,我看到提交散列回顯出來。 屬性文件包含:
GIT_KEY=3432134325e4323423 (fake sample hash provided)
的問題是在下游的工作,當我嘗試通過GIT_KEY作爲一個額外的變種,因此ansible劇本將獲取正確的git的承諾。我收到以下錯誤:
/usr/bin/git checkout --force ${GIT_KEY}", "failed": true, "msg": "Failed to checkout ${GIT_KEY}"
我已經測試了這個靜態設置額外變量值,它的工作原理,所以我知道這本劇本的作品。它只是不插入我正確傳遞給它的這個變量,或者正如我所期望的那樣。
有誰知道如何將jenkins參數作爲extra_var傳遞給ansible?
我在第二份工作中驗證了,在劇本開始之前通過迴應變量,在詹金斯工作層面變量未定義。 – tman