InfoGrab Docs

러너 컨트롤러 API

요약

이 기능의 사용 가능 여부는 기능 플래그로 제어됩니다. 러너 컨트롤러 API를 사용하면 CI/CD 작업 승인 제어를 위한 러너 컨트롤러를 관리할 수 있습니다. 성공하면 다음 응답 속성과 함께 200 OK를 반환합니다: ID로 특정 러너 컨트롤러의 세부 정보를 조회합니다.

Feature flag

이 기능의 사용 가능 여부는 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요. 이 기능은 테스트 목적으로 사용 가능하지만 프로덕션 환경에서 사용할 준비가 되지 않았습니다.

히스토리
  • GitLab 18.9에서 FF_USE_JOB_ROUTER 플래그와 함께 도입되었습니다. 이 기능은 실험 단계이며 GitLab 테스팅 계약이 적용됩니다.
  • GitLab 18.10에서 connected 필드가 추가되었습니다.

러너 컨트롤러 API를 사용하면 CI/CD 작업 승인 제어를 위한 러너 컨트롤러를 관리할 수 있습니다. 러너 컨트롤러는 작업 라우터에 연결하여 커스텀 정책에 따라 작업을 평가하고, 승인 또는 거부 여부를 결정합니다. 이 API는 러너 컨트롤러를 생성, 조회, 업데이트, 삭제하는 엔드포인트를 제공합니다.

전제 조건:

  • GitLab 인스턴스에 대한 관리자 액세스 권한이 있어야 합니다.

모든 러너 컨트롤러 목록 조회#

모든 러너 컨트롤러를 나열합니다.

GET /runner_controllers

응답:

성공하면 다음 응답 속성과 함께 200 OK를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request GET \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers"

응답 예시:

[
    {
        "id": 1,
        "description": "Runner controller",
        "state": "enabled",
        "created_at": "2026-01-01T00:00:00Z",
        "updated_at": "2026-01-02T00:00:00Z"
    },
    {
        "id": 2,
        "description": "Another runner controller",
        "state": "disabled",
        "created_at": "2026-01-03T00:00:00Z",
        "updated_at": "2026-01-04T00:00:00Z"
    }
]

단일 러너 컨트롤러 조회#

ID로 특정 러너 컨트롤러의 세부 정보를 조회합니다.

GET /runner_controllers/:id

응답:

성공하면 다음 응답 속성과 함께 200 OK를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
connected boolean 러너 컨트롤러가 현재 연결되어 있는지 여부입니다. 지난 한 시간 이내에 활성 토큰 중 하나를 사용한 경우 러너 컨트롤러는 연결된 것으로 간주됩니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request GET \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1"

응답 예시:

{
    "id": 1,
    "description": "Runner controller",
    "state": "enabled",
    "connected": true,
    "created_at": "2026-01-01T00:00:00Z",
    "updated_at": "2026-01-02T00:00:00Z"
}

러너 컨트롤러 등록#

새 러너 컨트롤러를 등록합니다.

POST /runner_controllers

지원되는 속성:

속성 유형 필수 여부 설명
description string 아니요 러너 컨트롤러에 대한 설명입니다.
state string 아니요 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.

응답:

성공하면 다음 응답 속성과 함께 201 Created를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request POST \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --header "Content-Type: application/json" \
     --data '{"description": "New runner controller", "state": "dry_run"}' \
     --url "https://gitlab.example.com/api/v4/runner_controllers"

응답 예시:

{
    "id": 3,
    "description": "New runner controller",
    "state": "dry_run",
    "created_at": "2026-01-05T00:00:00Z",
    "updated_at": "2026-01-05T00:00:00Z"
}

러너 컨트롤러 업데이트#

ID로 기존 러너 컨트롤러의 세부 정보를 업데이트합니다.

PUT /runner_controllers/:id

지원되는 속성:

속성 유형 필수 여부 설명
description string 아니요 러너 컨트롤러에 대한 설명입니다.
state string 아니요 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.

