建立通知規則 - AWS CodeBuild

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

建立通知規則

您可以使用通知規則,以在發生重要變更 (例如建置成功和失敗) 時通知使用者。通知規則會同時指定用於傳送通知的事件和 Amazon SNS 主題。如需詳細資訊,請參閱什麼是通知?

您可以使用主控台或 AWS CLI 為 AWS CodeBuild 建立通知規則。

建立通知規則 (主控台)

  1. 登入AWS Management Console,然後打開 CodeBuild 控制台,請在https://console.aws.amazon.com/codebuild/

  2. 選擇 Build (建置),選擇 Build projects (建置專案),然後選擇您要新增通知的建置專案。

  3. 在建置專案頁面上,選擇 Notify (通知),然後選擇 Create notification rule (建立通知規則)。您也可以前往建置專案的 Settings (設定) 頁面,然後選擇 Create notification rule (建立通知規則)

  4. Notification name (通知名稱) 中,輸入規則的名稱。

  5. 如果您只希望提供給 Amazon EventBridge 的資訊包含在通知中,請在 Detail type (詳細資訊類型) 中,選擇 Basic (基本)。選擇完整如果您希望包含提供給 Amazon EventBridge 的信息以及 CodeBuild 或通知管理器可能提供的信息。

    如需詳細資訊,請參閱了解通知內容與安全性

  6. Events that trigger notifications (觸發通知的事件) 中,選取您要傳送通知的事件。如需詳細資訊,請參閱組建專案上通知規則的事件

  7. Targets (目標) 中,執行下列其中一個動作:

    • 如果您已設定要與通知搭配使用的資源,請在 Choose target type (選擇目標類型) 中,選擇 AWS Chatbot (Slack)SNS topic (SNS 主題)。In選擇目標中,選擇用户端的名稱 (適用於AWS Chatbot) 或 Amazon SNS 主題的 Amazon Resource Name (ARN) (適用於已設定通知所需政策的 Amazon SNS 主題)。

    • 如果您尚未設定要與通知搭配使用的資源,請選擇 Create target (建立目標),然後選擇 SNS topic (SNS 主題)。在 codestar-notifications- 之後,提供主題名稱,然後選擇 Create (建立)

    注意
    • 如果您在建立通知規則的過程中建立 Amazon SNS 主題,將會為您套用允許通知功能將事件發佈至主題的政策。使用針對通知規則建立的主題,有助於確保您只訂閱需要接收此資源相關通知的使用者。

    • 您無法在建立通知規則時建立 AWS Chatbot 用戶端。如果您選擇 AWS Chatbot (Slack),您會看到一個按鈕,指示您在 AWS Chatbot 中設定用戶端。選擇該選項會開啟 AWS Chatbot 主控台。如需詳細資訊,請參閱設定通知和 AWS Chatbot 之間的整合

    • 如果您想要使用現有的 Amazon SNS 主題做為目標,除了該主題可能存在的任何其他政策以外,您必須為 AWS CodeStar Notifications 新增必要政策。如需詳細資訊,請參閱為通知設定 Amazon SNS 主題了解通知內容與安全性

  8. 若要完成建立規則,請選擇 Submit (提交)

  9. 您必須先在規則中讓使用者訂 Amazon SNS 主題,他們才能接收通知。如需詳細資訊,請參閱「」讓使用者訂做為目標的 Amazon SNS 主題。您也可以設定通知與AWS Chatbot向 Amazon Chime 聲聊天室發送通知。如需詳細資訊,請參閱設定通知和 AWS Chatbot 之間的整合

建立通知規則 (AWS CLI)

  1. 在終端機或命令提示字元中,執行 create-notification rule 命令以產生 JSON 架構:

    aws codestarnotifications create-notification-rule --generate-cli-skeleton > rule.json

    您可以將檔案命名為任何您想要的名稱。在此範例中,檔案命名為 rule.json

  2. 在純文字編輯器中開啟 JSON 檔案,並編輯成包含您想要用於規則的資源、事件類型和目標。以下範例顯示名為MyNotificationRule,以獲得名為MyBuildProject在AWS使用 ID 進行調查123456789012。通知會使用完整詳情類型傳送至 Amazon SNS 為代碼星-通知-我的通知主題當構建成功時:

    { "Name": "MyNotificationRule", "EventTypeIds": [ "codebuild-project-build-state-succeeded" ], "Resource": "arn:aws:codebuild:us-east-2:123456789012:MyBuildProject", "Targets": [ { "TargetType": "SNS", "TargetAddress": "arn:aws:sns:us-east-2:123456789012:codestar-notifications-MyNotificationTopic" } ], "Status": "ENABLED", "DetailType": "FULL" }

    儲存檔案。

  3. 在終端機或命令列中,再次執行 create-notification-rule 命令,使用您剛編輯的檔案建立通知規則:

    aws codestarnotifications create-notification-rule --cli-input-json file://rule.json
  4. 如果成功,此命令會傳回通知規則的 ARN,如下所示:

    { "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE" }