本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將 CodeBuild 建置動作新增至管道 (CodePipeline 主控台)
-
使用下列 AWS Management Console 方式登入 :
-
您的 AWS 根帳戶。此為不建議的選項。如需詳細資訊,請參閱 使用者指南 中的帳戶根使用者。
-
您 AWS 帳戶中的管理員使用者。如需詳細資訊,請參閱 使用者指南 中的建立您的第一個 AWS 帳戶 根使用者和群組。
-
您 AWS 帳戶中具有執行下列最低動作集之許可的使用者:
codepipeline:* iam:ListRoles iam:PassRole s3:CreateBucket s3:GetBucketPolicy s3:GetObject s3:ListAllMyBuckets s3:ListBucket s3:PutBucketPolicy codecommit:ListBranches codecommit:ListRepositories codedeploy:GetApplication codedeploy:GetDeploymentGroup codedeploy:ListApplications codedeploy:ListDeploymentGroups elasticbeanstalk:DescribeApplications elasticbeanstalk:DescribeEnvironments lambda:GetFunctionConfiguration lambda:ListFunctions opsworks:DescribeStacks opsworks:DescribeApps opsworks:DescribeLayers
-
-
在 https://console.aws.amazon.com/codesuite/Codepipeline/home
開啟 CodePipeline 主控台。 -
在 AWS 區域選取器中,選擇管道所在的 AWS 區域。這必須是 CodeBuild 支援 的區域。如需詳細資訊,請參閱CodeBuild中的 Amazon Web Services 一般參考。
-
在 Pipelines (管道) 頁面上,選擇管道名稱。
-
在管道詳細資訊頁面上,於 Source (來源) 動作中,選擇工具提示。記下輸出成品的值 (例如 MyApp)。
注意
此程序說明如何在 Source (來源) 和 Beta 階段間的組建階段內新增組建動作。若您希望將組建動作新增至其他地方,請選擇動作上的工具提示 (就在您要新增組建動作之位置前),然後記下 Output artifact (輸出成品) 的值。
-
選擇編輯。
-
在 Source (來源) 和 Beta 階段間,選擇 Add stage (新增階段)。
注意
此程序說明如何在 Source (來源) 和 Beta 階段之間將建置階段新增至您的管道。若要將組建動作新增至現有的階段,請選擇階段中的Edit stage (編輯階段) 圖示,然後跳到此程序的步驟 8。若要在別處新增組建階段,請在所需位置選擇 Add stage (新增階段)。
-
針對 Stage name (階段名稱),輸入組建階段的名稱 (例如,
Build
)。如果您選擇其他名稱,請在此程序中皆使用它。 -
在選取的階段內部,選擇 Add action (新增動作)。
注意
此程序說明您如何在組建階段內新增組建動作。若要在別處新增組建動作,請在所需位置選擇 Add action (新增動作)。您可能必須先選擇您欲新增組建動作之現有階段內的 Edit stage (編輯階段)。
-
在 Edit action (編輯動作) 中,針對 Action name (動作名稱),輸入動作的名稱 (例如
CodeBuild
)。如果您選擇其他名稱,請在此程序中皆使用它。 -
針對 Action provider (動作提供者),選擇 CodeBuild。
-
如果您已有要使用的建置專案,請在專案名稱 中選擇建置專案的名稱,然後跳至此程序的下一個步驟。
如果您需要建立新的 CodeBuild 建置專案,請遵循 中的指示建立組建專案 (主控台)並返回此程序。
如果您選擇現有的建置專案,則其必須已定義建置輸出成品設定 (即使 CodePipeline 覆寫它們)。如需詳細資訊,請參閱 建立組建專案 (主控台)或 中的偽影描述變更建置專案的設定 (主控台)。
重要
如果您為 CodeBuild 專案啟用 Webhook,且專案在 中用作建置步驟 CodePipeline,則為每個遞交建立兩個相同的建置。一個建置是透過 Webhook 觸發,一個透過 觸發 CodePipeline。因為帳單是以每次組建為基礎,因此您將必須同時為兩次組建支付費用。因此,如果您使用 CodePipeline,建議您在 中停用 Webhook CodeBuild。在 CodeBuild 主控台中,清除 Webhook 方塊。如需詳細資訊,請參閱 變更建置專案的設定 (主控台)
-
針對 Input artifacts (輸入成品),選擇您稍早在本程序中記下的輸出成品。
-
針對 Output artifacts (輸出成品),輸入輸出成品名稱 (例如,
MyAppBuild
)。 -
選擇新增動作。
-
選擇 Save (儲存),然後選擇 Save (儲存) 以儲存對管道的變更。
-
選擇 Release change (版本變更)。
-
在管道執行成功之後,您便會取得組建輸出成品。使用 CodePipeline 主控台中顯示的管道,在建置動作中選擇工具提示。記下輸出成品的值 (例如 MyAppBuild)。
注意
您也可以在 CodeBuild 主控台的建置詳細資訊頁面上選擇建置成品連結,以取得建置輸出成品。若要抵達此頁面,請參閱檢視建置的詳細資訊 (主控台),然後跳到此程序的步驟 31。
在 開啟 Amazon S3 主控台https://console.aws.amazon.com/s3/
。 -
在儲存貯體清單中,開啟管線使用的儲存貯體。儲存貯體名稱必須遵循以下格式:
codepipeline-
。您可以使用 AWS CLI 執行 CodePipeline get-pipeline 命令,以取得儲存貯體的名稱:region-ID
-random-number
aws codepipeline get-pipeline --name
my-pipeline-name
在輸出中,
pipeline
物件包含artifactStore
物件,其中包含帶有儲存貯體名稱的location
值。 -
開啟與您管道名稱相符的資料 (根據管道名稱的長度,資料夾的名稱可能會遭到截斷),然後開啟與您稍早在本程序中記下的 Output artifact (輸出成品) 值相符的資料夾。
-
解壓縮 檔案的內容。若該資料夾中有多個檔案,請解壓縮 Last Modified (最後修改) 時間戳記最新的檔案內容。(您可能需要為 檔案提供
.zip
副檔名,以便在系統ZIP公用程式中使用。) 組建輸出成品位於檔案的解壓縮內容中。 -
如果您指示 CodePipeline 部署建置輸出成品,請使用部署提供者的指示來取得部署目標上的建置輸出成品。