AWS CodePipeline를 AWS CodeBuild와 함께 사용하여 코드 테스트 및 빌드 실행 - AWS CodeBuild

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

AWS CodePipeline를 AWS CodeBuild와 함께 사용하여 코드 테스트 및 빌드 실행

AWS CodePipeline를 사용하여 릴리스 프로세스를 자동화하면 AWS CodeBuild를 사용하여 코드를 테스트하고 빌드를 실행할 수 있습니다.

다음 표에는 태스크 및 태스크 수행에 사용할 수 있는 방법이 나와 있습니다. AWS SDK를 사용하여 이러한 태스크를 수행하는 내용은 본 주제에서 다루지 않습니다.

작업 사용 가능한 접근 방식 이 주제에 설명된 접근 방식
다음과 같이 빌드를 CodePipeline 자동화하는 지속적 전달 (CD) 파이프라인을 만드세요. CodeBuild
  • CodePipeline 콘솔

  • AWS CLI

  • AWS SDK

  • CodePipeline 콘솔 사용

  • AWS CLI 사용

  • 이 주제의 정보를 AWS SDK를 사용하도록 조정할 수 있습니다. 자세한 내용은 Amazon Web Services용 도구SDK 섹션에서 프로그래밍 언어에 대한 create-pipeline 작업 설명서를 참조하거나 AWS CodePipeline API 참조에서 CreatePipeline을 참조하세요.

테스트 및 빌드 CodeBuild 자동화를 기존 파이프라인에 추가 CodePipeline
  • CodePipeline 콘솔

  • AWS CLI

  • AWS SDK

필수 조건

  1. 빌드 계획 섹션의 질문에 답하십시오.

  2. AWS루트 계정이나 관리자 사용자 CodePipeline 대신 사용자를 사용하여 액세스하는 경우 사용자 (또는 사용자가 속한 IAM 그룹) AWSCodePipelineFullAccess 에게 이름이 지정된 관리형 정책을 연결하십시오. AWS 루트 계정을 사용하는 것은 권장되지 않습니다. 이 정책은 사용자에게 CodePipeline에서 파이프라인을 생성할 권한을 부여합니다. 자세한 내용은 사용 설명서관리형 정책 연결을 참조하세요.

    참고

    정책을 사용자(또는 사용자가 속한 IAM 그룹)에 연결하는 IAM 엔터티는 IAM에서 정책을 연결할 수 있는 권한이 있어야 합니다. 자세한 내용은 사용 설명서IAM 사용자, 그룹 및 보안 인증 관리 권한 위임을 참조하세요.

  3. AWS계정에 아직 CodePipeline 서비스 역할이 없는 경우 서비스 역할을 생성하세요. CodePipeline 이 서비스 역할을 사용하여 다른 AWS 서비스 (예: 사용자 대신) 와 상호 작용합니다. AWS CodeBuild 예를 들어 를 사용하여 CodePipeline 서비스 역할을 AWS CLI 생성하려면 IAM create-role 명령을 실행합니다.

    Linux, macOS, Unix의 경우:

    aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document '{"Version":"2012-10-17","Statement":{"Effect":"Allow","Principal":{"Service":"codepipeline.amazonaws.com"},"Action":"sts:AssumeRole"}}'

    Windows의 경우:

    aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document "{\"Version\":\"2012-10-17\",\"Statement\":{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"codepipeline.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}}"
    참고

    이 CodePipeline 서비스 역할을 생성하는 IAM 개체는 IAM에서 서비스 역할을 생성할 수 있는 권한을 가지고 있어야 합니다.

  4. 서비스 역할을 생성하거나 기존 CodePipeline 서비스 역할을 식별한 후에는 해당 역할 정책에 아직 포함되지 않은 경우 AWS CodePipeline사용 설명서의 기본 CodePipeline 서비스 역할 정책 검토에 설명된 대로 기본 서비스 역할 정책을 서비스 역할에 추가해야 합니다. CodePipeline

    참고

    이 CodePipeline 서비스 역할 정책을 추가하는 IAM 개체는 IAM에서 서비스 역할 정책을 서비스 역할에 추가할 수 있는 권한이 있어야 합니다.

  5. 소스 코드를 생성하여 CodeBuild 및 CodePipeline 에서 지원하는 리포지토리 유형 (예: Amazon S3 CodeCommit, Bitbucket 또는 GitHub) 에 업로드합니다. 소스 코드에 빌드 사양 파일을 포함해야 하지만, 이 주제의 후반부에서 빌드 프로젝트를 정의할 때 빌드 사양 파일을 선언할 수 있습니다. 자세한 내용은 buildspec 참조 섹션을 참조하십시오.

    중요

    파이프라인을 사용하여 빌드 소스 코드를 배포하려는 경우, 빌드 출력 아티팩트와 사용할 배포 시스템이 호환 가능해야 합니다.