

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 通知ルールの作成
<a name="notification-rule-create"></a>

デベロッパーツールコンソールまたは AWS CLI を使用して、通知ルールを作成できます。通知ルールの作成の一環として、通知ルールのターゲットとして使用する Amazon SNS トピックを作成できます。 AWS Chatbot クライアントをターゲットとして使用する場合は、ルールを作成する前にそのクライアントを作成する必要があります。詳細については、「[Slack チャネルの AWS Chatbot クライアントを設定する](notifications-chatbot.md#notifications-chatbot-configure-client)」を参照してください。<a name="notification-rule-create-console"></a>

# 通知ルールを作成するには (コンソール)
<a name="notification-rule-create-console"></a>

1. [https://console.aws.amazon.com/codesuite/settings/notifications](https://console.aws.amazon.com/codesuite/settings/notifications/) で AWS デベロッパーツールコンソールを開きます。

1. ナビゲーションバーを使用して、リソースに移動します。
   + CodeBuild では、[**Build**] (ビルド) 、[**Build projects**] (ビルドプロジェクト) の順に選択し、ビルドプロジェクトを選択します。
   + CodeCommit では、[**Source**] (ソース)、[**Repositories**] (リポジトリ) の順に選択し、リポジトリを選択します。
   + CodeDeploy では、[**アプリケーション**] を選択し、アプリケーションを選択します。
   + CodePipeline では、[**Pipeline**] (パイプライン) 、[**Pipelines**] (パイプライン) の順に選択し、パイプラインを選択します。

1. リソースページで、[**Notify (通知)**]、[**Create notification rule (通知ルールの作成)**] の順に選択します。リソースの [**設定**] ページの [**通知**] または [**通知ルール**] に移動し、[**通知ルールの作成**] を選択することもできます。

1. [**通知名**] に、ルールの名前を入力します。

1. Amazon EventBridge に提供された情報のみを通知に含める場合は、**[Detail type (詳細タイプ)]** で **[Basic (基本)]** を選択します。Amazon EventBridge に提供される情報に加えて、リソースサービスまたは通知マネージャから提供される場合がある情報も含める場合は、**[Full]** (完全) を選択します。

   詳細については、「[通知の内容とセキュリティについて](security.md#security-notifications)」を参照してください。

1.  [**Events that trigger notifications (通知をトリガーするイベント)**] で、通知を送信するイベントを選択します。リソースのイベントタイプについては、以下を参照してください。
   + CodeBuild: [ビルドプロジェクトでの通知ルールのイベント](concepts.md#events-ref-buildproject)
   + CodeCommit: [リポジトリでの通知ルールのイベント](concepts.md#events-ref-repositories)
   + CodeDeploy: [デプロイアプリケーションでの通知ルールのイベント](concepts.md#events-ref-deployapplication)
   + CodePipeline: [パイプラインでの通知ルールのイベント](concepts.md#events-ref-pipeline)

1. [**Targets (ターゲット)**] で、次のいずれかの操作を行います。
   + 通知で使用するリソースを設定済みである場合は、**[ターゲットタイプを選択]** で、**[AWS  Chatbot (Slack)]**、**[AWS Chatbot (Microsoft Teams)]**、または **[SNS トピック]** を選択します。**ターゲットの選択**で、クライアントの名前 ( AWS Chatbot で設定された Slack または Microsoft Teams クライアントの場合) または Amazon SNS トピックの Amazon リソースネーム (ARN) (通知に必要なポリシーで既に設定された Amazon SNS トピックの場合) を選択します。
   + 通知で使用するリソースを設定していない場合は、[**Create target**]、[**SNS topic**] の順に選択します。**codestar-notifications-** の後にトピックの名前を指定し、[**Create**] を選択します。
**注記**  
通知ルールの作成の一環として Amazon SNS トピックを作成すると、トピックへのイベント発行を通知機能に許可するポリシーが適用されます。通知ルール用に作成したトピックを使用すると、このリソースに関する通知を受信するユーザーのみをサブスクライブできます。
通知ルールの作成の一環として AWS Chatbot クライアントを作成することはできません。 AWS Chatbot (Slack) または AWS Chatbot (Microsoft Teams) を選択すると、 AWS Chatbot でクライアントを設定するように指示するボタンが表示されます。このオプションを選択すると、 AWS Chatbot コンソールが開きます。詳細については、「[Slack チャネルの AWS Chatbot クライアントを設定する](notifications-chatbot.md#notifications-chatbot-configure-client)」を参照してください。
既存の Amazon SNS トピックをターゲットとして使用する場合は、そのトピックに存在する可能性のある他のポリシーに加えて、 AWS CodeStar Notifications に必要なポリシーを追加する必要があります。詳細については、「[通知用に Amazon SNS トピックを設定する](set-up-sns.md)」および「[通知の内容とセキュリティについて](security.md#security-notifications)」を参照してください。


1. [**送信**] を選択し、通知ルールを確認します。
**注記**  
ユーザーは、通知を受け取る前に、ルールのターゲットとして指定した　Amazon SNS　トピックにサブスクライブしてサブスクライブを確認する必要があります。詳細については、「[通知に使用する Amazon SNS トピックにユーザーをサブスクライブするには](subscribe-users-sns.md#set-up-sns-subscribe)」を参照してください。<a name="notification-rule-create-cli"></a>

# 通知ルールを作成するには (AWS CLI)
<a name="notification-rule-create-cli"></a>

1. ターミナルまたはコマンドプロンプトで、**create-notification rule** コマンドを実行して JSON スケルトンを生成します。

   ```
   aws codestar-notifications create-notification-rule --generate-cli-skeleton > rule.json
   ```

   ファイルには任意の名前を付けることができます。この例では、ファイルの名前を *rule.json* とします。

1. プレーンテキストエディタで JSON ファイルを開き、これを編集してルールに必要なリソース、イベントタイプ、および Amazon SNS ターゲットを含めます。

   次の例は、ID *123456789012* の AWS アカウントの *MyDemoRepo* という名前のリポジトリ**MyNotificationRule**に対して という名前の通知ルールを示しています。ブランチとタグが作成されると、完全な詳細タイプの通知は、*MyNotificationTopic* という Amazon SNS トピックに送信されます。

   ```
   {
       "Name": "MyNotificationRule",
       "EventTypeIds": [
           "codecommit-repository-branches-and-tags-created"
       ],
       "Resource": "arn:aws:codecommit:us-east-1:123456789012:MyDemoRepo",
       "Targets": [
           {
               "TargetType": "SNS",
               "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MyNotificationTopic"
           }
       ],
       "Status": "ENABLED",
       "DetailType": "FULL"
   }
   ```

   ファイルを保存します。

1. 先ほど編集したファイルを使用して、ターミナルまたはコマンドラインで **create-notification-rule** コマンドを再度実行し、通知ルールを作成します。

   ```
   aws codestar-notifications create-notification-rule --cli-input-json  file://rule.json
   ```

1. 成功すると、次に示すような通知ルールの ARN がコマンドから返されます。

   ```
   {
       "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
   }
   ```<a name="notification-rule-list-event-types"></a>

# 通知ルールのイベントタイプを一覧表示するには (AWS CLI)
<a name="notification-rule-list-event-types"></a>

1. ターミナルまたはコマンドラインプロンプトで、**list-event-types** コマンドを実行します。`--filters` オプションを使用して、応答を特定のリソースタイプまたは他の属性に制限できます。例えば、次のコマンドは CodeDeploy アプリケーションのイベントタイプのリストを返します。

   ```
   aws codestar-notifications list-event-types --filters Name=SERVICE_NAME,Value=CodeDeploy
   ```

1. このコマンドでは、次のような出力が生成されます。

   ```
   {
       "EventTypes": [
           {
               "EventTypeId": "codedeploy-application-deployment-succeeded",
               "ServiceName": "CodeDeploy",
               "EventTypeName": "Deployment: Succeeded",
               "ResourceType": "Application"
           },
           {
               "EventTypeId": "codedeploy-application-deployment-failed",
               "ServiceName": "CodeDeploy",
               "EventTypeName": "Deployment: Failed",
               "ResourceType": "Application"
           },
           {
               "EventTypeId": "codedeploy-application-deployment-started",
               "ServiceName": "CodeDeploy",
               "EventTypeName": "Deployment: Started",
               "ResourceType": "Application"
           }
       ]
   }
   ```<a name="notification-rule-add-tag"></a>

# 通知ルールにタグを追加するには (AWS CLI)
<a name="notification-rule-add-tag"></a>

1. ターミナルまたはコマンドラインプロンプトで、**tag-resource** コマンドを実行します。例えば、次のコマンドを使用して、*Team* という名前と *Li\$1Juan* という値を持つタグキーと値のペアを追加します。

   ```
   aws codestar-notifications tag-resource --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE --tags Team=Li_Juan
   ```

1. このコマンドでは、次のような出力が生成されます。

   ```
   {
       "Tags": {
           "Team": "Li_Juan"
       }
   }
   ```