InfoGrab DocsInfoGrab Docs

CI/CD 파이프라인

파이프라인 구성, 자동화, 스테이지, 일정, 효율성을 설명합니다.

CI/CD 파이프라인은 GitLab CI/CD의 기본 구성 요소입니다. 파이프라인은 YAML 키워드 를 사용해 .gitlab-ci.yml 파일에서 구성합니다. 파이프라인은 브랜치에 푸시하거나 머지 리퀘스트를 생성하거나 일정에 따라 실행되는 등 특정 이벤트에 대해 자동으로 실행될 수 있습니다. 필요한 경우 파이프라인을 수동으로 실행할 수도 있습니다. 파이프라인은 다음으로 구성됩니다: 프로젝트 파이프라인의 전체 동작을 제어하는 전역 YAML 키워드 . 작업을 수행하기 위해 명령을 실행하는 job . 예를 들어 job은 코드를 컴파일, 테스트, 또는 배포할 수 있습니다. job은 서로 독립적으로 실행되며 러너 에 의해 실행됩니다. job을 그룹화하는 방법을 정의하는 stage. stage는 순차적으로 실행되며, stage 안의 job은 병렬로 실행됩니다. 예를 들어 초반 stage에는 코드를 린트하고 컴파일하는 job 이 있을 수 있고, 이후 stage에는 코드를 테스트하고 배포하는 job 이 있을 수 있습니다. stage의 모든 job 이 성공하면 파이프라인은 다음 stage로 진행합니다. stage의 job 이 하나라도 실패하면 (일반적으로) 다음 stage는 실행되지 않고 파이프라인이 조기에 종료됩니다. 작은 파이프라인은 다음 순서로 실행되는 세 개의 stage로 구성될 수 있습니다: 프로젝트 코드를 컴파일하는 compile job 이 있는 build stage. 코드에서 다양한 테스트를 실행하는 test1 , test2 라는 두 job 이 있는 test stage. 이 테스트는 compile job 이 성공적으로 완료된 경우에만 실행됩니다. deploy-to-production 이라는 job 이 있는 deploy stage. 이 job은 test stage의 두 job 이 모두 시작되고 성공적으로 완료된 경우에만 실행됩니다. 첫 파이프라인을 시작하려면 첫 GitLab CI/CD 파이프라인 생성 및 실행 을 참고합니다. 파이프라인 유형 # 파이프라인은 다양한 방식으로 구성할 수 있습니다: 기본 파이프라인 은 각 stage의 모든 항목을 동시에 실행한 뒤 다음 stage로 진행합니다. needs 키워드를 사용하는 파이프라인 은 job 간의 의존성을 기반으로 실행되며 기본 파이프라인보다 더 빠르게 실행될 수 있습니다. 브랜치 파이프라인 은 별도 설정 없이 브랜치에 커밋을 푸시할 때마다 실행됩니다. 머지 리퀘스트 파이프라인 은 모든 커밋이 아니라 머지 리퀘스트에 대해서만 실행됩니다. 병합 결과 파이프라인 은 소스 브랜치의 변경 사항이 대상 브랜치에 이미 병합된 것처럼 동작하는 머지 리퀘스트 파이프라인입니다. 머지 트레인 은 병합 결과 파이프라인을 사용해 병합을 순서대로 대기열에 넣습니다. 워크로드 파이프라인 은 임시 브랜치를 생성하지 않고 온디맨드로 파이프라인을 실행할 수 있도록 일시적인 Git 참조에서 실행됩니다. 부모-자식 파이프라인 은 복잡한 파이프라인을, 여러 자식 서브 파이프라인을 트리거할 수 있는 하나의 부모 파이프라인으로 분할합니