

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

# イベントを使用して CodePipeline の実行を開始する
<a name="configure-service-events-codepipeline"></a>

 この例では、Amazon EventBridge ルールを設定して、CodeArtifact リポジトリ内のパッケージバージョンが公開、変更、または削除されたときに AWS CodePipeline 実行を開始する方法を説明します。

**Topics**
+ [EventBridge アクセス許可の設定](#configure-service-events-codepipeline-permissions)
+ [EventBridge ルールを作成するには](#configure-service-events-codepipeline-create-rule)
+ [EventBridge ルールターゲットを作成するには](#configure-service-events-codepipeline-create-rule-target)

## EventBridge アクセス許可の設定
<a name="configure-service-events-codepipeline-permissions"></a>

 CodePipeline を使用して作成したルールを呼び出すには、EventBridge のアクセス許可を追加する必要があります。 AWS Command Line Interface (AWS CLI) を使用してこれらのアクセス許可を追加するには、「 *AWS CodePipeline ユーザーガイド*[」のCodeCommit ソース (CLI) の CloudWatch Events ルールを作成する](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipelines-trigger-source-repo-changes-cli.html)」のステップ 1 に従います。

## EventBridge ルールを作成するには
<a name="configure-service-events-codepipeline-create-rule"></a>

 ルールを作成するには、`put-rule` コマンドを`--name` および`--event-pattern` パラメータとともに使用します。イベントパターンは、各イベントの内容と一致する値を指定します。パターンがイベントと一致すると、ターゲットがトリガーされます。例えば、次のパターンは、`my_domain` ドメインの`myrepo` リポジトリの CodeArtifact イベントと一致します。

```
aws events put-rule --name {{MyCodeArtifactRepoRule}} --event-pattern \
    '{"source":["aws.codeartifact"],"detail-type":["CodeArtifact Package Version State Change"],
    "detail":{"domainName":["{{my_domain}}"],"domainOwner":["{{111122223333}}"],"repositoryName":["{{myrepo}}"]}}'
```

## EventBridge ルールターゲットを作成するには
<a name="configure-service-events-codepipeline-create-rule-target"></a>

 次のコマンドは、ルールにターゲットを追加して、イベントがルールに一致したときに CodePipeline の実行がトリガーされるようにするものです。`RoleArn` パラメータには、このトピックで先に作成したロールの Amazon リソースネーム (ARN) を指定します。

```
aws events put-targets --rule {{MyCodeArtifactRepoRule}} --targets \
  'Id=1,Arn=arn:aws:codepipeline:{{us-west-2}}:{{111122223333}}:{{pipeline-name}},
  RoleArn=arn:aws:iam::{{123456789012}}:role/{{MyRole}}'
```