2014-09-10 32 views

回答

1

最佳方法:使用knife命令上傳預定義或生成的數據包。

knife data bag from file BAG json_file_for_item

文件必須有一個定義的格式,擴展文檔HERE

有一個在文件系統層次文件格式的要求,在這裏複製文檔聽起來一個壞主意。

+0

謝謝。假設我已經有一個包含加載版本定義的數據包。在你的過程中,我將不得不改變數據包以反映我想要的正確版本的加載版本?我不想這樣做。我只想讓數據包反映我通過Jenkins傳遞的內容 – 2014-09-10 15:07:50

+0

Jenkins可能會爲您生成json數據包,我們只需使用簡單的字段替換即可,databag.json首先具有佔位符,例如%% VERSION %%將被替換爲構建任務,並更新數據庫上傳。你可以做一個刀數據包展示袋子ITEM -F JSON來獲得實際的數據袋和設置佔位符 – Tensibai 2014-09-10 15:14:40

+0

有道理!謝謝。 – 2014-09-10 21:08:29

1

除了knife,您還可以使用Chef REST API編寫自己的腳本。有Ruby(Chef-API),Python(PyChef),JavaScript(chef-js)等許多客戶端。