파이프라인 에디터
GitLab v19.5Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
요약
파이프라인 에디터는 리포지터리 루트에 있는 .gitlab-ci.yml 파일의 GitLab CI/CD 구성을 편집하는 주요 위치입니다. 파이프라인 에디터 페이지에서 다음을 수행할 수 있습니다. 파이프라인 에디터를 사용하는 동안 파이프라인 구성 문법은 GitLab CI/CD 파이프라인 스키마에 대해 지속적으로 검증됩니다.
파이프라인 에디터는 리포지터리 루트에 있는 .gitlab-ci.yml 파일의 GitLab CI/CD 구성을 편집하는 주요 위치입니다. 에디터에 접근하려면 Build > Pipeline editor로 이동합니다.
파이프라인 에디터 페이지에서 다음을 수행할 수 있습니다.
- 작업할 브랜치를 선택합니다.
- 파일을 편집하는 동안 구성 문법을 검증합니다.
include키워드로 추가된 모든 구성과 함께 검증하는 더 심층적인 구성 검증을 수행합니다.include키워드로 추가된 CI/CD 구성 목록 보기를 확인합니다.- 현재 구성의 시각화를 확인합니다.
include로 추가된 구성이 모두 반영된 전체 구성을 확인합니다.- 변경 사항을 특정 브랜치에 커밋합니다.
CI/CD 문법 검증#
파이프라인 에디터를 사용하는 동안 파이프라인 구성 문법은 GitLab CI/CD 파이프라인 스키마에 대해 지속적으로 검증됩니다. CI/CD YAML의 문법과 함께 몇 가지 기본적인 논리 검증도 확인됩니다.
이 검증 결과는 에디터 페이지 상단에 표시됩니다. 검증에 실패하면 이 섹션에 문제를 해결하는 데 도움이 되는 팁이 표시됩니다.
CI/CD 구성 검증#
히스토리
- 다른 브랜치를 선택하는 옵션이 GitLab 18.4에서 도입되었습니다.
변경 사항을 커밋하기 전에 GitLab CI/CD 구성의 유효성을 테스트하려면 파이프라인 에디터 검증 도구를 사용합니다. 이 도구는 Git 푸시 이벤트로 인한 파이프라인 생성을 시뮬레이션하며, 잘못된 rules 및 needs job 의존성을 포함한 논리 문제를 해결하는 데 도움을 줄 수 있습니다.
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Build > Pipeline editor를 선택합니다.
- Validate 탭을 선택합니다.
- 선택 사항입니다. Pipeline run source 드롭다운 목록을 사용하여 시뮬레이션된 푸시 이벤트에 사용할 다른 브랜치를 선택합니다.
- Validate pipeline을 선택합니다.
시뮬레이션된 파이프라인은 Edit 탭의 기존 파이프라인 구성을 사용합니다.
Edit 탭에 추가하지 않고 CI/CD YAML 스니펫을 검증하려면 대신 CI Lint 도구를 사용합니다.
포함된 CI/CD 구성 보기#
파이프라인 에디터에서 include 키워드로 추가된 구성을 검토할 수 있습니다. 오른쪽 상단에서 파일 트리([file-tree])를 선택하면 포함된 모든 구성 파일의 목록을 볼 수 있습니다. 선택한 파일은 검토를 위해 새 탭에서 열립니다.
CI/CD 구성 시각화#
.gitlab-ci.yml 구성의 시각화를 보려면 프로젝트에서 Build > Pipeline editor로 이동한 다음 Visualize 탭을 선택합니다. 시각화에는 모든 스테이지와 job이 표시됩니다. needs 관계가 있으면 job을 서로 연결하는 선으로 표시되어 실행 계층 구조를 보여줍니다.
job 위에 마우스를 올리면 해당 needs 관계가 강조 표시됩니다.

