2017-10-13 116 views
0

我有一個存儲在AWS CodeCommit中的單個存儲庫,其中一個buildspec.yml位於AWS CodeBuild從源代碼構建的根目錄中。如何使用AWS CodeBuild構建開發/測試/產品

是否可以傳入/讀取源代碼(AWS Pipeline arn?)或類似的東西,以便我可以在AWS CodeBuild中確定是否執行Dev,Test或Prod構建?

如果沒有,是否有另一種方法可以在AWS CodePipeline中完成我缺少的任務?

回答

1

AWS CodeBuild支持備用構建規範文件。可以在此AWS博客中找到示例:https://aws.amazon.com/blogs/devops/create-multiple-builds-from-the-same-source-using-different-aws-codebuild-build-specification-files/

爲每個階段命名您的生成規範文件。例如,buildspec_dev.yml,buildspec_qa.yml等。將它們與一個單獨的CodeBuild項目相關聯。之後,您可以在CodePipeline中使用適當的CodeBuild項目。

你也可以模型這些是你的CodePipeline中的不同階段。例如,在構建操作中使用基於buildspec_dev.yml的項目,然後在測試操作中使用基於buildspec_qa.yml的項目。

+0

謝謝!我誤讀了AWS CodeBuild的配置頁面。這實際上是非常明顯的如何做到這一點...哈哈 – Milk

0

在CodeBuild中,您可以定義環境變量在構建過程中可以使用的內容。因此,您需要爲每個環境創建單獨的CodeBuild項目,並設置正確的環境變量。

如果您也使用CodePipeline,那麼我假設爲不同的環境創建了不同的分支。所以你可以在這些分支上定義一個提交鉤子,CodePipeline將調用正確的CodeBuild項目。

相關問題