성공하면 다음 응답 속성과 함께 200 OK를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request PUT \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --header "Content-Type: application/json" \
     --data '{"description": "Updated runner controller", "state": "enabled"}' \
     --url "https://gitlab.example.com/api/v4/runner_controllers/3"

응답 예시:

{
    "id": 3,
    "description": "Updated runner controller",
    "state": "enabled",
    "created_at": "2026-01-05T00:00:00Z",
    "updated_at": "2026-01-06T00:00:00Z"
}

러너 컨트롤러 삭제#

ID로 특정 러너 컨트롤러를 삭제합니다.

DELETE /runner_controllers/:id

성공하면 204 No Content를 반환합니다.

curl --request DELETE \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/3"

러너 컨트롤러 스코프#

러너 컨트롤러 스코프는 러너 컨트롤러가 승인 제어를 위해 평가하는 작업의 범위를 정의합니다. 러너 컨트롤러가 승인 요청을 받으려면 최소 하나의 스코프가 있어야 합니다. 스코프가 없으면 컨트롤러의 상태가 enabled 또는 dry_run이더라도 비활성 상태를 유지합니다.

러너 컨트롤러 스코프는 상호 배타적인 두 가지 스코프 유형을 지원합니다:

  • 인스턴스 스코프: 러너 컨트롤러가 GitLab 인스턴스의 모든 러너에 대한 작업을 평가합니다.
  • 러너 스코프: 러너 컨트롤러가 특정 인스턴스 러너에 대한 작업만 평가합니다.

러너 컨트롤러는 인스턴스 스코프 또는 하나 이상의 러너 스코프를 가질 수 있지만, 둘 다 가질 수는 없습니다.

Note

인스턴스 및 러너 스코프만 사용할 수 있습니다. 추가 스코프 유형(그룹, 프로젝트)은 이슈 586419에서 제안되고 있습니다.

러너 컨트롤러의 모든 스코프 목록 조회#

특정 러너 컨트롤러에 대해 구성된 모든 스코프를 나열합니다:

GET /runner_controllers/:id/scopes

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.

성공하면 200 OK와 다음 응답 속성을 반환합니다:

속성 유형 설명
instance_level_scopings object 배열 러너 컨트롤러의 인스턴스 스코프 목록입니다.
instance_level_scopings[].created_at datetime 스코프가 생성된 날짜 및 시간입니다.
instance_level_scopings[].updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.
runner_level_scopings object 배열 러너 컨트롤러의 러너 스코프 목록입니다.
runner_level_scopings[].runner_id integer 러너의 ID입니다.
runner_level_scopings[].created_at datetime 스코프가 생성된 날짜 및 시간입니다.
runner_level_scopings[].updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes"

응답 예시:

{
    "instance_level_scopings": [
        {
            "created_at": "2026-01-01T00:00:00Z",
            "updated_at": "2026-01-01T00:00:00Z"
        }
    ],
    "runner_level_scopings": []
}

인스턴스 스코프 추가#

러너 컨트롤러에 인스턴스 스코프를 추가합니다. 추가되면 러너 컨트롤러가 GitLab 인스턴스의 모든 러너에 대한 작업을 평가합니다.

러너 컨트롤러는 인스턴스 스코프를 하나만 가질 수 있습니다. 이미 인스턴스 스코프가 존재하면 이 엔드포인트는 오류를 반환합니다.

POST /runner_controllers/:id/scopes/instance

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.

성공하면 201 Created와 다음 응답 속성을 반환합니다:

속성 유형 설명
created_at datetime 스코프가 생성된 날짜 및 시간입니다.
updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request POST \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/instance"

응답 예시:

{
    "created_at": "2026-01-01T00:00:00Z",
    "updated_at": "2026-01-01T00:00:00Z"
}

인스턴스 스코프 제거#

러너 컨트롤러에서 인스턴스 스코프를 제거합니다.

