빌드 프로젝트 만들기(콘솔) - AWS CodeBuild

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

빌드 프로젝트 만들기(콘솔)

을 엽니다AWS CodeBuild콘솔https://console.aws.amazon.com/codesuite/codebuild/home.

만약 CodeBuild 정보 페이지가 표시되며 선택빌드 프로젝트 생성. 그렇지 않을 경우, 탐색 창에서 빌드를 확장한 후 빌드 프로젝트를 선택하고 빌드 프로젝트 생성을 선택합니다.

빌드 프로젝트 생성을 선택합니다.

다음 단원을 입력합니다. 완료 후 선택빌드 프로젝트 생성페이지의 아래쪽에 있습니다.

프로젝트 구성

프로젝트 이름

이 빌드 프로젝트의 이름을 입력합니다. 각 AWS 계정에서 빌드 프로젝트 이름은 고유해야 합니다.

설명

빌드 프로젝트에 대한 설명 (선택 사항) 을 입력하면 다른 사용자가 이 프로젝트의 용도를 이해하는 데 도움이 됩니다.

빌드 배지

(선택 사항) 선택빌드 배지 활성화프로젝트의 빌드 상태를 표시하고 임베드할 수 있게 만들 수 있습니다. 자세한 정보는 빌드 배지 샘플을 참조하세요.

참고

소스 공급자가 Amazon S3 S3인 경우에는 빌드 배지가 적용되지 않습니다.

동시 빌드 제한 활성화

(선택 사항) 이 프로젝트의 동시 실행 빌드 수를 제한하려는 경우 다음 단계를 수행하십시오.

  1. Select이 프로젝트에서 시작할 수 있는 동시 빌드 수 제한.

  2. In동시 빌드 제한, 이 프로젝트에 허용된 최대 동시 실행 가능 빌드 수를 입력합니다. 이 한도는 계정에 설정된 동시 빌드 한도보다 클 수 없습니다. 계정 한도보다 큰 숫자를 입력하려고 하면 오류 메시지가 표시됩니다.

현재 빌드 수가 이 한도 이하인 경우에만 새 빌드가 시작됩니다. 현재 빌드 수가 이 한도에 도달하면 새 빌드가 제한되고 실행되지 않습니다.

추가 정보

(선택 사항 사항)태그, 지원하려는 태그의 이름과 값을 입력합니다.AWS사용할 서비스. [Add row]를 사용하여 태그를 추가합니다. 최대 50개의 태그를 추가할 수 있습니다.

소스

소스 제공자

소스 코드 공급자 유형을 선택합니다. 다음 목록을 사용하여 소스 제공자에 적합한 항목을 선택하십시오.

참고

CodeBuild 는 Bit버킷 서버를 지원하지 않습니다.

Amazon S3
버킷

소스 코드가 포함된 입력 버킷의 이름을 선택합니다.

S3 객체 키 또는 S3 폴더

ZIP 파일의 이름이나 소스 코드가 들어 있는 폴더의 경로를 입력합니다. S3 버킷의 모든 항목을 다운로드하려면 슬래시(/)를 입력합니다.

소스 버전

입력 파일의 빌드를 나타내는 객체의 버전 ID를 입력합니다. 자세한 정보는 AWS CodeBuild를 사용한 소스 버전 샘플을 참조하세요.

CodeCommit
Repository

사용할 리포지토리 선택.

참조 유형

선택해분기,Git 태그, 또는커밋 ID소스 코드의 버전을 지정합니다. 자세한 정보는 AWS CodeBuild를 사용한 소스 버전 샘플을 참조하세요.

참고

커밋 ID처럼 보이지 않는 Git 브랜치 이름을 선택하는 것이 좋습니다. 예를 들면 다음과 같습니다.811dd1ba1aba14473856cee38308caed7190c0d또는5392f7. 이렇게 하면 Git 체크아웃이 실제 커밋과 충돌하는 것을 방지할 수 있습니다.

Git clone 깊이

히스토리가 지정된 커밋 수만큼 잘린 얕은 클론을 생성하도록 선택합니다. 전체 복제가 필요할 경우 전체를 선택합니다.

Git 하위 모듈

리포지토리에 Git 하위 모듈을 포함하려면 Use Git submodules(Git 하위 모듈 사용)를 선택합니다.

Bitbucket
Repository

선택해OAuth를 사용하여 Connect또는비트버킷 앱 비밀번호로 연결하기그리고 지침에 따라 Bitbucket에 연결 (또는 다시 연결) 합니다.

