

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

# AWS CodePipeline 에서에 대한 스타터 파이프라인 생성 AWS SAM
<a name="serverless-generating-example-ci-cd-codepipeline"></a>

에 대한 스타터 파이프라인 구성을 생성하려면 다음 작업을 다음 순서로 AWS CodePipeline수행합니다.

1. 인프라 리소스

1. 파이프라인 구성 생성

1. 파이프라인 구성을 Git에 커밋

1. Git 리포지토리를 CI/CD 시스템에 연결

**참고**  
다음 절차에서는 두 개의 AWS SAMCLI 명령, `sam pipeline bootstrap` 및 `sam pipeline init`을 사용합니다. 두 가지 명령이 있는 이유는 관리자(즉, IAM 사용자 및 역할과 같은 인프라 AWS 리소스를 설정할 권한이 필요한 사용자)가 개발자(즉, 개별 파이프라인을 설정할 권한만 필요하지만 필요한 인프라 AWS 리소스는 필요하지 않은 사용자)에게 더 많은 권한을 부여하는 사용 사례를 처리하기 위한 것입니다.

## 1단계: 인프라 리소스 생성
<a name="generating-example-step-1"></a>

를 사용하는 파이프라인에는 필요한 권한이 있는 IAM 사용자 및 역할, Amazon S3 버킷, 선택적으로 Amazon ECR 리포지토리와 같은 특정 AWS 리소스가 AWS SAM 필요합니다. 파이프라인의 각 배포 단계를 위한 인프라 리소스 세트가 있어야 합니다.

다음 명령을 실행하여 이 설정을 편집하거나 추가할 수 있습니다.

```
sam pipeline bootstrap
```

**참고**  
파이프라인의 각 배포 단계에 대해 이전 명령어를 실행합니다.

## 2단계: 파이프라인 구성 생성
<a name="generating-example-step-2"></a>

파이프라인 구성을 생성하려면 다음 명령을 실행합니다.

```
sam pipeline init
```

## 3단계: 파이프라인 구성을 Git 리포지토리에 커밋
<a name="generating-example-step-3"></a>

이 단계는 CI/CD 시스템이 파이프라인 구성을 인식하도록 할 때 필요하며, 변경 사항이 커밋될 때 실행됩니다.

## 4단계: Git 리포지토리를 CI/CD 시스템에 연결
<a name="generating-example-step-4"></a>

이제 다음 명령을 실행하여 연결을 생성할 AWS CodePipeline 수 있습니다.

```
sam deploy -t codepipeline.yaml --stack-name <pipeline-stack-name> --capabilities=CAPABILITY_IAM --region <region-X>
```

GitHub 또는 Bitbucket을 사용하는 경우, 이전에 **sam deploy** 명령을 실행한 후 *개발자 도구 콘솔 사용 안내서*의 [보류 중인 연결 업데이트](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-update.html) 주제에 있는 **연결을 완료하려면** 섹션의 단계를 따라 연결을 완료합니다. 또한를 이외의 다른 브랜치와 AWS CodePipeline 함께 사용하려면 **sam deploy** 명령의 출력`CodeStarConnectionArn`에서의 사본을 저장해야 합니다`main`.

## 기타 브랜치 구성
<a name="configuring-other-branches"></a>

기본적으로는 `main`브랜치를와 함께 AWS CodePipeline 사용합니다 AWS SAM. `main` 이외의 브랜치를 사용하려면 **sam deploy** 명령을 다시 실행해야 합니다. 사용 중인 Git 리포지토리에 따라 `CodeStarConnectionArn`를 제공해야 합니다.

```
# For GitHub and Bitbucket
sam deploy -t codepipeline.yaml --stack-name <feature-pipeline-stack-name> --capabilities=CAPABILITY_IAM --parameter-overrides="FeatureGitBranch=<branch-name> CodeStarConnectionArn=<codestar-connection-arn>"

# For AWS CodeCommit
sam deploy -t codepipeline.yaml --stack-name <feature-pipeline-stack-name> --capabilities=CAPABILITY_IAM --parameter-overrides="FeatureGitBranch=<branch-name>"
```

## 자세히 알아보기
<a name="serverless-generating-cicd-learn"></a>

CI/CD 파이프라인을 설정하는 실습 예제는 *Complete AWS SAM Workshop*의 [ CI/CD with AWS CodePipeline](https://catalog.workshops.aws/complete-aws-sam/en-US/module-4-cicd) 섹션을 참조하세요.