Plan limits API

Tier: Free, Premium, Ultimate Offering: Self-Managed

Plan limits API는 기존 구독 플랜의 응용 프로그램 제한을 유지할 수 있도록 합니다.

기존 플랜은 GitLab Edition에 따라 다릅니다. Community Edition에서는 default 플랜만 사용할 수 있습니다. Enterprise Edition에서는 추가 플랜을 사용할 수 있습니다.

관리자 액세스가 필요합니다.

현재 플랜 제한사항 가져오기

GitLab 인스턴스에서 플랜의 현재 제한사항을 나열합니다.

GET /application/plan_limits
속성 유형 필요 여부 설명
plan_name string no 제한사항을 가져올 플랜의 이름. 기본값: default.
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/application/plan_limits"

응답 예시:

{
  "ci_pipeline_size": 0,
  "ci_active_jobs": 0,
  "ci_project_subscriptions": 2,
  "ci_pipeline_schedules": 10,
  "ci_needs_size_limit": 50,
  "ci_registered_group_runners": 1000,
  "ci_registered_project_runners": 1000,
  "conan_max_file_size": 3221225472,
  "enforcement_limit": 10000,
  "generic_packages_max_file_size": 5368709120,
  "helm_max_file_size": 5242880,
  "notification_limit": 10000,
  "maven_max_file_size": 3221225472,
  "npm_max_file_size": 524288000,
  "nuget_max_file_size": 524288000,
  "pypi_max_file_size": 3221225472,
  "terraform_module_max_file_size": 1073741824,
  "storage_size_limit": 15000
}

플랜 제한사항 변경

GitLab 인스턴스에서 플랜의 제한사항을 수정합니다.

PUT /application/plan_limits
속성 유형 필요 여부 설명
plan_name string yes 업데이트할 플랜의 이름.
ci_pipeline_size integer no 단일 파이프라인에서의 작업 최대 수. GitLab 15.0에서 도입.
ci_active_jobs integer no 현재 활성 파이프라인의 전체 작업 수. GitLab 15.0에서 도입.
ci_project_subscriptions integer no 프로젝트 간 및 프로젝트로의 최대 파이프라인 구독 수. GitLab 15.0에서 도입.
ci_pipeline_schedules integer no 최대 파이프라인 스케줄 수. GitLab 15.0에서 도입.
ci_needs_size_limit integer no 작업이 가질 수 있는 최대 DAG 의존성 수. GitLab 15.0에서 도입.
ci_registered_group_runners integer no 그룹 당 등록된 최대 러너 수. GitLab 15.0에서 도입.
ci_registered_project_runners integer no 프로젝트 당 등록된 최대 러너 수. GitLab 15.0에서 도입.
conan_max_file_size integer no Conan 패키지 파일의 최대 파일 크기(바이트).
enforcement_limit integer no 루트 네임스페이스 제한 시행을 위한 최대 리포지터리 크기(MiB).
generic_packages_max_file_size integer no 일반 패키지 파일의 최대 파일 크기(바이트).
helm_max_file_size integer no Helm 차트 파일의 최대 파일 크기(바이트).
maven_max_file_size integer no Maven 패키지 파일의 최대 파일 크기(바이트).
notification_limit integer no 루트 네임스페이스 제한 알림을 위한 최대 리포지터리 크기(MiB).
npm_max_file_size integer no NPM 패키지 파일의 최대 파일 크기(바이트).
nuget_max_file_size integer no NuGet 패키지 파일의 최대 파일 크기(바이트).
pypi_max_file_size integer no PyPI 패키지 파일의 최대 파일 크기(바이트).
terraform_module_max_file_size integer no Terraform 모듈 패키지 파일의 최대 파일 크기(바이트).
storage_size_limit integer no 루트 네임스페이스의 최대 리포지터리 크기(MiB).
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/application/plan_limits?plan_name=default&conan_max_file_size=3221225472"

응답 예시:

{
  "ci_pipeline_size": 0,
  "ci_active_jobs": 0,
  "ci_project_subscriptions": 2,
  "ci_pipeline_schedules": 10,
  "ci_needs_size_limit": 50,
  "ci_registered_group_runners": 1000,
  "ci_registered_project_runners": 1000,
  "conan_max_file_size": 3221225472,
  "generic_packages_max_file_size": 5368709120,
  "helm_max_file_size": 5242880,
  "maven_max_file_size": 3221225472,
  "npm_max_file_size": 524288000,
  "nuget_max_file_size": 524288000,
  "pypi_max_file_size": 3221225472,
  "terraform_module_max_file_size": 1073741824
}