계정에서 공개 리포지토리 또는 리포지토리를 선택합니다.

소스 버전

브랜치, 커밋 ID, 태그 또는 레퍼런스와 커밋 ID를 입력합니다. 자세한 내용을 알아보려면 다음 섹션을 참조하세요.AWS CodeBuild를 사용한 소스 버전 샘플

참고

커밋 ID처럼 보이지 않는 Git 브랜치 이름을 선택하는 것이 좋습니다. 예를 들면 다음과 같습니다.811dd1ba1aba14473856cee38308caed7190c0d또는5392f7. 이렇게 하면 Git 체크아웃이 실제 커밋과 충돌하는 것을 방지할 수 있습니다.

Git clone 깊이

Git clone 깊이를 선택하면 이력이 지정된 커밋 수로 잘린 부분 복제가 생성됩니다. 전체 복제가 필요할 경우 전체를 선택합니다.

Git 하위 모듈

리포지토리에 Git 하위 모듈을 포함하려면 Use Git submodules(Git 하위 모듈 사용)를 선택합니다.

빌드 상태

Select빌드 시작 및 종료 시 소스 제공업체에 빌드 상태를 보고하세요.빌드의 시작 및 완료 상태를 소스 공급자에게 보고하려는 경우

소스 제공자에게 빌드 상태를 보고하려면 소스 제공자와 연결된 사용자에게 리포지토리에 대한 쓰기 권한이 있어야 합니다. 사용자에게 쓰기 권한이 없는 경우 빌드 상태를 업데이트할 수 없습니다. 자세한 정보는 소스 제공자 액세스을 참조하세요.

에 대한상태 컨텍스트에 사용할 값을 입력합니다.nameBitbucket 커밋 상태의 파라미터 자세한 내용은 Bitbucket API 설명서의 빌드를 참조하세요.

에 대한Tar의에 사용할 값을 입력합니다.urlBitbucket 커밋 상태의 파라미터 자세한 내용은 Bitbucket API 설명서의 빌드를 참조하세요.

웹후크에 의해 트리거된 빌드 상태는 항상 소스 제공자에게 보고됩니다. 콘솔에서 시작된 빌드 상태 또는 소스 제공자에 API 호출이 보고되도록 하려면 이 설정을 선택해야 합니다.

프로젝트 빌드가 웹후크에 의해 트리거되는 경우 이 설정의 변경 사항을 적용하려면 리포지토리에 새 커밋을 푸시해야 합니다.

In기본 소스 웹후크 이벤트, 선택코드 변경이 이 리포지토리에 푸시될 때마다 다시 빌드하세요.네가 원한다면 CodeBuild 코드 변경이 이 리포지토리로 푸시될 때마다 소스 코드를 빌드합니다. Webhook와 필터 그룹에 대한 자세한 내용은 단원을 참조하십시오.Bitbucket Webhook 이벤트.

GitHub
Repository

선택해OAuth를 사용하여 Connect또는Connect 사용합니다. GitHub 개인용 액세스 토큰지침에 따라 연결 (또는 다시 연결) 하십시오. GitHub 및 액세스 권한 부여AWS CodeBuild.

계정에서 공개 리포지토리 또는 리포지토리를 선택합니다.

소스 버전

브랜치, 커밋 ID, 태그 또는 레퍼런스와 커밋 ID를 입력합니다. 자세한 내용을 알아보려면 다음 섹션을 참조하세요.AWS CodeBuild를 사용한 소스 버전 샘플

참고

커밋 ID처럼 보이지 않는 Git 브랜치 이름을 선택하는 것이 좋습니다. 예를 들면 다음과 같습니다.811dd1ba1aba14473856cee38308caed7190c0d또는5392f7. 이렇게 하면 Git 체크아웃이 실제 커밋과 충돌하는 것을 방지할 수 있습니다.

Git clone 깊이

Git clone 깊이를 선택하면 이력이 지정된 커밋 수로 잘린 부분 복제가 생성됩니다. 전체 복제가 필요할 경우 전체를 선택합니다.

Git 하위 모듈

리포지토리에 Git 하위 모듈을 포함하려면 Use Git submodules(Git 하위 모듈 사용)를 선택합니다.

빌드 상태

Select빌드 시작 및 종료 시 소스 제공업체에 빌드 상태를 보고하세요.빌드의 시작 및 완료 상태를 소스 공급자에게 보고하려는 경우

