에서 웹후크 사용 AWS CodeBuild - AWS CodeBuild

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

에서 웹후크 사용 AWS CodeBuild

AWS CodeBuild 는 GitHub, GitHub 엔터프라이즈 서버, GitLab GitLab 자체 관리형 및 Bitbucket과의 웹후크 통합을 지원합니다.

AWS CodeBuild의 webhook 사용 모범 사례

퍼블릭 리포지토리를 사용하여 webhook를 설정하는 프로젝트의 경우 다음 옵션을 권장합니다.

ACTOR_ACCOUNT_ID 필터 설정

프로젝트의 webhook 필터 그룹에 ACTOR_ACCOUNT_ID 필터를 추가하여 빌드를 트리거할 수 있는 사용자를 지정합니다. 에 전달되는 모든 웹후크 이벤트에는 작업자의 식별자를 지정하는 발신자 정보가 함께 CodeBuild 제공됩니다. CodeBuild 는 필터에 제공된 정규식 패턴을 기반으로 웹후크를 필터링합니다. 이 필터를 사용하여 빌드를 트리거할 수 있는 특정 사용자를 지정할 수 있습니다. 자세한 내용은 GitHub 웹후크 이벤트Bitbucket Webhook 이벤트 단원을 참조하세요.

FILE_PATH 필터 설정

프로젝트의 webhook 필터 그룹에 FILE_PATH 필터를 추가하여 변경 시 빌드를 트리거할 수 있는 파일을 포함하거나 제외합니다. 예를 들어 excludeMatchedPattern 속성과 함께 ^buildspec.yml$과 같은 정규 표현식 패턴을 사용하여 buildspec.yml 파일 변경에 대한 빌드 요청을 거부할 수 있습니다. 자세한 내용은 GitHub 웹후크 이벤트Bitbucket Webhook 이벤트 단원을 참조하세요.

빌드 IAM 역할에 대한 권한 범위 축소

webhook에 의해 트리거된 빌드는 프로젝트에 지정된 IAM 서비스 역할을 사용합니다. 서비스 역할의 권한을 빌드를 실행하는 데 필요한 최소 권한 세트로 설정하는 것이 좋습니다. 예를 들어 테스트 및 배포 시나리오에서는 테스트용 프로젝트 하나와 배포용 프로젝트 하나를 생성합니다. 테스트 프로젝트는 리포지토리의 webhook 빌드를 수락하지만 리소스에 대한 쓰기 권한은 제공하지 않습니다. 배포 프로젝트는 리소스에 대한 쓰기 권한을 제공하고 webhook 필터는 신뢰할 수 있는 사용자만 빌드를 트리거할 수 있도록 구성됩니다.

인라인 또는 Amazon S3 저장 buildspec 사용

프로젝트 내에서 buildspec 인라인을 정의하거나 Amazon S3 버킷에 buildspec 파일을 저장하는 경우, buildspec 파일은 프로젝트 소유자만 볼 수 있습니다. 이렇게 하면 풀 요청이 buildspec 파일의 코드를 변경하여 원치 않는 빌드를 트리거하는 것을 방지할 수 있습니다. 자세한 내용은 CodeBuild API 참조ProjectSource.buildspec을 참조하세요.