DELETE /runner_controllers/:id/scopes/instance

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.

성공하면 204 No Content를 반환합니다.

요청 예시:

curl --request DELETE \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/instance"

러너 스코프 추가#

히스토리
  • GitLab 18.10에서 도입되었습니다.

러너 컨트롤러에 러너 스코프를 추가합니다. 추가되면 러너 컨트롤러가 지정된 러너에 대한 작업만 평가합니다.

인스턴스 스코프가 있는 러너 컨트롤러는 러너 스코프를 가질 수 없습니다. 러너 스코프를 추가하기 전에 인스턴스 스코프를 제거하세요.

POST /runner_controllers/:id/scopes/runners/:runner_id

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.
runner_id integer 러너의 ID입니다. 인스턴스 러너여야 합니다.

성공하면 201 Created와 다음 응답 속성을 반환합니다:

속성 유형 설명
runner_id integer 러너의 ID입니다.
created_at datetime 스코프가 생성된 날짜 및 시간입니다.
updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request POST \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/runners/5"

응답 예시:

{
    "runner_id": 5,
    "created_at": "2026-01-01T00:00:00Z",
    "updated_at": "2026-01-01T00:00:00Z"
}

러너 스코프 제거#

히스토리
  • GitLab 18.10에서 도입되었습니다.

러너 컨트롤러에서 러너 스코프를 제거합니다.

DELETE /runner_controllers/:id/scopes/runners/:runner_id

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.
runner_id integer 러너의 ID입니다.

성공하면 204 No Content를 반환합니다.

요청 예시:

curl --request DELETE \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/runners/5"

러너 컨트롤러 API

Tier: Ultimate
Offering: GitLab Self-Managed, GitLab Dedicated
원문 보기
요약

이 기능의 사용 가능 여부는 기능 플래그로 제어됩니다. 러너 컨트롤러 API를 사용하면 CI/CD 작업 승인 제어를 위한 러너 컨트롤러를 관리할 수 있습니다. 성공하면 다음 응답 속성과 함께 200 OK를 반환합니다: ID로 특정 러너 컨트롤러의 세부 정보를 조회합니다.

Feature flag

이 기능의 사용 가능 여부는 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요. 이 기능은 테스트 목적으로 사용 가능하지만 프로덕션 환경에서 사용할 준비가 되지 않았습니다.

히스토리
  • GitLab 18.9에서 FF_USE_JOB_ROUTER 플래그와 함께 도입되었습니다. 이 기능은 실험 단계이며 GitLab 테스팅 계약이 적용됩니다.
  • GitLab 18.10에서 connected 필드가 추가되었습니다.

러너 컨트롤러 API를 사용하면 CI/CD 작업 승인 제어를 위한 러너 컨트롤러를 관리할 수 있습니다. 러너 컨트롤러는 작업 라우터에 연결하여 커스텀 정책에 따라 작업을 평가하고, 승인 또는 거부 여부를 결정합니다. 이 API는 러너 컨트롤러를 생성, 조회, 업데이트, 삭제하는 엔드포인트를 제공합니다.

전제 조건:

  • GitLab 인스턴스에 대한 관리자 액세스 권한이 있어야 합니다.

모든 러너 컨트롤러 목록 조회#

모든 러너 컨트롤러를 나열합니다.

GET /runner_controllers

응답:

성공하면 다음 응답 속성과 함께 200 OK를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request GET \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers"

응답 예시:

[
    {
        "id": 1,
        "description": "Runner controller",
        "state": "enabled",
        "created_at": "2026-01-01T00:00:00Z",
        "updated_at": "2026-01-02T00:00:00Z"
    },
    {
        "id": 2,
        "description": "Another runner controller",
        "state": "disabled",
        "created_at": "2026-01-03T00:00:00Z",
        "updated_at": "2026-01-04T00:00:00Z"
    }
]

단일 러너 컨트롤러 조회#

ID로 특정 러너 컨트롤러의 세부 정보를 조회합니다.

