GitLab webhook 이벤트 - AWS CodeBuild

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

GitLab webhook 이벤트

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

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

이벤트

의 경우 GitLab, , PUSH, , PULL_REQUEST_CREATED, PULL_REQUEST_UPDATEDPULL_REQUEST_MERGED, PULL_REQUEST_REOPENEDRELEASED, PULL_REQUEST_CLOSED, 중 하나 이상의 이벤트를 선택할 수 있습니다WORKFLOW_JOB_QUEUED.

webhook의 이벤트 유형은 X-GitLab-Event 필드의 헤더에 있습니다. 다음 표에서는 X-GitLab-Event 헤더 값이 이벤트 유형에 매핑되는 방법을 보여 줍니다. Merge Request Hook 웹후크 이벤트의 경우 페이로드에는 병합 요청 유형에 대한 추가 정보가 object_atttributes.action 포함됩니다.

X-GitLab-Event 헤더 값 object_atttributes.action 이벤트 유형
Push Hook

N/A

PUSH
Merge Request Hook

open

PULL_REQUEST_CREATED
Merge Request Hook

업데이트

PULL_REQUEST_UPDATED
Merge Request Hook

닫기, 병합

PULL_REQUEST_MERGED
Merge Request Hook

다시 열기

PULL_REQUEST_REOPENED
Merge Request Hook

close

PULL_REQUEST_CLOSED
Release Hook

생성, 업데이트

RELEASED
Job Hook

N/A

WORKFLOW_JOB_QUEUED

PULL_REQUEST_MERGED의 경우 풀 요청이 스쿼시 전략에 병합되고 풀 요청 분기가 닫히면 원래의 풀 요청 커밋은 더 이상 존재하지 않게 됩니다. 이 경우 CODEBUILD_WEBHOOK_MERGE_COMMIT 환경 변수에는 스쿼시된 병합 커밋의 식별자가 포함됩니다.

하나 이상의 선택적 필터

정규식을 사용하여 필터를 지정합니다. 이벤트가 빌드를 트리거하려면 연결된 그룹 내의 필터가 모두 true로 평가되어야 합니다.

ACTOR_ACCOUNT_ID(콘솔의 ACTOR_ID)

웹후크 이벤트는 GitLab 계정 ID가 정규 표현식 패턴과 일치할 때 빌드를 트리거합니다. Webhook 필터 페이로드에 있는 actor 객체의 account_id 속성에 이 값이 표시됩니다.

HEAD_REF

헤드 참조가 정규식 패턴(예: refs/heads/branch-namerefs/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 리포지토리의 웹후크 설정에서 웹후크 페이로드를 찾을 수 있습니다.