- Auto DevOps
- 새 프로젝트에 대한 인스턴스 러너 활성화
- 러너 등록 토큰 활성화
- 인스턴스 러너 계산 할당량
- 여러 프로젝트에 대한 프로젝트 러너 활성화
- 인스턴스 러너에 메시지 추가
- 최대 아티팩트 크기
- 기본 아티팩트 만료
- 최근 성공적인 파이프라인의 모든 작업에 대해 최신 아티팩트 유지
- 아카이브 작업
- 기본적으로 CI/CD 변수를 보호
- 최대 포함 수
- 최대 다운스트림 파이프라인 트리거 비율
- 기본 CI/CD 구성 파일
- CI/CD 한도 설정
- 파이프라인 제안 배너 활성화 또는 비활성화
- 작업 아티팩트에 대한 외부 리디렉션 페이지 활성화 또는 비활성화
- 필수 파이프라인 구성
- 패키지 레지스트리 구성
- 인스턴스의 모든 사용자에 대한 러너 등록 제한
- 그룹 내 모든 구성원의 러너 등록 제한
- 러너 버전 관리 비활성화
- 문제 해결
지속적인 통합 및 배포 관리 영역 설정
관리자 영역에는 Auto DevOps, 러너 및 작업 아티팩트에 대한 인스턴스 설정이 포함되어 있습니다.
Auto DevOps
모든 프로젝트에 대해 Auto DevOps를 활성화(또는 비활성화)하려면:
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 모든 프로젝트에 대해 Auto DevOps 파이프라인 기본값 설정이라는 상자를 체크(또는 비활성화를 위해 체크 해제)합니다.
- 선택적으로 Auto Deploy 및 Auto Review Apps에 사용되는 Auto DevOps 기본 도메인을 설정합니다.
- 변경 사항을 적용하기 위해 변경 사항 저장을 선택합니다.
이제부터는 기존 프로젝트와 .gitlab-ci.yml
이 없는 새로 생성된 프로젝트에 Auto DevOps 파이프라인이 사용됩니다.
특정 프로젝트에 대해 비활성화하려면 설정에서 할 수 있습니다.
새 프로젝트에 대한 인스턴스 러너 활성화
모든 새 프로젝트에서 기본적으로 인스턴스 러너를 사용할 수 있도록 설정할 수 있습니다.
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 지속적인 통합 및 배포를 확장합니다.
- 새 프로젝트에 대한 인스턴스 러너 활성화 체크박스를 선택합니다.
새 프로젝트가 생성될 때마다 인스턴스 러너가 사용 가능합니다.
러너 등록 토큰 활성화
- 도입됨 GitLab 16.11
경고:
러너 등록 토큰을 전달하는 기능과 특정 구성 인수에 대한 지원은 GitLab 15.6에서 사용 중단되었으며, GitLab 18.0에서 제거될 예정입니다. 대신 러너 인증 토큰을 사용해야 합니다. 자세한 내용은 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.
GitLab 17.0에서 러너 등록 토큰을 사용하여 러너를 생성하는 것은 모든 GitLab 인스턴스에서 비활성화됩니다. 사용자는 대신 러너 인증 토큰을 사용해야 합니다. 아직 러너 인증 토큰을 사용할 수 있도록 마이그레이션하지 않았다면, 러너 등록 토큰을 활성화할 수 있습니다. 이 설정과 러너 등록 토큰에 대한 지원은 GitLab 18.0에서 제거됩니다.
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 러너를 확장합니다.
- 러너 등록 토큰 허용 체크박스를 선택합니다.
인스턴스 러너 계산 할당량
관리자는 사용할 수 있는 계산 시간에 대해 전역 또는 네임스페이스 특정 제한을 설정할 수 있습니다.
여러 프로젝트에 대한 프로젝트 러너 활성화
이미 프로젝트 러너를 등록했다면 해당 러너를 다른 프로젝트에 할당할 수 있습니다.
하나 이상의 프로젝트에 대해 프로젝트 러너를 활성화하려면:
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 왼쪽 사이드바에서 CI/CD > 러너를 선택합니다.
- 편집할 러너를 선택합니다.
- 오른쪽 상단에서 편집({연필})을 선택합니다.
- 이 러너에 대한 프로젝트 제한 아래에서 프로젝트를 검색합니다.
- 프로젝트의 왼쪽에 있는 활성화를 선택합니다.
- 추가 프로젝트마다 이 과정을 반복합니다.
인스턴스 러너에 메시지 추가
모든 프로젝트의 러너 설정에서 인스턴스 러너에 대한 세부 정보를 표시하려면:
-
왼쪽 사이드바에서 하단에 있는 Admin을 선택하세요.
-
Settings > CI/CD를 선택하세요.
-
Continuous Integration and Deployment를 확장하세요.
-
Instance runner details 필드에 텍스트를 입력하세요. Markdown을 포함할 수 있습니다.
렌더링된 세부 정보를 보려면:
-
왼쪽 사이드바에서 Search or go to를 선택하고 프로젝트 또는 그룹을 찾으세요.
-
Settings > CI/CD를 선택하세요.
-
Runners를 확장하세요.
최대 아티팩트 크기
관리자는 다음의 job artifacts의 최대 크기를 설정할 수 있습니다:
- 전체 인스턴스
- 각 프로젝트
- 각 그룹
GitLab.com의 설정에 대한 내용은 Artifacts maximum size를 참조하세요.
값은 MB로, 기본 값은 작업당 100 MB입니다. 관리자가 기본 값을 변경할 수 있습니다:
-
인스턴스:
-
왼쪽 사이드바에서 하단에 있는 Admin을 선택하세요.
-
왼쪽 사이드바에서 Settings > CI/CD > Continuous Integration and Deployment를 선택하세요.
-
Maximum artifacts size (MB)의 값을 변경하세요.
-
변경 사항이 적용되도록 Save changes를 선택하세요.
-
-
그룹(이 설정은 인스턴스 설정을 재정의합니다):
-
그룹의 Settings > CI/CD > General Pipelines로 이동하세요.
-
Maximum artifacts size(MB 단위)의 값을 변경하세요.
-
변경 사항이 적용되도록 Save changes를 선택하세요.
-
-
프로젝트(이 설정은 인스턴스와 그룹 설정을 재정의합니다):
-
프로젝트의 Settings > CI/CD > General Pipelines로 이동하세요.
-
Maximum artifacts size(MB 단위)의 값을 변경하세요.
-
변경 사항이 적용되도록 Save changes를 선택하세요.
-
기본 아티팩트 만료
job artifacts의 기본 만료 시간을 GitLab 인스턴스의 Admin 영역에서 설정할 수 있습니다. 기간의 문법은 artifacts:expire_in
에 설명되어 있으며 기본값은 30 days
입니다.
-
왼쪽 사이드바에서 하단에 있는 Admin을 선택하세요.
-
Settings > CI/CD를 선택하세요.
-
기본 만료 시간의 값을 변경하세요.
-
변경 사항이 적용되도록 Save changes를 선택하세요.
이 설정은 작업별로 설정되며 .gitlab-ci.yml
에서 재정의될 수 있습니다.
만료를 비활성화하려면 0
으로 설정하세요. 기본 단위는 초입니다.
관리자는 이전에 생성된 아티팩트를 수동으로 검색하여 만료시켜야 할 수도 있습니다. 이는 문제 해결 문서에 설명되어 있습니다.
최근 성공적인 파이프라인의 모든 작업에 대해 최신 아티팩트 유지
기본적으로 활성화되면, 각 Git ref(branches and tags)의 가장 최근 파이프라인 아티팩트가 삭제를 방지하고 만료 시간과 관계없이 유지됩니다.
비활성화하면, 새로운 성공적인 또는 수정된 파이프라인에 대한 최신 아티팩트가 만료될 수 있습니다.
이 설정은 프로젝트 설정보다 우선합니다. 전체 인스턴스에서 비활성화되면 개별 프로젝트에서 활성화할 수 없습니다.
설정을 비활성화하려면:
-
왼쪽 사이드바에서 하단에 있는 Admin을 선택하세요.
-
Settings > CI/CD를 선택하세요.
-
Continuous Integration and Deployment를 확장하세요.
-
Keep the latest artifacts for all jobs in the latest successful pipelines 체크박스를 선택 해제하세요.
-
변경 사항이 적용되도록 Save changes를 선택하세요.
기능을 비활성화하면 최신 아티팩트는 즉시 만료되지 않습니다.
새로운 파이프라인이 실행되어야 최신 아티팩트가 만료되고 삭제될 수 있습니다.
아카이브 작업
개별적으로 다시 실행되는 것을 방지하기 위해 오래된 작업을 아카이브할 수 있습니다. 아카이브된 작업은 작업 로그 상단에 자물쇠 아이콘()과 이 작업은 아카이브되었습니다라는 메시지를 표시합니다.
작업이 오래되고 만료된 것으로 간주되는 기간을 설정하려면:
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 지속적 통합 및 배포 섹션을 확장합니다.
- 아카이브 작업의 값을 설정합니다.
- 변경 사항을 저장하려면 변경 사항 저장을 선택합니다.
그 시간이 지나면 작업이 백그라운드에서 아카이브되고 더 이상 재시도할 수 없습니다. 작업이 만료되지 않도록 비워두면 됩니다. 최소 1일 이상이어야 하며, 예를 들어: 15일
, 1개월
, 2년
과 같이 설정해야 합니다.
GitLab.com에 대해 설정된 값은 Scheduled job archiving을 참조하세요.
기본적으로 CI/CD 변수를 보호
모든 새로운 CI/CD 변수를 기본적으로 보호된 상태로 설정하려면:
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- CI/CD 변수를 기본적으로 보호를 선택합니다.
최대 포함 수
- GitLab 16.0에서 도입됨.
파이프라인당 최대 포함 수를 전체 인스턴스에 대해 설정할 수 있습니다. 기본값은 150
입니다.
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 최대 포함 수의 값을 변경합니다.
- 변경 사항을 저장하려면 변경 사항 저장을 선택합니다.
최대 다운스트림 파이프라인 트리거 비율
- GitLab 16.10에서 도입됨.
주어진 프로젝트, 사용자 및 커밋에 대해 분당 트리거할 수 있는 최대 다운스트림 파이프라인 수를 전체 인스턴스에 대해 설정할 수 있습니다. 기본값은 0
(제한 없음)입니다.
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 최대 다운스트림 파이프라인 트리거 비율의 값을 변경합니다.
- 변경 사항을 저장하려면 변경 사항 저장을 선택합니다.
기본 CI/CD 구성 파일
새 프로젝트에 대한 기본 CI/CD 구성 파일 및 경로는 GitLab 인스턴스의 관리자 영역에서 설정할 수 있습니다(.gitlab-ci.yml
이 설정되지 않은 경우):
- 왼쪽 사이드바에서 하단의 관리자를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 기본 CI/CD 구성 파일 필드에 새 파일과 경로를 입력합니다.
- 변경 사항을 저장하려면 변경 사항 저장을 선택합니다.
특정 프로젝트에 대한 사용자 지정 CI/CD 구성 파일을 지정할 수도 있습니다.
CI/CD 한도 설정
- GitLab 16.0에서 프로젝트당 활성 파이프라인의 최대 수 설정 삭제됨.
Admin 영역에서 일부 CI/CD 한도를 구성할 수 있습니다:
- 왼쪽 사이드바 하단에서 Admin을 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 지속적 통합 및 배포 섹션을 확장합니다.
-
CI/CD 한도 섹션에서 다음 한도를 설정할 수 있습니다:
- 단일 파이프라인 내 최대 작업 수
- 현재 활성 파이프라인의 총 작업 수
- 프로젝트와의 파이프라인 구독의 최대 수
- 파이프라인 스케줄의 최대 수
- 작업이 가질 수 있는 최대 needs 의존성 수
- 그룹당 등록된 러너의 최대 수
- 프로젝트당 등록된 러너의 최대 수
- 파이프라인의 계층 트리 내 다운스트림 파이프라인의 최대 수
파이프라인 제안 배너 활성화 또는 비활성화
기본적으로 파이프라인이 없는 병합 요청에 배너가 표시되어 파이프라인을 추가하는 방법을 안내합니다.
배너를 활성화 또는 비활성화하려면:
- 왼쪽 사이드바 하단에서 Admin을 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 파이프라인 제안 배너 활성화 체크박스를 선택하거나 선택 해제합니다.
- 변경 사항 저장을 선택합니다.
작업 아티팩트에 대한 외부 리디렉션 페이지 활성화 또는 비활성화
기본적으로 GitLab Pages는 사용자가 GitLab Pages에서 제공하는 작업 아티팩트를 보려고 할 때 외부 리디렉션 페이지를 표시합니다. 이 페이지는 문제 352611에서 설명한 대로 악의적인 사용자 생성 콘텐츠의 잠재력에 대해 경고합니다.
자체 관리형 관리자는 외부 리디렉션 경고 페이지를 비활성화할 수 있으므로 직접 작업 아티팩트 페이지를 볼 수 있습니다:
- 왼쪽 사이드바 하단에서 Admin을 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 지속적 통합 및 배포를 확장합니다.
- 작업 아티팩트에 대한 외부 리디렉션 페이지 활성화를 선택 해제합니다.
필수 파이프라인 구성
Offering: Self-managed
경고:
이 기능은 GitLab 15.9에서 사용 중단되었으며 17.0에서 삭제되었습니다. 17.4부터는 기능 플래그 required_pipelines
뒤에서만 사용 가능하며 기본적으로 비활성화되어 있습니다. 대신 준수 파이프라인을 사용하세요. 이 변경 사항은 파괴적인 변경입니다.
모든 프로젝트에 대한 필수 파이프라인 구성으로 CI/CD 템플릿을 설정할 수 있습니다. 다음의 템플릿을 사용할 수 있습니다:
- 기본 CI/CD 템플릿.
-
인스턴스 템플릿 리포지토리에 저장된 사용자 지정 템플릿.
참고: 인스턴스 템플릿 리포지토리에 정의된 구성을 사용할 때 중첩된
include:
키워드 (포함하여include:file
,include:local
,include:remote
,include:template
)는 작동하지 않습니다.
프로젝트의 CI/CD 구성은 파이프라인이 실행될 때 필수 파이프라인 구성에 병합됩니다.
병합된 구성은 필수 파이프라인 구성이
include
키워드를 사용하여 프로젝트 구성을 추가한 것과 동일합니다.
프로젝트의 전체 병합 구성을 보려면, 파이프라인 편집기에서 전체 구성 보기를 사용하세요.
필수 파이프라인 구성에 대한 CI/CD 템플릿을 선택하려면:
- 왼쪽 사이드바 하단에서 Admin Area를 선택합니다.
- 설정 > CI/CD를 선택합니다.
- 필수 파이프라인 구성 섹션을 확장합니다.
- 드롭다운 목록에서 CI/CD 템플릿을 선택합니다.
- 변경 사항 저장을 선택합니다.
패키지 레지스트리 구성
Maven 포워딩
Offering: Self-managed
GitLab 관리자는 Maven 요청을 Maven Central로 전달하지 않도록 설정할 수 있습니다.
Maven 요청 전송을 비활성화하려면:
-
왼쪽 사이드바에서 하단의 Admin를 선택합니다.
-
Settings > CI/CD를 선택합니다.
-
Package Registry 섹션을 확장합니다.
-
GitLab Package Registry에서 패키지를 찾을 수 없는 경우 Maven 레지스트리로 Maven 패키지 요청 포워딩 체크박스를 해제합니다.
-
Changes 저장을 선택합니다.
npm 포워딩
Offering: Self-managed
GitLab 관리자는 npm 요청을 npmjs.com로 전달하지 않도록 설정할 수 있습니다.
비활성화하려면:
-
왼쪽 사이드바에서 하단의 Admin를 선택합니다.
-
Settings > CI/CD를 선택합니다.
-
Package Registry 섹션을 확장합니다.
-
GitLab Package Registry에서 패키지를 찾을 수 없는 경우 npm 레지스트리로 npm 패키지 요청 포워딩 체크박스를 해제합니다.
-
Changes 저장을 선택합니다.
PyPI 포워딩
Offering: Self-managed
GitLab 관리자는 PyPI 요청을 pypi.org로 전달하지 않도록 설정할 수 있습니다.
비활성화하려면:
-
왼쪽 사이드바에서 하단의 Admin를 선택합니다.
-
Settings > CI/CD를 선택합니다.
-
Package Registry 섹션을 확장합니다.
-
GitLab Package Registry에서 패키지를 찾을 수 없는 경우 PyPI 레지스트리로 PyPI 패키지 요청 포워딩 체크박스를 해제합니다.
-
Changes 저장을 선택합니다.
패키지 파일 크기 제한
GitLab 관리자는 각 패키지 유형에 대해 최대 허용 파일 크기를 조정할 수 있습니다.
최대 파일 크기를 설정하려면:
-
왼쪽 사이드바에서 하단의 Admin를 선택합니다.
-
Settings > CI/CD를 선택합니다.
-
Package Registry 섹션을 확장합니다.
-
조정하고자 하는 패키지 유형을 찾습니다.
-
최대 파일 크기를 바이트 단위로 입력합니다.
-
크기 제한 저장을 선택합니다.
인스턴스의 모든 사용자에 대한 러너 등록 제한
- GitLab 15.5에서 GitLab.com 및 셀프 관리형에서 사용 가능.
GitLab 관리자는 UI의 영역을 표시하거나 숨김으로써 러너 등록을 허용할 사용자를 조정할 수 있습니다.
이 설정은 UI에서 러너를 생성하거나 인증된 API 호출을 통해 생성하는 기능에 영향을 주지 않습니다.
UI에서 등록 섹션이 숨겨지면 프로젝트 또는 그룹의 구성원은 관리자에게 연락하여 그룹이나 프로젝트에서 러너 등록을 활성화해야 합니다. 등록을 방지할 계획이라면 사용자가 작업을 실행하는 데 필요한 러너에 접근할 수 있는지 확인하세요.
기본적으로 프로젝트와 그룹의 모든 구성원이 러너를 등록할 수 있습니다.
인스턴스의 모든 사용자가 러너를 등록하지 못하도록 제한하려면:
-
왼쪽 사이드바에서 하단의 Admin를 선택합니다.
-
Settings > CI/CD를 선택합니다.
-
Runners를 확장합니다.
-
러너 등록 섹션에서 프로젝트의 구성원이 러너를 등록할 수 있음 및
그룹의 구성원이 러너를 등록할 수 있음 체크박스를 해제하여 UI에서 러너 등록을 제거합니다.
-
Changes 저장을 선택합니다.
토큰은 더 이상 유효하지 않으며 프로젝트에 대한 새로운 등록 토큰을 사용해야 합니다.
그룹 내 모든 구성원의 러너 등록 제한
전제 조건:
- 러너 등록은 인스턴스의 모든 사용자에 대해 활성화되어야 합니다.
GitLab 관리자는 그룹 구성원의 러너 등록을 제한하기 위해 그룹 권한을 조정할 수 있습니다.
특정 그룹 내 구성원의 러너 등록을 제한하려면:
-
왼쪽 사이드바 하단에서 Admin을 선택합니다.
-
개요 > 그룹을 선택하고 귀하의 그룹을 찾습니다.
-
편집을 선택합니다.
-
그룹의 모든 구성원이 러너 등록을 비활성화하려면 새 그룹 러너 등록 가능 체크박스를 해제합니다. 설정이 읽기 전용인 경우, 인스턴스에서 러너 등록을 활성화해야 합니다.
-
변경사항 저장을 선택합니다.
러너 버전 관리 비활성화
- GitLab 15.10에서 도입됨.
기본적으로, GitLab 인스턴스는 주기적으로 GitLab.com에서 공식 러너 버전 데이터를 가져와 러너가 업그레이드가 필요한지 판단합니다.
이 데이터 가져오기를 비활성화하려면:
-
왼쪽 사이드바 하단에서 Admin을 선택합니다.
-
설정 > CI/CD를 선택합니다.
-
러너를 확장합니다.
-
러너 버전 관리 섹션에서 GitLab.com에서 GitLab 러너 릴리즈 버전 데이터 가져오기 체크박스를 해제합니다.
-
변경사항 저장을 선택합니다.
문제 해결
413 Request Entity Too Large
오류
아티팩트의 크기가 너무 큰 경우, 작업이 다음 오류와 함께 실패할 수 있습니다:
업로드 아티팩트를 "archive"로 코디네이터에... 너무 큰 아카이브 <job-id> responseStatus=413 Request Entity Too Large status=413" 파이프라인에서 아티팩트를 <object-storage>에 저장하려고 할 때 빌드 작업의 끝에서.
다음과 같이 해야 할 수 있습니다:
-
최대 아티팩트 크기를 늘립니다.
-
NGINX를 프록시 서버로 사용하는 경우, 기본적으로 1MB로 제한된 파일 업로드 크기 제한을 늘립니다.
NGINX 구성 파일의
client-max-body-size
에 대해 더 큰 값을 설정합니다.