AWS CodeBuild의 배치 빌드 - AWS CodeBuild

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

AWS CodeBuild의 배치 빌드

AWS CodeBuild를 사용하여 배치 빌드로 프로젝트의 동시 및 조정된 빌드를 실행할 수 있습니다.

보안 역할

배치 빌드는 배치 구성에 새로운 보안 역할을 도입합니다. 일괄 처리의 일부로 빌드를 실행하려면 사용자 대신 StartBuildStopBuild,, RetryBuild 작업을 호출할 수 CodeBuild 있어야 하므로 이 새 역할이 필요합니다. 고객은 다음과 같은 두 가지 이유로 빌드에 사용하는 것과 동일한 역할이 아닌 새 역할을 사용해야 합니다.

  • 빌드 역할 StartBuild, StopBuildRetryBuild 권한을 부여하면 단일 빌드에서 buildspec을 통해 더 많은 빌드를 시작할 수 있습니다.

  • CodeBuild 배치 빌드는 일괄 빌드에 사용할 수 있는 빌드 및 컴퓨팅 유형의 수를 제한하는 제한을 제공합니다. 빌드 역할에 이러한 권한이 있는 경우 빌드 자체가 이러한 제한을 우회할 수 있습니다.

배치 빌드 유형

CodeBuild 다음과 같은 배치 빌드 유형을 지원합니다.

빌드 그래프

빌드 그래프는 일괄 처리의 다른 태스크에 종속되는 일련의 태스크를 정의합니다.

다음 예제는 종속성 체인을 생성하는 빌드 그래프를 정의합니다.

batch: fast-fail: false build-graph: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 depend-on: - build1 - identifier: build3 env: variables: BUILD_ID: build3 depend-on: - build2

이 예제에서는 다음이 적용됩니다.

  • 종속성이 없으므로 build1이 먼저 실행됩니다.

  • build2build1에 종속되어 있으므로 build2build1 완료 후에 실행됩니다.

  • build3build2에 종속되어 있으므로 build3build2 완료 후에 실행됩니다.

빌드 그래프 buildspec 구문에 대한 자세한 내용은 batch/build-graph 섹션을 참조하세요.

빌드 목록

빌드 목록은 병렬로 실행되는 여러 태스크를 정의합니다.

다음 예제에서는 빌드 목록을 정의합니다. build1build2 빌드는 병렬로 실행됩니다.

batch: fast-fail: false build-list: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 ignore-failure: true

빌드 목록 buildspec 구문에 대한 자세한 내용은 batch/build-list 섹션을 참조하세요.

빌드 매트릭스

빌드 매트릭스는 병렬로 실행되는 다양한 구성의 태스크를 정의합니다. CodeBuild 가능한 각 구성 조합에 대해 별도의 빌드를 만듭니다.

다음 예제는 buildspec 파일 2개와 환경 변수 값 3개가 포함된 빌드 매트릭스를 보여 줍니다.

batch: build-matrix: static: ignore-failure: false dynamic: buildspec: - matrix1.yml - matrix2.yml env: variables: MY_VAR: - VALUE1 - VALUE2 - VALUE3

이 예제에서는 6개의 빌드를 CodeBuild 만듭니다.

  • $MY_VAR=VALUE1가 있는 matrix1.yml

  • $MY_VAR=VALUE2가 있는 matrix1.yml

  • $MY_VAR=VALUE3가 있는 matrix1.yml

  • $MY_VAR=VALUE1가 있는 matrix2.yml

  • $MY_VAR=VALUE2가 있는 matrix2.yml

  • $MY_VAR=VALUE3가 있는 matrix2.yml

각 빌드에는 다음과 같은 설정이 있습니다.

  • ignore-failurefalse로 설정됨

  • env/typeLINUX_CONTAINER로 설정됨

  • env/imageaws/codebuild/amazonlinux2-x86_64-standard:4.0로 설정됨

  • env/privileged-modetrue로 설정됨

이러한 빌드는 병렬로 실행됩니다.

매트릭스 buildspec 구문에 대한 자세한 내용은 batch/build-matrix 섹션을 참조하세요.

배치 보고서 모드

프로젝트의 소스 제공자가 Bitbucket 또는 GitHub Enterprise이고 프로젝트가 빌드 상태를 소스 제공자에게 보고하도록 구성된 경우 배치 빌드 상태를 소스 제공자에게 보내는 방법을 선택할 수 있습니다. GitHub 상태를 배치에 대한 단일 집계 상태 보고서로 전송하거나, 배치에 있는 각 빌드의 상태를 개별적으로 보고하도록 선택할 수 있습니다.

자세한 정보는 다음 주제를 참조하십시오.

추가 정보

자세한 정보는 다음 주제를 참조하십시오.