簡體   English   中英

查看 AWS 中的應用程序設置

[英]Review application setup in AWS

我正在使用 AWS 尋找正確方向的指針。 以前我使用過 Heroku,它允許用戶為您在 Github 中創建的每個拉取請求創建審查應用程序。 這是一個很棒的功能,因為它允許您創建單獨的環境(數據庫、計算實例/Lambda、URL)來預覽更改。 您可以要求用戶通過獨特的 URL 測試他們請求的功能,例如https://my-test-app-123.domain.com

我正在尋找使用 AWS 的類似解決方案。 我想知道是否已經有我不知道的這種服務。 我查看了 Elastic Beanstalk,但我不確定如何配置它以了解我在 Github 中提出的所有拉取請求。

理想的設置是:

三種環境:審查應用程序(基於分支)、QA(基於master分支)、生產(基於 QA 的手動提升)。
- 對於每個拉取請求,創建以下唯一實例:S3、DynamoDB、Lambda、API 網關(用於唯一 URL)。 針對這個 PR 環境運行測試。 除了指向新創建的支持服務(如 S3、DynamoDB)的環境變量外,應從 QA 復制審查應用程序的環境變量。
- 每當提交到master分支時,讓 QA 環境自行更新以匹配 master 分支中的任何內容。
- 有可能手動觸發從 QA 到生產的升級。

我應該查看哪些服務? CloudFormation 聽起來像是正確的選擇,但它非常復雜,我不知道從哪里開始。

我不會為您的所有要求提供答案,但如果您詢問開始,我認為以下內容可能值得考慮。

  1. 源操作設置為 GitHub 的 CodePipeline。

  2. CodePipeline 可以通過 CloudFormation 部署資源 這將產生您需要的一組獨特的資源。 它們的數量有限制,因此不能為每次提交創建數百個。

  3. CodePipeline 還支持 Lambda 調用操作和手動批准,例如部署到生產。 對於大多數復雜的情況,您可以使用為 CodePipeline 量身定制的工作人員來設計自己的自定義操作。

CloudFormation 並不完美,值得花時間學習它。

希望這可以幫助您入門。 如果您想為每個 PR/提交創建不同的資源集,那么我建議從編寫 CloudFormation 模板開始部署您需要的單個資源集。 然后對其進行參數化,以便您可以從同一模板制作多組資源。 參數化后,可以考慮如何將其插入 CodePipeline 以根據您的 GitHub 更改創建資源。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM