[英]AWS Opsworks : How to deploy a particular git tag for an App?
AWS Opsworks允許您部署應用程序。 部署似乎總是部署主分支。
如何讓它部署git標簽?
謝謝
對此沒有優雅的解決方案。
很遺憾OpsWorks不允許您在部署時指定分支/標記。
編輯:經過一些OpsWorks / Chef / Ruby的挖掘,你實際上可以相對簡單地部署一個特定的標簽。 以下兩種方法中的任何一種仍然有效。
您可以通過以下方式之一部署git標記:
tags/1.2.3
,其中1.2.3
是您要部署的標記。 部署應用程序時包括以下自定義JSON
{"deploy": {"myapp": {"scm": {"revision": "tags/1.2.3"}}}}
其中myapp
是您應用的短名稱 , 1.2.3
是您要部署的標簽。 不要忘記每次都包含此自定義JSON,否則您的部署將默認為您的應用程序中的任何內容:分支/修訂版 。
對於構建/測試中的應用程序,您可以在應用程序設置中指定develop
作為分支/修訂版,而不必擔心每次都使用自定義JSON。 這將始終為您部署develop
負責人。
對於生產中的應用程序,您可以將master
作為分支/修訂版,然后在部署時指定自定義JSON。 這樣,如果您忘記包含自定義JSON,至少它將從master部署最新版本,其中大部分時間應與最新標記相同。
值得注意的是,如果您向圖層添加新實例(手動或根據圖層規則自動添加),默認行為是根據App:Branch / Revision中的設置部署應用程序的新版本。 ..實際上,根據您的具體要求,您需要注意這兩種方法。
你看看了嗎? 您可以根據分支機構http://docs.aws.amazon.com/opsworks/latest/userguide/gettingstarted-simple-app.html查看分支/修訂部分 ,了解如何部署。
我現在正在處理同樣的問題。 我們正在將測試/暫存環境轉移到OpsWorks中,以利用其基於時間的實例來節省成本。
我去的方法是一個小的命令行ruby腳本來輪詢AWS以顯示堆棧列表,然后我可以選擇圖層,應用程序和我要部署到的實例。 然后,該腳本要求部署repo的分支名稱,並通過AWS CLI將部署推送到OpsWorks進行處理。
這一切都通過AWS CLI完成。 我將看到如何在網上提供此信息並發布鏈接,如果與老板明確的話。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.