소스 제공자에게 빌드 상태를 보고하려면 소스 제공자와 연결된 사용자에게 리포지토리에 대한 쓰기 권한이 있어야 합니다. 사용자에게 쓰기 권한이 없는 경우 빌드 상태를 업데이트할 수 없습니다. 자세한 정보는 소스 제공자 액세스을 참조하세요.

에 대한상태 컨텍스트에 사용할 값을 입력합니다.context의 파라미터 GitHub 커밋 상태 자세한 내용을 알아보려면 다음 섹션을 참조하세요.커밋 상태 생성에서 GitHub 개발자 안내서입니다.

에 대한Tar의에 사용할 값을 입력합니다.target_url의 파라미터 GitHub 커밋 상태 자세한 내용을 알아보려면 다음 섹션을 참조하세요.커밋 상태 생성에서 GitHub 개발자 안내서입니다.

웹후크에 의해 트리거된 빌드 상태는 항상 소스 제공자에게 보고됩니다. 콘솔에서 시작된 빌드 상태 또는 소스 제공자에 API 호출이 보고되도록 하려면 이 설정을 선택해야 합니다.

프로젝트 빌드가 웹후크에 의해 트리거되는 경우 이 설정의 변경 사항을 적용하려면 리포지토리에 새 커밋을 푸시해야 합니다.

In기본 소스 웹후크 이벤트, 선택코드 변경이 이 리포지토리에 푸시될 때마다 다시 빌드하세요.네가 원한다면 CodeBuild 코드 변경이 이 리포지토리로 푸시될 때마다 소스 코드를 빌드합니다. Webhook와 필터 그룹에 대한 자세한 내용은 단원을 참조하십시오.GitHub Webhook 이벤트.

GitHub Enterprise Server
GitHub 엔터프라이즈 개인 액세스 토큰

참조GitHub Enterprise Server 샘플개인용 액세스 토큰을 클립보드에 복사하는 방법에 대한 자세한 내용을 참조하십시오. 토큰을 텍스트 필드에 붙여넣고, 토큰 저장을 선택합니다.

참고

개인 액세스 토큰은 한 번만 입력하고 저장하면 됩니다. CodeBuild future 모든 프로젝트에서 이 토큰을 사용합니다.

소스 버전

풀 리퀘스트, 브랜치, 커밋 ID, 태그 또는 레퍼런스와 커밋 ID를 입력합니다. 자세한 정보는 AWS CodeBuild를 사용한 소스 버전 샘플을 참조하세요.

참고

커밋 ID처럼 보이지 않는 Git 브랜치 이름을 선택하는 것이 좋습니다. 예를 들면 다음과 같습니다.811dd1ba1aba14473856cee38308caed7190c0d또는5392f7. 이렇게 하면 Git 체크아웃이 실제 커밋과 충돌하는 것을 방지할 수 있습니다.

Git 복제 깊이

Git clone 깊이를 선택하면 이력이 지정된 커밋 수로 잘린 부분 복제가 생성됩니다. 전체 복제가 필요할 경우 전체를 선택합니다.

Git 하위 모듈

리포지토리에 Git 하위 모듈을 포함하려면 Use Git submodules(Git 하위 모듈 사용)를 선택합니다.

빌드 상태

Select빌드 시작 및 종료 시 소스 제공업체에 빌드 상태를 보고하세요.빌드의 시작 및 완료 상태를 소스 공급자에게 보고하려는 경우

소스 제공자에게 빌드 상태를 보고하려면 소스 제공자와 연결된 사용자에게 리포지토리에 대한 쓰기 권한이 있어야 합니다. 사용자에게 쓰기 권한이 없는 경우 빌드 상태를 업데이트할 수 없습니다. 자세한 정보는 소스 제공자 액세스을 참조하세요.

에 대한상태 컨텍스트에 사용할 값을 입력합니다.context의 파라미터 GitHub 커밋 상태 자세한 내용을 알아보려면 다음 섹션을 참조하세요.커밋 상태 생성에서 GitHub 개발자 안내서입니다.

에 대한Tar의에 사용할 값을 입력합니다.target_url의 파라미터 GitHub 커밋 상태 자세한 내용을 알아보려면 다음 섹션을 참조하세요.커밋 상태 생성에서 GitHub 개발자 안내서입니다.

웹후크에 의해 트리거된 빌드 상태는 항상 소스 제공자에게 보고됩니다. 콘솔에서 시작된 빌드 상태 또는 소스 제공자에 API 호출이 보고되도록 하려면 이 설정을 선택해야 합니다.

