파이프라인 트리거 토큰 API

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

API를 통한 파이프라인 트리거 실행에 대해 더 읽어보세요.

프로젝트 트리거 토큰 목록

프로젝트의 파이프라인 트리거 토큰 목록을 가져옵니다.

GET /projects/:id/triggers
속성 유형 필수 여부 설명
id 정수/문자열 프로젝트의 ID 또는 URL 인코딩된 경로
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/triggers"
[
    {
        "id": 10,
        "description": "my trigger",
        "created_at": "2016-01-07T09:53:58.235Z",
        "last_used": null,
        "token": "6d056f63e50fe6f8c5f8f4aa10edb7",
        "updated_at": "2016-01-07T09:53:58.235Z",
        "owner": null
    }
]

인증된 사용자가 트리거 토큰을 만든 경우, 트리거 토큰은 전체로 표시됩니다. 다른 사용자가 만든 트리거 토큰은 네 글자로 축약됩니다.

트리거 토큰 세부 정보 가져오기

프로젝트의 파이프라인 트리거 토큰의 세부 정보를 가져옵니다.

GET /projects/:id/triggers/:trigger_id
속성 유형 필수 여부 설명
id 정수/문자열 프로젝트의 ID 또는 URL 인코딩된 경로
trigger_id 정수 트리거 ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/triggers/5"
{
    "id": 10,
    "description": "my trigger",
    "created_at": "2016-01-07T09:53:58.235Z",
    "last_used": null,
    "token": "6d056f63e50fe6f8c5f8f4aa10edb7",
    "updated_at": "2016-01-07T09:53:58.235Z",
    "owner": null
}

트리거 토큰 생성

프로젝트의 파이프라인 트리거 토큰을 생성합니다.

POST /projects/:id/triggers
속성 유형 필수 여부 설명
description 문자열 트리거 이름
id 정수/문자열 프로젝트의 ID 또는 URL 인코딩된 경로
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
     --form description="my description" "https://gitlab.example.com/api/v4/projects/1/triggers"
{
    "id": 10,
    "description": "my trigger",
    "created_at": "2016-01-07T09:53:58.235Z",
    "last_used": null,
    "token": "6d056f63e50fe6f8c5f8f4aa10edb7",
    "updated_at": "2016-01-07T09:53:58.235Z",
    "owner": null
}

파이프라인 트리거 토큰 업데이트

프로젝트의 파이프라인 트리거 토큰을 업데이트합니다.

PUT /projects/:id/triggers/:trigger_id
속성 유형 필수 여부 설명
id 정수/문자열 프로젝트의 ID 또는 URL 인코딩된 경로
trigger_id 정수 트리거 ID
description 문자열 아니요 트리거 이름
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
     --form description="my description" "https://gitlab.example.com/api/v4/projects/1/triggers/10"
{
    "id": 10,
    "description": "my trigger",
    "created_at": "2016-01-07T09:53:58.235Z",
    "last_used": null,
    "token": "6d056f63e50fe6f8c5f8f4aa10edb7",
    "updated_at": "2016-01-07T09:53:58.235Z",
    "owner": null
}

파이프라인 트리거 토큰 제거

프로젝트의 파이프라인 트리거 토큰을 제거합니다.

DELETE /projects/:id/triggers/:trigger_id
속성 유형 필수 여부 설명
id 정수/문자열 프로젝트의 ID 또는 URL-인코딩된 경로
trigger_id 정수 트리거 ID
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/triggers/5"

토큰을 사용하여 파이프라인 트리거

파이프라인 트리거 토큰 또는 인증을 위해 CI/CD 작업 토큰을 사용하여 파이프라인을 트리거합니다.

CI/CD 작업 토큰을 사용하면 트리거된 파이프라인은 다중 프로젝트 파이프라인이 되며, 요청을 인증하는 작업이 상위 파이프라인과 연관됩니다. 이는 파이프라인 그래프에서 확인할 수 있습니다.

작업에서 트리거 토큰을 사용하면 작업이 상위 파이프라인과 연관되지 않습니다.

POST /projects/:id/trigger/pipeline

지원되는 속성:

속성 유형 필수 여부 설명
id 정수/문자열 프로젝트의 ID 또는 URL-인코딩된 경로.
ref 문자열 파이프라인을 실행할 브랜치 또는 태그.
token 문자열 트리거 토큰 또는 CI/CD 작업 토큰.
variables 해시 아니요 파이프라인 변수를 포함하는 키-값 문자열 맵. 예: { VAR1: "value1", VAR2: "value2" }.

예시 요청:

curl --request POST --form "variables[VAR1]=value1" --form "variables[VAR2]=value2" "https://gitlab.example.com/api/v4/projects/123/trigger/pipeline?token=2cb1840fb9dfc9fb0b7b1609cd29cb&ref=main"

예시 응답:

{
  "id": 257,
  "iid": 118,
  "project_id": 123,
  "sha": "91e2711a93e5d9e8dddfeb6d003b636b25bf6fc9",
  "ref": "main",
  "status": "created",
  "source": "trigger",
  "created_at": "2022-03-31T01:12:49.068Z",
  "updated_at": "2022-03-31T01:12:49.068Z",
  "web_url": "http://127.0.0.1:3000/test-group/test-project/-/pipelines/257",
  "before_sha": "0000000000000000000000000000000000000000",
  "tag": false,
  "yaml_errors": null,
  "user": {
    "id": 1,
    "username": "root",
    "name": "Administrator",
    "state": "active",
    "avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
    "web_url": "http://127.0.0.1:3000/root"
  },
  "started_at": null,
  "finished_at": null,
  "committed_at": null,
  "duration": null,
  "queued_duration": null,
  "coverage": null,
  "detailed_status": {
    "icon": "status_created",
    "text": "created",
    "label": "created",
    "group": "created",
    "tooltip": "created",
    "has_details": true,
    "details_path": "/test-group/test-project/-/pipelines/257",
    "illustration": null,
    "favicon": "/assets/ci_favicons/favicon_status_created-4b975aa976d24e5a3ea7cd9a5713e6ce2cd9afd08b910415e96675de35f64955.png"
  }
}