

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

# GitLab 웹후크 이벤트
<a name="gitlab-webhook"></a>

웹후크 필터 그룹을 사용하여 어느 GitLab 웹후크 이벤트가 빌드를 트리거할지 지정할 수 있습니다. 예를 들어 특정 분기가 변경된 경우에만 빌드가 트리거되도록 지정할 수 있습니다.

하나 이상의 웹후크 필터 그룹을 생성하여 어느 웹후크 이벤트가 빌드를 트리거할지 지정할 수 있습니다. 필터 그룹이 true로 평가(그룹 내 모든 필터가 true로 평가)되면 빌드가 트리거됩니다. 필터 그룹을 생성할 때 다음을 지정합니다.

**이벤트**  
GitLab의 경우 `PUSH`, `PULL_REQUEST_CREATED`, `PULL_REQUEST_UPDATED`, `PULL_REQUEST_MERGED`, `PULL_REQUEST_REOPENED`, `PULL_REQUEST_CLOSED`, `RELEASED` 및 `WORKFLOW_JOB_QUEUED` 이벤트 가운데 하나 이상을 선택할 수 있습니다.  
webhook의 이벤트 유형은 `X-GitLab-Event` 필드의 헤더에 있습니다. 다음 표에서는 `X-GitLab-Event` 헤더 값이 이벤트 유형에 매핑되는 방법을 보여 줍니다. `Merge Request Hook` 웹후크 이벤트의 경우 페이로드의 `object_atttributes.action`에는 병합 요청 유형에 대한 추가 정보가 포함됩니다.      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/codebuild/latest/userguide/gitlab-webhook.html)
`PULL_REQUEST_MERGED`의 경우 풀 요청이 스쿼시 전략에 병합되고 풀 요청 분기가 닫히면 원래의 풀 요청 커밋은 더 이상 존재하지 않게 됩니다. 이 경우 `CODEBUILD_WEBHOOK_MERGE_COMMIT` 환경 변수에는 스쿼시된 병합 커밋의 식별자가 포함됩니다.

**하나 이상의 선택적 필터**  
정규식을 사용하여 필터를 지정합니다. 이벤트가 빌드를 트리거하려면 연결된 그룹 내의 필터가 모두 true로 평가되어야 합니다.    
`ACTOR_ACCOUNT_ID`(콘솔의 `ACTOR_ID`)  
GitLab 계정 ID가 정규식 패턴과 일치하면 웹후크 이벤트가 빌드를 트리거합니다. Webhook 필터 페이로드에 있는 `actor` 객체의 `account_id` 속성에 이 값이 표시됩니다.  
`HEAD_REF`  
헤드 참조가 정규식 패턴(예: `refs/heads/branch-name` 및 `refs/tags/tag-name`)과 일치하면 webhook 이벤트가 빌드를 트리거합니다. `HEAD_REF` 필터가 브랜치나 태그의 Git 참조 이름을 평가합니다. Webhook 페이로드의 `push` 객체에 있는 `new` 객체의 `name` 필드에 브랜치 또는 태그 이름이 표시됩니다. pull 요청 이벤트의 경우 webhook 페이로드의 `source` 객체에 있는 `branch` 객체의 `name` 필드에 브랜치 이름이 표시됩니다.  
`BASE_REF`  
베이스 참조가 정규식 패턴과 일치하면 webhook 이벤트가 빌드를 트리거합니다. `BASE_REF` 필터는 풀 요청 이벤트에서만 작동합니다(예: `refs/heads/branch-name`). `BASE_REF` 필터가 브랜치의 Git 참조 이름을 평가합니다. Webhook 페이로드의 `destination` 객체에 있는 `branch` 객체의 `name` 필드에 브랜치 이름이 표시됩니다.  
`FILE_PATH`  
변경된 파일의 경로가 정규식 패턴과 일치하면 webhook가 빌드를 트리거합니다.  
`COMMIT_MESSAGE`  
헤드 커밋 메시지가 정규식 패턴과 일치하면 webhook가 빌드를 트리거합니다.  
`WORKFLOW_NAME`  
워크플로 이름이 정규식 패턴과 일치하면 웹후크가 빌드를 트리거합니다.

**참고**  
GitLab 리포지토리의 웹후크 설정에서 웹후크 페이로드를 찾을 수 있습니다.

**Topics**
+ [GitLab 웹후크 이벤트 필터링(콘솔)](gitlab-webhook-events-console.md)
+ [GitLab 웹후크 이벤트 필터링(SDK)](gitlab-webhook-events-sdk.md)
+ [GitLab 웹후크 이벤트 필터링(CloudFormation)](gitlab-webhook-events-cfn.md)