GET /runner_controllers/:id

응답:

성공하면 다음 응답 속성과 함께 200 OK를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
connected boolean 러너 컨트롤러가 현재 연결되어 있는지 여부입니다. 지난 한 시간 이내에 활성 토큰 중 하나를 사용한 경우 러너 컨트롤러는 연결된 것으로 간주됩니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request GET \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1"

응답 예시:

{
    "id": 1,
    "description": "Runner controller",
    "state": "enabled",
    "connected": true,
    "created_at": "2026-01-01T00:00:00Z",
    "updated_at": "2026-01-02T00:00:00Z"
}

러너 컨트롤러 등록#

새 러너 컨트롤러를 등록합니다.

POST /runner_controllers

지원되는 속성:

속성 유형 필수 여부 설명
description string 아니요 러너 컨트롤러에 대한 설명입니다.
state string 아니요 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.

응답:

성공하면 다음 응답 속성과 함께 201 Created를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request POST \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --header "Content-Type: application/json" \
     --data '{"description": "New runner controller", "state": "dry_run"}' \
     --url "https://gitlab.example.com/api/v4/runner_controllers"

응답 예시:

{
    "id": 3,
    "description": "New runner controller",
    "state": "dry_run",
    "created_at": "2026-01-05T00:00:00Z",
    "updated_at": "2026-01-05T00:00:00Z"
}

러너 컨트롤러 업데이트#

ID로 기존 러너 컨트롤러의 세부 정보를 업데이트합니다.

PUT /runner_controllers/:id

지원되는 속성:

속성 유형 필수 여부 설명
description string 아니요 러너 컨트롤러에 대한 설명입니다.
state string 아니요 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.

성공하면 다음 응답 속성과 함께 200 OK를 반환합니다:

속성 유형 설명
id integer 러너 컨트롤러의 고유 식별자입니다.
description string 러너 컨트롤러에 대한 설명입니다.
state string 러너 컨트롤러의 상태입니다. 유효한 값은 disabled (기본값), enabled, 또는 dry_run입니다.
created_at datetime 러너 컨트롤러가 생성된 날짜 및 시간입니다.
updated_at datetime 러너 컨트롤러가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request PUT \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --header "Content-Type: application/json" \
     --data '{"description": "Updated runner controller", "state": "enabled"}' \
     --url "https://gitlab.example.com/api/v4/runner_controllers/3"

응답 예시:

{
    "id": 3,
    "description": "Updated runner controller",
    "state": "enabled",
    "created_at": "2026-01-05T00:00:00Z",
    "updated_at": "2026-01-06T00:00:00Z"
}

러너 컨트롤러 삭제#

ID로 특정 러너 컨트롤러를 삭제합니다.

DELETE /runner_controllers/:id

성공하면 204 No Content를 반환합니다.

curl --request DELETE \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/3"

러너 컨트롤러 스코프#

러너 컨트롤러 스코프는 러너 컨트롤러가 승인 제어를 위해 평가하는 작업의 범위를 정의합니다. 러너 컨트롤러가 승인 요청을 받으려면 최소 하나의 스코프가 있어야 합니다. 스코프가 없으면 컨트롤러의 상태가 enabled 또는 dry_run이더라도 비활성 상태를 유지합니다.

러너 컨트롤러 스코프는 상호 배타적인 두 가지 스코프 유형을 지원합니다:

  • 인스턴스 스코프: 러너 컨트롤러가 GitLab 인스턴스의 모든 러너에 대한 작업을 평가합니다.
  • 러너 스코프: 러너 컨트롤러가 특정 인스턴스 러너에 대한 작업만 평가합니다.

러너 컨트롤러는 인스턴스 스코프 또는 하나 이상의 러너 스코프를 가질 수 있지만, 둘 다 가질 수는 없습니다.

Note

인스턴스 및 러너 스코프만 사용할 수 있습니다. 추가 스코프 유형(그룹, 프로젝트)은 이슈 586419에서 제안되고 있습니다.

