파이프라인 유형
파이프라인 유형
프로젝트에서 실행될 수 있는 다양한 파이프라인 유형을 소개하는 문서예요. 언제 어떤 파이프라인이 실행되는지, 그리고 각각의 특징과 기본 동작 여부를 옆에서 설명해 주는 방식으로 정리했어요.
파이프라인 유형을 이해하면 workflow:rules나 작업의 rules를 설계할 때 어떤 상황에서 파이프라인이 실행될지 명확하게 파악할 수 있어요.
출처: 문서
본문
프로젝트에는 여러 유형의 파이프라인이 실행될 수 있어요. 여기에는 다음이 포함돼요.
- 브랜치 파이프라인(Branch pipelines)
- 태그 파이프라인(Tag pipelines)
- 머지 리퀘스트 파이프라인(Merge request pipelines)
- 병합 결과 파이프라인(Merged results pipelines)
- 머지 트레인(Merge trains)
- 워크로드 파이프라인(Workload pipelines, GitLab Duo Agent Platform 전용)
이 모든 파이프라인 유형은 머지 리퀘스트의 Pipelines 탭에 표시돼요.
브랜치 파이프라인
브랜치에 변경 사항을 커밋할 때마다 파이프라인이 실행될 수 있어요.
이런 유형의 파이프라인을 브랜치 파이프라인이라고 부르며, 파이프라인 목록에 branch 레이블이 표시돼요.
이 파이프라인은 기본적으로 실행돼요. 별도 구성이 필요하지 않습니다.
브랜치 파이프라인:
- 브랜치에 새 커밋을 푸시할 때 실행돼요.
- 일부 사전 정의 변수에 접근할 수 있어요.
- 브랜치가 보호 브랜치일 때 보호 변수와 보호 러너에 접근할 수 있어요.
태그 파이프라인
새 태그를 만들거나 푸시할 때마다 파이프라인이 실행될 수 있어요.
이런 유형의 파이프라인을 태그 파이프라인이라고 부르며, 파이프라인 목록에 tag 레이블이 표시돼요.
이 파이프라인은 기본적으로 실행돼요. 별도 구성이 필요하지 않습니다.
태그 파이프라인:
- 저장소에 새 태그를 만들거나 푸시할 때 실행돼요.
- 일부 사전 정의 변수에 접근할 수 있어요.
- 태그가 보호 태그일 때 보호 변수와 보호 러너에 접근할 수 있어요.
머지 리퀘스트 파이프라인
브랜치 파이프라인 대신, 머지 리퀘스트에서 소스 브랜치를 변경할 때마다 실행되도록 파이프라인을 구성할 수 있어요.
이런 유형의 파이프라인을 머지 리퀘스트 파이프라인이라고 부르며, 파이프라인 목록에 merge request 레이블이 표시돼요.
머지 리퀘스트 파이프라인은 기본적으로 실행되지 않아요. .gitlab-ci.yml 파일의 작업을 머지 리퀘스트 파이프라인으로 실행되도록 구성해야 해요.
자세한 내용은 머지 리퀘스트 파이프라인을 참고하세요.
병합 결과 파이프라인
*병합 결과 파이프라인(Merged results pipeline)*은 소스 브랜치와 대상 브랜치를 병합한 결과에 대해 실행돼요. 이는 머지 리퀘스트 파이프라인의 한 유형이에요.
이 파이프라인은 기본적으로 실행되지 않아요. .gitlab-ci.yml 파일의 작업을 머지 리퀘스트 파이프라인으로 실행되도록 구성하고, 병합 결과 파이프라인을 활성화해야 해요.
이 파이프라인은 파이프라인 목록에 merged results 레이블이 표시돼요.
자세한 내용은 병합 결과 파이프라인을 참고하세요.
머지 트레인
기본 브랜치에 빈번한 병합이 있는 프로젝트에서는 서로 다른 머지 리퀘스트의 변경 사항이 서로 충돌할 수 있어요. 머지 트레인을 사용해 머지 리퀘스트를 큐에 넣을 수 있어요. 각 머지 리퀘스트는 다른 이전 머지 리퀘스트와 비교되어 모두 함께 동작하는지 확인돼요.
머지 트레인은 병합 결과 파이프라인과 달라요. 병합 결과 파이프라인은 변경 사항이 기본 브랜치의 콘텐츠와 동작하는지 확인하지만, 동시에 병합 중인 다른 콘텐츠와는 확인하지 않아요.
이 파이프라인은 기본적으로 실행되지 않아요. .gitlab-ci.yml 파일의 작업을 머지 리퀘스트 파이프라인으로 실행되도록 구성하고, 병합 결과 파이프라인을 활성화하고, 머지 트레인을 활성화해야 해요.
이 파이프라인은 파이프라인 목록에 merge train 레이블이 표시돼요.
자세한 내용은 머지 트레인을 참고하세요.
워크로드 파이프라인
워크로드 파이프라인은 GitLab Duo Agent Platform 워크로드의 실행 환경이에요.
워크로드 파이프라인:
refs/workloads/*라는 명명 규칙을 따르는 임시 Git 레퍼런스에서 실행돼요.- 파이프라인 목록에서 소스가
duo_workflow예요. - 워크로드 refs는 파이프라인 작업이 끝나거나 실패하면 자동으로 제거돼요.
- 워크로드 파이프라인 링크는 에이전트 또는 플랫폼 세션에서 사용할 수 있어요.
더 알아보기
파이프라인 유형별 동작 방식을 더 자세히 배우고 싶다면 머지 리퀘스트 파이프라인, 병합 결과 파이프라인, 머지 트레인 문서를 함께 살펴보세요. 특히 workflow:rules로 브랜치 파이프라인과 머지 리퀘스트 파이프라인을 전환하는 방법을 익히면 파이프라인 설계가 훨씬 유연해져요.