프로젝트 빌드가 웹후크에 의해 트리거되는 경우 이 설정의 변경 사항을 적용하려면 리포지토리에 새 커밋을 푸시해야 합니다.

안전하지 않은 SSL

Select비보안 SSL 활성화연결 중에 SSL 경고를 무시하려면 GitHub 엔터프라이즈 프로젝트 리포지토리

In기본 소스 웹후크 이벤트, 선택코드 변경이 이 리포지토리에 푸시될 때마다 다시 빌드하세요.네가 원한다면 CodeBuild 코드 변경이 이 리포지토리로 푸시될 때마다 소스 코드를 빌드합니다. Webhook와 필터 그룹에 대한 자세한 내용은 단원을 참조하십시오.GitHub Webhook 이벤트.

Environment

환경 이미지

다음 중 하나를 수행하세요.

  • AWS CodeBuild가 관리하는 도커 이미지를 사용하려면 Managed image(관리형 이미지)를 선택한 후 운영 체제, 런타임, 이미지이미지 버전에서 항목을 선택합니다. 사용 가능한 경우 환경 유형에서 항목을 선택합니다.

  • 다른 도커 이미지를 사용하려면 사용자 지정 이미지를 선택합니다. 에 대한환경 유형, 선택,리눅스,리눅스 GPU, 또는윈도우. Other registry(다른 레지스트리)를 선택한 경우 External registry URL(외부 레지스트리 URL)에 Docker Hub의 도커 이미지 이름 및 태그를 docker repository/docker image name 형식으로 입력합니다. 선택 항목Amazon ECR, 사용Amazon ECR 리포지토리Amazon ECR 이미지에서 Docker 이미지를 선택하십시오.AWS계정.

  • 비공개 Docker 이미지를 사용하려면 선택하십시오.사용자 지정 이미지. 에 대한환경 유형, 선택,리눅스,리눅스 GPU, 또는윈도우. Image registry(이미지 레지스트리)에서 Other registry(다른 레지스트리)를 선택한 다음 프라이빗 도커 이미지에 대한 자격 증명 정보의 ARN을 입력합니다. 자격 증명은 Secrets Manager 매니저에서 생성해야 합니다. 자세한 내용을 알아보려면 다음 섹션을 참조하세요.이란 무엇입니까?AWS Secrets Manager?에서AWS Secrets Manager사용 설명서.

참고

CodeBuild 재정의ENTRYPOINT사용자 지정 Docker 이미지용.

Privileged

(선택 사항) 선택Privileged이 빌드 프로젝트를 사용하여 Docker 이미지를 빌드하려는 경우에만 해당되며 선택한 빌드 환경 이미지는 에서 제공하지 않습니다. CodeBuild 도커를 지원합니다. 그렇지 않으면 Docker 데몬과 상호 작용을 시도하는 모든 연결된 빌드가 실패합니다. 또한 빌드가 상호 작용할 수 있도록 Docker 데몬을 시작해야 합니다. 이를 수행하는 한 가지 방법은 다음 빌드 명령을 실행하여 빌드 사양의 install 단계에서 Docker 데몬을 초기화하는 것입니다. 에서 제공하는 빌드 환경 이미지를 선택한 경우에는 이러한 명령을 실행하지 마십시오. CodeBuild 도커를 지원합니다.

참고

기본적으로 Docker 컨테이너는 모든 디바이스에 대한 액세스를 허용하지 않습니다. 권한 모드는 빌드 프로젝트의 Docker 컨테이너에 모든 디바이스에 대한 액세스 권한을 부여합니다. 자세한 내용은 Docker 문서 웹 사이트의 런타임 권한 및 Linux 기능을 참조하십시오.

- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://127.0.0.1:2375 --storage-driver=overlay2 & - timeout 15 sh -c "until docker info; do echo .; sleep 1; done"
서비스 역할

다음 중 하나를 수행하세요.

  • 계정이 없을 경우 CodeBuild 서비스 역할, 선택새로운 서비스 역할. 역할 이름에 새 역할의 이름을 입력합니다.

  • 당신이 가지고 있는 도구 CodeBuild 서비스 역할, 선택기존 서비스 역할. 역할 ARN에서 서비스 역할을 선택합니다.

참고

콘솔을 사용하여 빌드 프로젝트를 생성할 때 CodeBuild 서비스 역할을 동시에 수행합니다. 기본적으로 역할은 해당 빌드 프로젝트에서만 작동합니다. 콘솔을 사용하여 이 서비스 역할을 다른 빌드 프로젝트와 연결하는 경우 다른 빌드 프로젝트에서 작동하도록 역할이 업데이트됩니다. 하나의 서비스 역할은 최대 10개의 빌드 프로젝트에서 작동할 수 있습니다.

