

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 이벤트를 사용하여 CodePipeline 실행 시작
<a name="configure-service-events-codepipeline"></a>

 이 예제에서는 CodeArtifact 리포지토리의 패키지 버전이 게시, 수정 또는 삭제될 때 AWS CodePipeline 실행이 시작되도록 Amazon EventBridge 규칙을 구성하는 방법을 보여줍니다.

**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}}'
```