구성에 needs 관계가 없으면 각 job이 이전 스테이지의 성공적인 완료에만 의존하므로 선이 그려지지 않습니다.
파이프라인 실행 정책의 job은 프로젝트 .gitlab-ci.yml 구성에 정의되어 있지 않으므로 이 시각화에 표시되지 않습니다.
전체 구성 보기#
완전히 확장된 CI/CD 구성을 하나의 결합된 파일로 보려면 파이프라인 에디터의 Full configuration 탭으로 이동합니다. 이 탭에는 다음이 반영된 확장된 구성이 표시됩니다.
include로 가져온 구성이 뷰에 복사됩니다.extends를 사용하는 job은 확장된 구성이 job에 병합된 상태로 표시됩니다.- YAML 앵커는 연결된 구성으로 대체됩니다.
- YAML
!reference태그도 연결된 구성으로 대체됩니다. - 조건부 규칙은 기본 브랜치 푸시 이벤트를 가정하여 평가됩니다.
!reference 태그를 사용하면 확장된 뷰에서 줄 시작 부분에 여러 개의 하이픈(-)이 표시되는 중첩 구성이 발생할 수 있습니다. 이는 예상된 동작이며, 추가된 하이픈은 job의 실행에 영향을 주지 않습니다. 예를 들어 다음 구성과 완전히 확장된 버전은 모두 유효합니다.
-
.gitlab-ci.yml파일:.python-req: script: - pip install pyflakes .rule-01: rules: - if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^feature/ when: manual allow_failure: true - if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME .rule-02: rules: - if: $CI_COMMIT_BRANCH == "main" when: manual allow_failure: true lint-python: image: python:latest script: - !reference [.python-req, script] - pyflakes python/ rules: - !reference [.rule-01, rules] - !reference [.rule-02, rules] -
Full configuration 탭의 확장된 구성:
".python-req": script: - pip install pyflakes ".rule-01": rules: - if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^feature/" when: manual allow_failure: true - if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME" ".rule-02": rules: - if: $CI_COMMIT_BRANCH == "main" when: manual allow_failure: true lint-python: image: python:latest script: - - pip install pyflakes # <- The extra hyphens do not affect the job's execution. - pyflakes python/ rules: - - if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^feature/" # <- The extra hyphens do not affect the job's execution. when: manual allow_failure: true - if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME" # <- No extra hyphen but aligned with previous rule - - if: $CI_COMMIT_BRANCH == "main" # <- The extra hyphens do not affect the job's execution. when: manual allow_failure: true
CI 구성 변경 사항 커밋#
커밋 폼은 에디터의 각 탭 하단에 표시되므로 언제든지 변경 사항을 커밋할 수 있습니다.
변경 사항에 만족하면 설명이 포함된 커밋 메시지를 추가하고 브랜치를 입력합니다. 브랜치 필드는 기본적으로 프로젝트의 기본 브랜치로 설정됩니다.
새 브랜치 이름을 입력하면 Start a new merge request with these changes 체크박스가 나타납니다. 이를 선택하면 변경 사항을 커밋한 후 새 머지 리퀘스트가 시작됩니다.

에디터 접근성 옵션#
파이프라인 에디터는 Monaco Editor를 기반으로 하며, 다음을 포함한 여러 접근성 기능을 제공합니다.
| 기능 | Windows 또는 Linux 단축키 | macOS 단축키 | 세부 정보 |
|---|---|---|---|
| 키보드 탐색 명령 목록 | F1 | F1 | 마우스 없이도 에디터를 더 쉽게 사용할 수 있게 해주는 명령 목록입니다. |
| 탭 트래핑 | Control+m | Control+Shift+m | 탭 문자를 삽입하는 대신 페이지의 다음 포커스 가능한 요소로 이동하도록 탭 트래핑을 활성화합니다. |
문제 해결#
Unable to validate CI/CD configuration. 메시지#
이 메시지는 파이프라인 에디터에서 문법을 검증하는 중 발생하는 문제로 인해 표시됩니다. GitLab이 문법을 검증하는 서비스와 통신할 수 없을 때 발생할 수 있습니다.
다음 섹션의 정보가 올바르게 표시되지 않을 수 있습니다.
- Edit 탭의 문법 상태(유효 또는 무효).
- Visualize 탭.
- Lint 탭.
- Full configuration 탭.
이 경우에도 문제없이 CI/CD 구성 작업을 계속하고 변경 사항을 커밋할 수 있습니다. 서비스가 다시 사용 가능해지면 문법 검증이 즉시 표시됩니다.