管理中的核准動作 CodePipeline - AWS CodePipeline

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

管理中的核准動作 CodePipeline

在中 AWS CodePipeline,您可以將核准動作新增至管線中的階段,在您希望管線執行停止的時間點,以便具有所需 AWS Identity and Access Management 權限的人可以核准或拒絕該動作。

若動作獲得核准,管道執行將繼續。如果動作被拒絕 (或者在管線達到動作並停止後的七天內沒有人核准或拒絕動作),則結果與動作失敗相同,且管線執行不會繼續。

由於這些原因,您可以使用手動核准:

  • 您想要在允許修訂進入管道的下一階段前,有人執行程式碼審視或更改管理審視。

  • 您想要有人針對應用程式最新版本在發行前執行手動品質保證測試,或者確認建構成品的完整性。

  • 您想要有人在新文字或更新文字發佈到公司網站前進行審視。

中手動核准動作的組態選項 CodePipeline

CodePipeline 提供三個組態選項,可讓您用來告知核准人核准動作。

發佈核准通知您可以設定核准動作,以便在管道停止動作時將訊息發佈到 Amazon 簡單通知服務主題。Amazon SNS 會將訊息傳送到訂閱該主題的每個端點。您必須使用在同一 AWS 區域中建立的主題作為將包含核准動作的管道。當您建立主題時,我們建議您以能夠判別其目的之名稱命名,例如像是 MyFirstPipeline-us-east-2-approval 的格式。

當您將核准通知發佈到 Amazon SNS 主題時,您可以從電子郵件或簡訊收件者、SQS 佇列、HTTP/HTTPS 端點等格式中進行選擇,或是您使用 Amazon SNS 叫用的 AWS Lambda 函數。如需 Amazon SNS 主題通知的相關資訊,請參閱下列主題:

如需為核准動作通知產生的 JSON 資料結構,請參閱 手動核准通知的 JSON 資料格式 CodePipeline

指定用於審視的 URL 做為核准動作組態的一部分,您可以指定要審視的 URL。URL 可能是您想讓核准者測試的 web 應用程式連結,或是擁有關於核准請求之其他資訊的頁面。該 URL 包含在發佈至 Amazon SNS 主題的通知中。核准者可使用主控台或 CLI 來檢視。

輸入核准者的評論 當您建立核准動作時,也可新增對收到通知的人 (或在主控台或 CLI 回應中檢視動作的人) 顯示的評論。

沒有組態選項 您也可以不要設置這三種選項的任何一種。有些情況下,您可能不需要組態:例如,您可以直接通知某人動作已可供檢閱,或者您只想讓管道停止,直到您自行決定核准動作。

中核准作業的設定與工作流程概要 CodePipeline

下列為設定並使用手動核准的概觀。

  1. 您可以將核准或拒絕核准動作所需的 IAM 許可授與組織中的一或多個 IAM 角色。

  2. (選擇性) 如果您使用 Amazon SNS 通知,請確保您在 CodePipeline 操作中使用的服務角色具有存取 Amazon SNS 資源的權限。

  3. (選擇性) 如果您使用 Amazon SNS 通知,請建立 Amazon SNS 主題,並在其中新增一或多個訂閱者或端點。

  4. 當您使用 AWS CLI 建立管線時,或在使用 CLI 或主控台建立管線之後,您可以將核准動作新增至管線中的階段。

    如果您使用的是通知,請在動作的組態中包含 Amazon SNS 主題的 Amazon 資源名稱 (ARN)。(ARN 是 Amazon 資源的唯一標識符。 Amazon SNS 主題的 ARN 的結構類似於 arn: awn: SNS: 美國東部-2:80398 範例:. MyApprovalTopic 如需詳細資訊,請參閱中的 Amazon 資源名稱 (ARN) 和 AWS 服務 命名空間。) Amazon Web Services 一般參考

  5. 管道會在到達核准動作時停止。如果動作的組態中包含 Amazon SNS 主題 ARN,則會向 Amazon SNS 主題發佈通知,並將訊息傳送給主題或訂閱端點的任何訂閱者,並在主控台中檢閱核准動作的連結。

  6. 核准者會檢查目標 URL 並檢閱註解 (若有的話)。

  7. 使用主控台、CLI 或軟體開發套件,核准者可提供摘要註解並提交回應:

    • 核准:繼續執行管道。

    • 拒絕:階段狀態會變更為 "Failed" (失敗),並且不會繼續執行管道。

    若七天內沒有提交任何回應,則會將動作標記為 "Failed" (失敗)。