러너 컨트롤러의 모든 스코프 목록 조회#

특정 러너 컨트롤러에 대해 구성된 모든 스코프를 나열합니다:

GET /runner_controllers/:id/scopes

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.

성공하면 200 OK와 다음 응답 속성을 반환합니다:

속성 유형 설명
instance_level_scopings object 배열 러너 컨트롤러의 인스턴스 스코프 목록입니다.
instance_level_scopings[].created_at datetime 스코프가 생성된 날짜 및 시간입니다.
instance_level_scopings[].updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.
runner_level_scopings object 배열 러너 컨트롤러의 러너 스코프 목록입니다.
runner_level_scopings[].runner_id integer 러너의 ID입니다.
runner_level_scopings[].created_at datetime 스코프가 생성된 날짜 및 시간입니다.
runner_level_scopings[].updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes"

응답 예시:

{
    "instance_level_scopings": [
        {
            "created_at": "2026-01-01T00:00:00Z",
            "updated_at": "2026-01-01T00:00:00Z"
        }
    ],
    "runner_level_scopings": []
}

인스턴스 스코프 추가#

러너 컨트롤러에 인스턴스 스코프를 추가합니다. 추가되면 러너 컨트롤러가 GitLab 인스턴스의 모든 러너에 대한 작업을 평가합니다.

러너 컨트롤러는 인스턴스 스코프를 하나만 가질 수 있습니다. 이미 인스턴스 스코프가 존재하면 이 엔드포인트는 오류를 반환합니다.

POST /runner_controllers/:id/scopes/instance

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.

성공하면 201 Created와 다음 응답 속성을 반환합니다:

속성 유형 설명
created_at datetime 스코프가 생성된 날짜 및 시간입니다.
updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request POST \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/instance"

응답 예시:

{
    "created_at": "2026-01-01T00:00:00Z",
    "updated_at": "2026-01-01T00:00:00Z"
}

인스턴스 스코프 제거#

러너 컨트롤러에서 인스턴스 스코프를 제거합니다.

DELETE /runner_controllers/:id/scopes/instance

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.

성공하면 204 No Content를 반환합니다.

요청 예시:

curl --request DELETE \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/instance"

러너 스코프 추가#

히스토리
  • GitLab 18.10에서 도입되었습니다.

러너 컨트롤러에 러너 스코프를 추가합니다. 추가되면 러너 컨트롤러가 지정된 러너에 대한 작업만 평가합니다.

인스턴스 스코프가 있는 러너 컨트롤러는 러너 스코프를 가질 수 없습니다. 러너 스코프를 추가하기 전에 인스턴스 스코프를 제거하세요.

POST /runner_controllers/:id/scopes/runners/:runner_id

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.
runner_id integer 러너의 ID입니다. 인스턴스 러너여야 합니다.

성공하면 201 Created와 다음 응답 속성을 반환합니다:

속성 유형 설명
runner_id integer 러너의 ID입니다.
created_at datetime 스코프가 생성된 날짜 및 시간입니다.
updated_at datetime 스코프가 마지막으로 업데이트된 날짜 및 시간입니다.

요청 예시:

curl --request POST \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/runners/5"

응답 예시:

{
    "runner_id": 5,
    "created_at": "2026-01-01T00:00:00Z",
    "updated_at": "2026-01-01T00:00:00Z"
}

러너 스코프 제거#

히스토리
  • GitLab 18.10에서 도입되었습니다.

러너 컨트롤러에서 러너 스코프를 제거합니다.

DELETE /runner_controllers/:id/scopes/runners/:runner_id

지원되는 속성:

속성 유형 필수 여부 설명
id integer 러너 컨트롤러의 ID입니다.
runner_id integer 러너의 ID입니다.

성공하면 204 No Content를 반환합니다.

요청 예시:

curl --request DELETE \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/runner_controllers/1/scopes/runners/5"