추가 구성
제한 시간

5 분에서 8 시간 사이의 값을 지정하십시오. 그 후에 CodeBuild 빌드가 완료되지 않은 경우 빌드를 중단합니다. [hours] 및 [minutes]가 비어 있는 경우 기본값인 60분이 사용됩니다.

VPC

원하는 경우 CodeBuild VPC로 작업하려면:

  • 에 대한VPC, 다음 VPC ID를 선택합니다. CodeBuild 를 사용합니다.

  • 에 대한VPC 서브넷, 다음 리소스를 포함하는 서브넷을 선택하십시오. CodeBuild 를 사용합니다.

  • 에 대한VPC 보안 그룹, 다음과 같은 보안 그룹을 선택하십시오. CodeBuild VPC의 리소스에 대한 액세스를 허용하는 데 사용됩니다.

자세한 정보는 사용AWS CodeBuildAmazon Virtual Private Cloud 사용을 참조하세요.

컴퓨팅

사용 가능한 옵션 중 하나를 선택합니다.

환경 변수

이름과 값을 입력한 다음 사용할 빌드에 사용할 각 환경 변수의 유형을 선택합니다.

참고

CodeBuild 의 환경 변수를 설정합니다.AWS자동으로 지역 지정. buildspec.yml에 추가하지 않은 경우 다음 환경 변수를 설정해야 합니다.

  • AWS_ACCOUNT_ID

  • IMAGE_REPO_NAME

  • IMAGE_TAG

콘솔 및 AWS CLI 사용자는 환경 변수를 확인할 수 있습니다. 환경 변수의 가시성에 대한 문제가 없다면 [Name] 및 [Value] 필드를 설정한 다음 [Type]을 [Plaintext]로 설정합니다.

환경 변수를 민감한 값으로 저장하는 것이 좋습니다 (예:AWS액세스 키 ID,AWS보안 액세스 키 또는 Amazon EC2 Systems Manager 의 파라미터로 사용되는 암호 또는AWS Secrets Manager.

Amazon EC2 Systems Manager유형, 선택파라미터. 에 대한이름, 식별자 입력 대상 CodeBuild 참조입니다. 에 대한Amazon EC2 Systems Manager ager 파라미터 스토어에 저장되는 파라미터의 이름을 입력합니다. 예를 들어 /CodeBuild/dockerLoginPassword라는 이름의 파라미터를 사용하여 유형에서 파라미터를 선택합니다. 이름(Name)LOGIN_PASSWORD을 입력합니다. /CodeBuild/dockerLoginPassword을(를) 입력합니다.

중요

Amazon EC2 Systems Manager 파라미터 스토어를 사용하는 경우 로 시작하는 파라미터 이름을 사용하여 파라미터를 저장하는 것이 좋습니다./CodeBuild/예,/CodeBuild/dockerLoginPassword). 이 기능을 사용할 수 있습니다. CodeBuild Amazon EC2 Systems Manager 에서 파라미터를 생성할 수 있는 콘솔입니다. 파라미터 생성을 선택하고 대화 상자에 표시되는 지시에 따릅니다. (해당 대화 상자에서는KMS 키의 ARN을 지정할 수 있습니다.AWS KMS계정 키를 입력하세요. Amazon EC2 Systems Manager 이 키를 사용하여 저장 중에 파라미터의 값을 암호화하고 검색 중에 이를 해독합니다.) 사용하는 도구 CodeBuild 콘솔에서 파라미터를 생성하면 다음과 같이 파라미터 이름이 시작됩니다./CodeBuild/저장 중일 때. 자세한 내용을 알아보려면 다음 섹션을 참조하세요.Systems Manager Parameter StoreSystems Manager에서Amazon EC2 Systems Manager 사용 설명서.

빌드 프로젝트가 Amazon EC2 Systems Manager 파라미터 스토어에 저장된 파라미터를 참조하는 경우, 빌드 프로젝트의 서비스 역할은 다음을 허용해야 합니다.ssm:GetParameters작업 선택한 경우새로운 서비스 역할이전, CodeBuild 빌드 프로젝트의 기본 서비스 역할에 이 작업을 포함합니다. Existing service role(기존 서비스 역할)을 선택한 경우에는 이 작업을 서비스 역할에 별도로 포함해야 합니다.

