예약된 파이프라인
일정된 간격으로 GitLab CI/CD 파이프라인을 실행하는 예약된 파이프라인을 사용합니다.
전제 조건
예약된 파이프라인이 실행되려면:
- 일정 소유자는 개발자 역할을 가져야 합니다. 보호된 브랜치의 파이프라인의 경우, 일정 소유자는 브랜치에 Merge할 수 있는 권한 이어야 합니다.
-
.gitlab-ci.yml
파일은 유효한 구문을 가져야 합니다.
그렇지 않으면 파이프라인이 생성되지 않습니다. 오류 메시지가 표시되지 않습니다.
파이프라인 스케줄 추가
파이프라인 스케줄을 추가하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 빌드 > 파이프라인 스케줄을 선택합니다.
-
새 일정 추가를 선택하고 양식을 작성합니다.
- 간격 패턴: 사전 구성된 간격 중 하나를 선택하거나, cron 표기법으로 사용자 정의 간격을 입력합니다. 모든 cron 값을 사용할 수 있지만, 예약된 파이프라인은 인스턴스의 최대 예약 파이프라인 빈도 보다 더 자주 실행될 수 없습니다.
- 대상 브랜치 또는 태그: 파이프라인의 브랜치 또는 태그를 선택합니다.
- 변수: 일정된 파이프라인이 실행될 때만 CI/CD 변수를 추가합니다. 이러한 변수는 예약된 파이프라인 실행 중에만 사용되며, 다른 파이프라인 실행 중에는 사용되지 않습니다.
프로젝트의 최대 파이프라인 스케줄 수 이미 있는 경우, 다른 일정을 추가하기 전에 사용되지 않는 일정을 삭제해야 합니다.
파이프라인 스케줄 수정
파이프라인 스케줄 소유자는 해당 일정을 편집할 수 있습니다:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 빌드 > 파이프라인 스케줄을 선택합니다.
- 일정 옆에서 편집 ()을 선택하고 양식을 작성합니다.
사용자는 프로젝트의 개발자 역할 이상을 가져야 합니다. 사용자가 일정의 소유자가 아닌 경우 먼저 일정의 소유권을 가져와야 합니다.
매뉴얼실행
파이프라인 스케줄을 수동으로 트리거하여 즉시 실행되도록하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 빌드 > 파이프라인 스케줄을 선택합니다.
- 디렉터리에서 실행하려는 파이프라인에 대해 오른쪽에서 실행 ()을 선택합니다.
일정된 파이프라인은 1분당 한 번 매뉴얼으로 실행할 수 있습니다.
파이프라인이 매뉴얼으로 실행될 때, 파이프라인은 일정을 트리거한 사용자의 권한으로 실행되며, 일정 소유자의 권한이 아닙니다.
소유권 가져오기
예약된 파이프라인은 일정 소유자의 권한으로 실행됩니다. 파이프라인은 일정 소유자와 같은 리소스에 액세스할 수 있습니다. (include::../environments/protected_environments.md[])와 (include::../jobs/ci_job_token.md[])을 포함합니다.
다른 사용자가 생성한 파이프라인의 소유를 가져오려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 빌드 > 파이프라인 스케줄을 선택합니다.
- 디렉터리에서 소유권을 가져 오려는 파이프라인에 대해 오른쪽에서 소유권 가져오기를 선택합니다.
다른 사용자가 생성한 파이프라인의 소유를 가져오려면 적어도 관리자 역할이 필요합니다.
관련 주제
Troubleshooting
짧은 참조는 완전한 참조로 확장됩니다
이 동작은 명시적인 리소스를 강제하기 위해 도입되었으며 정상적인 동작입니다.
API는 여전히 짧은
(예: main
) 및 완전한
(예: refs/heads/main
또는 refs/tags/main
) 참조를 모두 허용하며 제공된 짧은
참조를 확장합니다.
모호한 참조
참조가 확장될 때, 완전한 참조가 자동으로 유추되지 않을 수 있습니다. 이러한 경우는 다음과 같습니다:
-
짧은
참조가 제공되지만 제공된짧은
참조 이름으로 브랜치와 태그가 둘 다 존재하는 경우 -
짧은
참조가 제공되지만 제공된짧은
참조 이름으로 브랜치 또는 태그가 둘 다 존재하지 않는 경우