병합된 결과 파이프라인
- GitLab 15.1에서 소개된 병합된 결과 파이프라인은 Draft 병합 요청에서도 실행됩니다.
병합된 결과 파이프라인은 소스 및 대상 브랜치가 함께 병합된 결과물을 기반으로 실행됩니다. 이는 병합 요청 파이프라인의 일종입니다.
GitLab은 병합된 결과물과 관련된 내부 커밋을 생성하여 파이프라인을 실행할 수 있습니다. 이 커밋은 어느 브랜치에도 존재하지 않지만 파이프라인 세부 정보에서 볼 수 있습니다. 내부 커밋의 작성자는 항상 병합 요청을 생성한 사용자입니다.
파이프라인은 실행 시점 대상 브랜치에 대해 실행됩니다. 작업 중인 동안 소스 브랜치에서 대상 브랜치가 변경될 수 있습니다. 병합된 결과물이 정확한지 확인하고 싶을 때마다 파이프라인을 다시 실행해야 합니다.
대상 브랜치에 변경 사항이 있는 경우 병합된 결과 파이프라인은 실행할 수 없습니다. 이러한 경우에는 파이프라인이 병합 요청 파이프라인으로 실행되며 병합 요청
이라고 표시됩니다.
필수 조건
병합된 결과 파이프라인을 사용하려면 다음이 필요합니다:
- 프로젝트의
.gitlab-ci.yml
파일은 병합 요청 파이프라인에서 작업을 실행하도록 구성되어야 합니다. - 귀하의 저장소는 GitLab 저장소여야 하며 외부 저장소가 아니어야 합니다.
병합된 결과 파이프라인 활성화
프로젝트에서 병합된 결과 파이프라인을 활성화하려면 적어도 Maintainer 역할이 있어야 합니다:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 설정 > 병합 요청을 선택합니다.
- 병합 옵션 섹션에서 병합된 결과 파이프라인 사용을 선택합니다.
- 변경 사항 저장을 선택합니다.
경고: 체크 박스를 선택하지만 파이프라인을 설정하여 병합 요청 파이프라인을 사용하지 않은 경우 병합 요청이 미해결 상태로 남거나 파이프라인이 삭제될 수 있습니다.
문제 해결
rules:changes:compare_to
를 사용할 때 작업 또는 파이프라인이 예상치 못하게 실행되는 문제
병합된 결과 파이프라인을 사용할 때 GitLab이 생성하는 내부 커밋을 기준으로 비교하는 경우 rules:changes:compare_to
를 사용할 때 작업 또는 파이프라인이 예상치 못하게 실행될 수 있습니다. 이 커밋에는 보통 MR 브랜치의 최신 변경보다 더 많은 변경 사항이 포함되어 예상치 못한 결과를 초래할 수 있습니다.
성공한 병합된 결과 파이프라인이 실패한 브랜치 파이프라인을 덮어쓰는 문제
실패한 브랜치 파이프라인이 때로는 파이프라인 성공 필요 설정이 활성화되어 있을 때 무시되는 경우가 있습니다. 이를 추적하는 Issue 385841가 열려 있습니다.