빌드 프로젝트에서 Amazon EC2 Systems Manager 의 파라미터 스토어에 저장되는 파라미터를 참조하는 경우/CodeBuild/, 그리고 당신은 선택했습니다새로운 서비스 역할, 로 시작하지 않는 파라미터 이름에 액세스할 수 있도록 해당 서비스 역할을 업데이트해야 합니다./CodeBuild/. 이는 서비스 역할이 /CodeBuild/로 시작하는 파라미터 이름에만 액세스할 수 있기 때문입니다.

선택 항목새로운 서비스 역할, 서비스 역할에는 아래의 모든 매개 변수를 해독할 수 있는 권한이 포함됩니다./CodeBuild/Amazon EC2 Systems Manager

사용자가 설정한 환경 변수는 기존 환경 변수를 대체합니다. 예를 들어 Docker 이미지에 값이 my_valueMY_VAR이라는 환경 변수가 이미 포함되어 있는데, 사용자가 MY_VAR 환경 변수의 값을 other_value로 설정하면, my_valueother_value로 바뀝니다. 마찬가지로, Docker 이미지에 값이 /usr/local/sbin:/usr/local/binPATH라는 환경 변수가 이미 포함되어 있는데, 사용자가 PATH 환경 변수의 값을 $PATH:/usr/share/ant/bin으로 설정하면, /usr/local/sbin:/usr/local/bin$PATH:/usr/share/ant/bin 리터럴 값으로 바뀝니다.

CODEBUILD_로 시작하는 이름으로 환경 변수를 설정하지 마십시오. 이 접두사는 내부 전용으로 예약되어 있습니다.

여러 위치에서 동일한 이름의 환경 변수가 정의되는 경우, 다음과 같이 값이 결정됩니다.

  • 시작 빌드 작업 호출의 값이 가장 높은 우선 순위를 갖습니다.

  • 빌드 프로젝트 정의의 값이 다음 우선 순위를 갖습니다.

  • buildspec 선언의 값이 가장 낮은 우선 순위를 갖습니다.

Secrets Manager 사용하는 경우유형, 선택보안 관리자. 에 대한이름, 식별자 입력 대상 CodeBuild 참조입니다. secret-id:json-key:version-stage:version-id 패턴을 사용하여 reference-key를 입력합니다. 자세한 내용은 Secrets Manager reference-key in the buildspec file을 참조하세요.

중요

Secrets Managererer를 사용하는 경우 다음으로 시작하는 이름으로 보안 암호를 저장하는 것이 좋습니다./CodeBuild/예,/CodeBuild/dockerLoginPassword). 자세한 내용을 알아보려면 다음 섹션을 참조하세요.이란 무엇입니까?AWS Secrets Manager?에서AWS Secrets Manager사용 설명서.

빌드 프로젝트가 Secrets Manager에 저장된 시크릿을 참조하는 경우 빌드 프로젝트의 서비스 역할은 다음을 허용해야 합니다.secretsmanager:GetSecretValue작업 선택한 경우새로운 서비스 역할이전, CodeBuild 빌드 프로젝트의 기본 서비스 역할에 이 작업을 포함합니다. Existing service role(기존 서비스 역할)을 선택한 경우에는 이 작업을 서비스 역할에 별도로 포함해야 합니다.

빌드 프로젝트가 Secrets Manager에 저장된 시크릿 이름으로 시작하지 않는 시크릿을 참조하는 경우/CodeBuild/, 그리고 당신은 선택했습니다새로운 서비스 역할, 로 시작하지 않는 암호 이름에 액세스할 수 있도록 서비스 역할을 업데이트해야 합니다./CodeBuild/. 이는 서비스 역할이 /CodeBuild/로 시작하는 암호 이름에만 액세스할 수 있기 때문입니다.

선택 항목새로운 서비스 역할, 서비스 역할에는 다음의 모든 암호를 해독할 수 있는 권한이 포함됩니다./CodeBuild/Secrets Manager 네임스페이스

BuildSpec

빌드 사양

