[英]Is there a way in cloud foundry cf push command to have a manifest.yml with several "profiles"?
對於生產環境和非生產環境,我們有不同的設置(部署參數),包括內存、實例等。
我們正在使用 Jenkins 管道在 Pivotal Cloud Foundry 環境中部署我們的應用程序,最終使用“CF push”命令調用腳本。
我們正在檢查使用兩個不同的manifest.yml
文件(但不喜歡相同參數的重復性)。 我們還在檢查將--var-file
與兩個不同的 vars 文件一起使用。 我們擔心向后兼容性,以及添加如此多文件的努力(我們有很多 MS)。
我們想要一個manifest.yml
看起來像這樣:
applications:
- name: myAppName
services:
- discovery
- config-server
profile:
dev:
memory: 1024M
instances: 1
prod:
memory: 4096M
instances: 4
假設我們需要將參數profile=dev
傳遞給cf push
命令就可以了。
在DEV環境中,將部署1個1024M內存的實例; 而在 PROD 環境中,將部署 4 個具有 4096M 內存的實例。
我建議您重新考慮在清單中使用變量。 您可以使用--var-file
,但如果您想避免出現這些文件,您可以改為傳入多個--var=<name>=<val>
參數。
或者只有dev.yml
和prod.yml
文件,然后您可以cf push -f dev.yml
或cf push -f prod.yml
並在兩者之間進行選擇。 有一點重復,但文件很小,所以應該沒什么大不了的。
希望有幫助!
我不認為,嘗試使用 CF CLI 命令來實現一切是正確的方法
我將通過編寫一個 bash 腳本並以我想要的任何方式依次執行 cf-push 來實現這一目標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.