플랜 제한 API
GitLab v19.5Tier: Free, Premium, Ultimate
Offering: GitLab Self-Managed, GitLab Dedicated
Offering: GitLab Self-Managed, GitLab Dedicated
요약
이 API를 사용해 현재 구독 플랜의 애플리케이션 한도를 다룹니다. 사용 가능한 플랜은 GitLab 에디션에 따라 다릅니다. GitLab 인스턴스에서 플랜의 현재 한도를 조회합니다. GitLab 인스턴스에서 플랜의 한도를 업데이트합니다.
이 API를 사용해 현재 구독 플랜의 애플리케이션 한도를 다룹니다.
사용 가능한 플랜은 GitLab 에디션에 따라 다릅니다. Community Edition에서는 default 플랜만
사용할 수 있습니다. Enterprise Edition에서는 추가 플랜도 사용할 수 있습니다.
사전 요구 사항:
- 인스턴스의 관리자 액세스 권한이 있어야 합니다.
현재 플랜 제한 조회#
GitLab 인스턴스에서 플랜의 현재 한도를 조회합니다.
GET /application/plan_limits
| 속성 | 타입 | 필수 | 설명 |
|---|---|---|---|
plan_name |
string | 아니요 | 한도를 조회할 플랜의 이름입니다. 기본값: default. |
curl --request GET \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/application/plan_limits"
응답 예시:
{
"ci_instance_level_variables": 25,
"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,
"dotenv_size": 5120,
"dotenv_variables": 20,
"cargo_max_file_size": 5368709120,
"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,
"max_pipelines_per_merge_train": 20,
"pipeline_hierarchy_size": 1000,
"pypi_max_file_size": 3221225472,
"service_desk_outbound_emails_per_hour": 0,
"service_desk_outbound_emails_per_day": 0,
"terraform_module_max_file_size": 1073741824,
"storage_size_limit": 15000
}
플랜 제한 업데이트#
GitLab 인스턴스에서 플랜의 한도를 업데이트합니다.
PUT /application/plan_limits
| 속성 | 타입 | 필수 | 설명 |
|---|---|---|---|
plan_name |
string | 예 | 업데이트할 플랜의 이름입니다. |
ci_instance_level_variables |
integer | 아니요 | 정의할 수 있는 인스턴스 수준 CI/CD 변수의 최대 개수입니다. |
ci_pipeline_size |
integer | 아니요 | 단일 파이프라인의 최대 job 개수입니다. |
ci_active_jobs |
integer | 아니요 | 현재 활성 파이프라인의 전체 job 개수입니다. |
ci_project_subscriptions |
integer | 아니요 | 프로젝트를 대상으로 하거나 프로젝트에서 시작하는 파이프라인 구독의 최대 개수입니다. |
ci_pipeline_schedules |
integer | 아니요 | 파이프라인 스케줄의 최대 개수입니다. |
ci_needs_size_limit |
integer | 아니요 | 하나의 job 이 가질 수 있는 needs 의존성의 최대 개수입니다. |
ci_registered_group_runners |
integer | 아니요 | 최근 7일 동안 그룹에서 생성되었거나 활성 상태였던 러너의 최대 개수입니다. |
ci_registered_project_runners |
integer | 아니요 | 최근 7일 동안 프로젝트에서 생성되었거나 활성 상태였던 러너의 최대 개수입니다. |
dotenv_size |
integer | 아니요 | dotenv 아티팩트의 최대 크기(바이트)입니다. GitLab 17.1에 도입되었습니다. |
dotenv_variables |
integer | 아니요 | dotenv 아티팩트의 최대 변수 개수입니다. GitLab 17.1에 도입되었습니다. |
cargo_max_file_size |
integer | 아니요 | Cargo 패키지 파일의 최대 크기(바이트)입니다. GitLab 19.3에 도입되었습니다. |
conan_max_file_size |
integer | 아니요 | Conan 패키지 파일의 최대 크기(바이트)입니다. |
enforcement_limit |
integer | 아니요 | 루트 네임스페이스 한도 적용에 사용되는 최대 스토리지 크기(MiB)입니다. |
generic_packages_max_file_size |
integer | 아니요 | 제네릭 패키지 파일의 최대 크기(바이트)입니다. |
helm_max_file_size |
integer | 아니요 | Helm 차트 파일의 최대 크기(바이트)입니다. |
maven_max_file_size |
integer | 아니요 | Maven 패키지 파일의 최대 크기(바이트)입니다. |
notification_limit |
integer | 아니요 | 루트 네임스페이스 한도 알림에 사용되는 최대 스토리지 크기(MiB)입니다. |
npm_max_file_size |
integer | 아니요 | NPM 패키지 파일의 최대 크기(바이트)입니다. |
nuget_max_file_size |
integer | 아니요 | NuGet 패키지 파일의 최대 크기(바이트)입니다. |
max_pipelines_per_merge_train |
integer | 아니요 | 머지 트레인당 병렬 파이프라인의 최대 개수입니다. 기본값: 20. 최솟값: 1. GitLab 19.0에 도입되었습니다. |
pipeline_hierarchy_size |
integer | 아니요 | 파이프라인 계층 트리에서 다운스트림 파이프라인의 최대 개수입니다. 기본값: 1000. 1000보다 큰 값은 권장하지 않습니다. |
pypi_max_file_size |
integer | 아니요 | PyPI 패키지 파일의 최대 크기(바이트)입니다. |
service_desk_outbound_emails_per_hour |
integer | 아니요 | 최상위 네임스페이스당 시간별 Service Desk 발신 이메일의 최대 개수입니다. 0은 무제한입니다. GitLab 19.4에 도입되었습니다. |
service_desk_outbound_emails_per_day |
integer | 아니요 | 최상위 네임스페이스당 일별 Service Desk 발신 이메일의 최대 개수입니다. 0은 무제한입니다. GitLab 19.4에 도입되었습니다. |
terraform_module_max_file_size |
integer | 아니요 | Terraform Module 패키지 파일의 최대 크기(바이트)입니다. |
storage_size_limit |
integer | 아니요 | 루트 네임스페이스의 최대 스토리지 크기(MiB)입니다. |
web_hook_calls |
integer | 아니요 | 최상위 네임스페이스당 분별 웹훅 호출의 최대 횟수입니다. GitLab 18.5에 도입되었습니다. |
curl --request PUT \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/application/plan_limits?plan_name=default&conan_max_file_size=3221225472"
응답 예시:
{
"ci_instance_level_variables": 25,
"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,
"cargo_max_file_size": 5368709120,
"conan_max_file_size": 3221225472,
"dotenv_variables": 20,
"dotenv_size": 5120,
"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,
"max_pipelines_per_merge_train": 20,
"pipeline_hierarchy_size": 1000,
"pypi_max_file_size": 3221225472,
"service_desk_outbound_emails_per_hour": 0,
"service_desk_outbound_emails_per_day": 0,
"terraform_module_max_file_size": 1073741824
}