다음 중 하나를 수행하세요.

  • 소스 코드에 buildspec 파일이 있는 경우 Use a buildspec file(빌드 사양 파일 사용) 을 선택합니다. 기본적으로 CodeBuild는 소스 코드 루트 디렉토리에서 buildspec.yml이라는 파일을 찾습니다. buildspec 파일이 다른 이름이나 위치를 사용하는 경우 소스 루트의 경로를 에 입력하십시오.BuildSpec 이름예,buildspec-two.yml또는configuration/buildspec.yml. 빌드/스펙 파일이 S3 버킷에 있는 경우 동일한 버킷에 있어야 합니다.AWS빌드 프로젝트로 리전을 지정합니다. 해당 ARN을 사용하여 빌드/스펙 파일을 지정합니다 (예:arn:aws:s3:::my-codebuild-sample2/buildspec.yml).

  • 소스 코드에 buildspec 파일이 포함되어 있지 않거나, 소스 코드의 루트 디렉터리에 있는 buildspec.yml 파일의 build 단계에 지정된 것과 다른 빌드 명령 세트를 실행하려는 경우 빌드 명령 삽입을 선택합니다. 빌드 명령build 단계에서 실행하려는 명령을 입력합니다. 명령이 여러 개인 경우 각 명령을 &&로 구분합니다(예: mvn test && mvn package). 다른 단계에서 명령을 실행하거나 다음에 대한 명령 목록이 긴 경우build단계, 추가buildspec.yml파일을 소스 코드 루트 디렉터리에 저장하고 파일에 명령을 추가한 다음 선택소스 코드 루트 디렉터리에서 buildspec.yml을 사용하십시오..

자세한 내용은 buildspec 참조 섹션을 참조하세요.

Batch 구성

빌드 그룹을 단일 작업으로 실행할 수 있습니다. 자세한 정보는 Batch 빌드AWS CodeBuild을 참조하세요.

배치 구성 정의

이 프로젝트에서 일괄 빌드를 허용하려면 선택합니다.

Batch 서비스 역할

배치 빌드에 대한 서비스 역할을 제공합니다.

다음 중 하나를 선택합니다.

  • 배치 서비스 역할이 없는 경우 다음을 선택하십시오.새로운 서비스 역할. In서비스 역할새 역할의 이름을 입력합니다.

  • 배치 서비스 역할이 있는 경우 다음 중 하나를 선택하십시오.기존 서비스 역할. In서비스 역할, 서비스 역할을 선택합니다.

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

  • 빌드 역할 부여StartBuild,StopBuild, 및RetryBuild권한을 사용하면 단일 빌드가 buildspec을 통해 더 많은 빌드를 시작할 수 있습니다.

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

배치에 허용된 컴퓨팅 유형

배치에 허용되는 컴퓨팅 유형을 선택합니다. 해당 항목을 모두 선택합니다.

일괄 허용된 최대 빌드 수

일괄 처리에서 허용되는 최대 빌드 수를 입력합니다. 배치가 이 한도를 초과하면 배치가 실패합니다.

Batch 제한 시간

배치 빌드가 완료되는 최대 시간을 입력합니다.

Artifact 결합

Select배치의 모든 아티팩트를 단일 위치로 결합합니다.배치의 모든 아티팩트를 단일 위치에 결합할 수 있습니다.

Batch 보고서 모드

배치 빌드에 대해 원하는 빌드 상태 보고서 모드를 선택합니다.

참고

이 필드는 프로젝트 소스가 Bitbucket인 경우에만 사용할 수 있습니다. GitHub, 또는 GitHubEnterprise 및빌드 시작 및 종료 시 소스 제공업체에 빌드 상태를 보고하세요.에서 선택됨소스.

집계 빌드

일괄 처리의 모든 빌드에 대한 상태를 단일 상태 보고서로 결합하려면 선택합니다.

개별 빌드

일괄 처리의 모든 빌드에 대한 빌드 상태가 별도로 보고되도록 하려면 선택합니다.

Artifacts

유형

다음 중 하나를 수행하세요.

  • 빌드 출력 결과물을 생성하지 않으려면 [No artifacts]를 선택합니다. 빌드 테스트만 실행하거나 Docker 이미지를 Amazon ECR 리포지토리로 푸시하려는 경우 이 방법을 사용하는 것이 좋습니다.

  • S3 버킷에 빌드 출력을 저장하려면 다음을 선택합니다.Amazon S3을 (를) 수행한 후 다음을 수행합니다.

    • 빌드 출력 ZIP 파일이나 폴더에 프로젝트 이름을 사용하려는 경우 이름을 비워 둡니다. 그렇지 않으면 이름을 입력합니다. (ZIP 파일을 출력하고 ZIP 파일에 파일 확장명을 넣으려는 경우, ZIP 파일 이름 뒤에 이를 포함하십시오.)

    • buildspec 파일에 지정된 이름으로 콘솔에서 지정한 이름을 재정의하려는 경우 의미 체게 버전 관리 사용을 선택합니다. buildspec 파일의 이름은 빌드 시 계산되며 Shell 명령 언어를 사용합니다. 예를 들어 결과물 이름이 항상 고유하도록 날짜와 시간을 결과물 이름에 추가할 수 있습니다. 고유한 결과물 이름을 사용하면 결과물을 덮어쓰지 않을 수 있습니다. 자세한 정보는 buildspec 구문을 참조하세요.

    • [Bucket name]에서 출력 버킷의 이름을 선택합니다.

    • 이 절차의 앞부분에서 빌드 명령 삽입을 선택한 경우 출력 파일에 빌드 출력 ZIP 파일 또는 폴더에 넣으려는 빌드의 파일 위치를 입력합니다. 위치가 여러 개인 경우 각 위치를 쉼표로 구분합니다(예: appspec.yml, target/my-app.jar). 자세한 내용은 buildspec 구문files 설명을 참조하십시오.

    • 빌드 결과물을 암호화하지 않으려면 Remove artifacts encryption(결과물 암호화 제거)을 선택합니다.

