파이프라인 편집기
Offering: 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 push 이벤트로 인한 파이프라인 생성을 시뮬레이션하고 잘못된 rules 및 needs 잡 의존성을 포함한 논리 문제 해결에 도움이 됩니다:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Build > Pipeline editor를 선택합니다.
- Validate 탭을 선택합니다.
- 선택 사항. Pipeline run source 드롭다운 목록을 사용하여 시뮬레이션된 push 이벤트에 사용할 다른 브랜치를 선택합니다.
- Validate pipeline을 선택합니다.
시뮬레이션된 파이프라인은 Edit 탭의 기존 파이프라인 구성을 사용합니다.
Edit 탭에 추가하지 않고 CI/CD YAML 스니펫을 유효성 검사하려면 대신 CI Lint 도구를 사용합니다.
포함된 CI/CD 구성 보기#
히스토리
- GitLab 15.0에서
pipeline_editor_file_tree라는 플래그와 함께 도입. 기본적으로 비활성화됨. - GitLab 15.1에서 Feature flag 제거.
파이프라인 편집기에서 include 키워드로 추가된 구성을 검토할 수 있습니다. 오른쪽 상단 모서리에서 파일 트리([file-tree])를 선택하면 포함된 모든 구성 파일 목록이 표시됩니다. 선택한 파일은 검토를 위해 새 탭에서 열립니다.
CI 구성 시각화#
.gitlab-ci.yml 구성의 시각화를 보려면 프로젝트에서 Build > Pipeline editor로 이동한 다음 Visualize 탭을 선택합니다. 시각화는 모든 스테이지와 잡을 보여줍니다. needs 관계는 잡을 연결하는 선으로 표시되어 실행 계층 구조를 보여줍니다.
잡 위에 마우스를 올리면 needs 관계가 강조 표시됩니다:

구성에 needs 관계가 없으면 각 잡이 이전 스테이지가 성공적으로 완료되는 것에만 의존하기 때문에 선이 그려지지 않습니다.
전체 구성 보기#
히스토리
- GitLab 16.0에서 View merged YAML 탭이 Full configuration으로 이름 변경.
하나의 결합된 파일로 완전히 확장된 CI/CD 구성을 보려면 파이프라인 편집기의 Full configuration 탭으로 이동합니다. 이 탭에는 다음과 같이 확장된 구성이 표시됩니다:
include로 가져온 구성이 보기에 복사됩니다.extends를 사용하는 잡은 잡에 병합된 확장 구성과 함께 표시됩니다.- YAML 앵커는 연결된 구성으로 교체됩니다.
- YAML
!reference태그도 연결된 구성으로 교체됩니다. - 조건부 규칙은 기본 브랜치 push 이벤트를 가정하여 평가됩니다.
!reference 태그를 사용하면 확장된 보기에서 줄의 시작 부분에 여러 하이픈(-)이 있는 중첩된 구성이 표시될 수 있습니다. 이 동작은 예상된 것이며 추가 하이픈은 잡의 실행에 영향을 미치지 않습니다. 예를 들어 이 구성과 완전히 확장된 버전은 모두 유효합니다:
-
.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 # <- 추가 하이픈은 잡의 실행에 영향을 미치지 않습니다. - pyflakes python/ rules: - - if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^feature/" # <- 추가 하이픈은 잡의 실행에 영향을 미치지 않습니다. when: manual allow_failure: true - if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME" # <- 추가 하이픈 없음, 이전 규칙과 정렬됨 - - if: $CI_COMMIT_BRANCH == "main" # <- 추가 하이픈은 잡의 실행에 영향을 미치지 않습니다. when: manual allow_failure: true
CI 구성에 변경 사항 커밋#
편집기의 각 탭 하단에 커밋 폼이 표시되어 언제든지 변경 사항을 커밋할 수 있습니다.
변경 사항에 만족하면 설명적인 커밋 메시지를 추가하고 브랜치를 입력합니다. 브랜치 필드는 기본적으로 프로젝트의 기본 브랜치로 설정됩니다.
새 브랜치 이름을 입력하면 Start a new merge request with these changes 체크박스가 표시됩니다. 변경 사항을 커밋한 후 새 머지 리퀘스트를 시작하려면 이 항목을 선택합니다.

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