2017-02-02 75 views
0

我想建立一個詹金斯服務器,將運行我的傀儡代碼測試流浪漢。我發現的問題是,我們已經將服務器作爲虛擬機運行,無論是vmWare還是AWS和Vagrant都不能用作另一個虛擬化。與詹金斯和流浪者CI/CD

有沒有人有一個想法如何創建我的木偶代碼的測試平臺。我想測試他們自己的節點上的清單部署,如果我部署class web server或對其進行更改,我想檢查它是否影響/中斷其他類的部署。

的想法是遍歷所有的類/角色,看看部署逝去。我想讓它自動化並且獨立於我們的工程師。目前我們正在使用vagrant up進行手動測試,但是手動操作的角色太多。

任何想法如何解決這個問題?

+0

目前還不清楚您是僅僅需要目錄編譯測試還是全面的驗收測試。一旦你澄清,我可以給你一個答案。另外,這實際上只是CI。這裏沒有發生部署。 –

+0

我之後所做的是一個測試,即puppet在所有節點上運行(web,db,無論...)是否正在傳遞。對於流浪者來說這不是必須的,我只是因爲我們在當地使用它而已。 CI/CD更多的是從GIT獲取拉取請求,迭代節點並且如果沒有失敗標記可以合併。我們曾經有過編輯一個節點類的事情在其他節點上破壞某些東西的情況,因此對它們的「全部」(每個類中有1個)進行迭代。 – MMT

+0

所以我希望澄清這是否是目錄編譯測試(甚至可能是迴歸測試)或驗收測試。你能澄清一下嗎? –

回答

1

您可以使用DockerAWS provider爲流浪。

在AWS提供商的情況下,您需要設置RSync以使您的環境進入新啓動的實例。

如果你流浪的腳本是強大的,你可以使用相同的腳本爲您的CI服務器和工作站AWS /泊塢部署在本地部署。

有缺點做這些技術,在泊塢窗的情況下,你是僅限於詹金斯服務器正在運行相同的內核,在AWS的情況下,你將支付額外的費用。但是,對於AWS,您不需要爲Jenkins服務器分配儘可能多的資源,因此您甚至可以以這種方式節省資金,因爲只有在運行測試時您纔會使用額外的VM付款。只要確保完成後就會關閉它們。

1

你有什麼特別的理由想要使用流浪漢嗎?我不確定您是否設置了流浪者生產環境。

如果你不綁定到無業遊民,我會建議你考慮使用泊塢窗圖像準備一個輕量級的環境來運行你的設置和驗證英寸

在做你的測試,旋轉起來的容器從包含你的木偶分佈的圖像中運行你的設置/測試。如果您有特殊的內核要求,請使用單獨的jenkins從機/代理機器,而不是在jenkins主機上執行作業。

如果你不知道如何開始使用與碼頭工人詹金斯開始,看看到Jenkins Documentation的例子部分。所提供的示例顯示了聲明性流水線語法,這些語法還有點新。另請考慮摺疊切換腳本管道顯示groovy管道腳本的部分,更適合jenkins管道初學者。

這些應該是相當不錯的指針,開始在Docker中運行+測試您的puppet腳本。爲了構建和使用Docker鏡像,應該有足夠多的教程。

讓我知道這是朝着正確方向的提示,或者如果我mistinterpreted你的問題。