각각 원하는 보조 아티팩트 세트마다 다음과 같이 실행합니다.

  1. Atrifact identifier(아티팩트 식별자)에서 128자 미만으로 영숫자와 밑줄만 포함된 값을 입력합니다.

  2. Add artifact(아티팩트 추가)를 선택합니다.

  3. 이전 단계에 따라 보조 결과물을 구성합니다.

  4. Save artifact(아티팩트 저장)를 선택합니다.

추가 구성
암호화 키

(선택 사항) 다음 중 하나를 수행하십시오.

  • 사용AWS 관리형 키계정의 Amazon S3 S3가 빌드 출력 결과물을 암호화하려면 그대로 두십시오.암호화 키비어 있습니다. 이 값이 기본값입니다.

  • 빌드의 출력 결과물을 암호화하기 위해 고객 관리형 키를 사용합니다.암호화 키KMS 키의 ARN을 입력합니다. arn:aws:kms:region-ID:account-ID:key/key-ID 형식을 사용합니다.

Cache 유형

Cache type(캐시 유형)에서 다음 중 하나를 선택합니다.

  • 캐시를 사용하지 않으려면 [No cache]를 선택합니다.

  • Amazon S3 캐시를 사용하려면 선택하십시오.Amazon S3을 (를) 수행한 후 다음을 수행합니다.

    • 버킷에서 캐시가 저장된 S3 버킷의 이름을 선택합니다.

    • (선택 사항 사항)캐시 경로 접두사Amazon S3 경로 접두사를 입력합니다. Cache path prefix(캐시 경로 접두사) 값은 디렉터리 이름과 비슷합니다. 따라서 캐시를 버킷의 동일한 디렉터리에 저장할 수 있습니다.

      중요

      경로 접두사 끝에 후행 슬래시(/)를 추가하지 마십시오.

  • 로컬 캐시를 사용하려면 로컬을 선택한 다음 하나 이상의 로컬 캐시 모드를 선택해야 합니다.

    참고

    Docker 계층 캐시 모드는 Linux에서만 사용할 수 있습니다. 이 모드를 선택할 경우 프로젝트를 권한이 있는 모드에서 실행해야 합니다.

캐시를 사용하면 빌드 환경의 재사용 가능한 특정 부분이 캐시에 저장되고 빌드 전반에서 사용되기 때문에 상당한 빌드 시간을 절약할 수 있습니다. buildspec 파일에 캐시를 지정하는 것에 대한 자세한 정보는 buildspec 구문 단원을 참조하십시오. 캐싱에 대한 자세한 정보는 AWS CodeBuild의 빌드 캐싱을 참조하십시오.

로그

생성하려는 로그를 선택합니다. 아마존을 만들 수 있습니다 CloudWatch 로그, Amazon S3 로그 또는 둘 다

CloudWatch

아마존을 원한다면 CloudWatch 로그 로그:

CloudWatch 로그

CloudWatch 로그를 선택합니다.

[Group name]

Amazon 이름을 입력합니다. CloudWatch Logs 로그 그룹

스트림 이름

아마존에 들어가세요 CloudWatch 로그 스트림 이름을 기록합니다.

S3

Amazon S3 로그가 필요한 경우:

S3 로그

S3 로그를 선택합니다.

버킷

로그에 대한 S3 버킷의 이름을 선택합니다.

경로 접두사

로그의 접두사를 입력합니다.

S3 로그 암호화 비활성화

S3 로그를 암호화하지 않으려면 선택하십시오.