데비안 프로젝트 배포 API

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

이 문서는 데비안 프로젝트 배포 API에 대한 참조 문서입니다. 이 API는 기본적으로 비활성화된 피처 플래그 뒤에 있습니다. 이 API를 사용하려면 데비안 API를 활성화해야 합니다.

caution
이 API는 개발 중이며 프로덕션 환경에서 사용되지 않을 것을 권장합니다.

데비안 패키지 사용에 대한 자세한 정보는 데비안 패키지 레지스트리 문서를 참조하세요.

데비안 API 활성화

데비안 API는 기본적으로 비활성화된 피처 플래그 뒤에 있습니다. GitLab 관리자는 GitLab Rails 콘솔에 액세스할 수 있어야하며 이를 활성화할 수 있습니다. 이를 위해 데비안 API를 활성화 지침을 따르세요.

데비안 배포 API 인증

데비안 배포 API에 인증하는 방법을 참조하십시오.

프로젝트내 모든 데비안 배포 디렉터리

주어진 프로젝트의 데비안 배포를 나열합니다.

GET /projects/:id/debian_distributions
속성 타입 필수 여부 설명
id integer/string yes 프로젝트의 ID 또는 URL-encoded path.
codename string no 특정 codename으로 필터링합니다.
suite string no 특정 suite로 필터링합니다.
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/debian_distributions"

예시 응답:

[
  {
    "id": 1,
    "codename": "sid",
    "suite": null,
    "origin": null,
    "label": null,
    "version": null,
    "description": null,
    "valid_time_duration_seconds": null,
    "components": [
      "main"
    ],
    "architectures": [
      "all",
      "amd64"
    ]
  }
]

단일 데비안 프로젝트 배포

단일 데비안 프로젝트 배포를 가져옵니다.

GET /projects/:id/debian_distributions/:codename
속성 타입 필수 여부 설명
id integer/string yes 인증된 사용자 소유의 프로젝트의 ID 또는 URL-encoded path.
codename string yes 배포의 codename.
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/debian_distributions/unstable"

예시 응답:

{
  "id": 1,
  "codename": "sid",
  "suite": null,
  "origin": null,
  "label": null,
  "version": null,
  "description": null,
  "valid_time_duration_seconds": null,
  "components": [
    "main"
  ],
  "architectures": [
    "all",
    "amd64"
  ]
}

단일 데비안 프로젝트 배포 키

단일 데비안 프로젝트 배포 키를 가져옵니다.

GET /projects/:id/debian_distributions/:codename/key.asc
속성 타입 필수 여부 설명
id integer/string yes 인증된 사용자 소유의 프로젝트의 ID 또는 URL-encoded path.
codename string yes 배포의 codename.
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/debian_distributions/unstable/key.asc"

예시 응답:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Comment: Alice's OpenPGP certificate
Comment: https://www.ietf.org/id/draft-bre-openpgp-samples-01.html

mDMEXEcE6RYJKwYBBAHaRw8BAQdArjWwk3FAqyiFbFBKT4TzXcVBqPTB3gmzlC/U
b7O1u120JkFsaWNlIExvdmVsYWNlIDxhbGljZUBvcGVucGdwLmV4YW1wbGU+iJAE
ExYIADgCGwMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQTrhbtfozp14V6UTmPy
MVUMT0fjjgUCXaWfOgAKCRDyMVUMT0fjjukrAPoDnHBSogOmsHOsd9qGsiZpgRnO
dypvbm+QtXZqth9rvwD9HcDC0tC+PHAsO7OTh1S1TC9RiJsvawAfCPaQZoed8gK4
OARcRwTpEgorBgEEAZdVAQUBAQdAQv8GIa2rSTzgqbXCpDDYMiKRVitCsy203x3s
E9+eviIDAQgHiHgEGBYIACAWIQTrhbtfozp14V6UTmPyMVUMT0fjjgUCXEcE6QIb
DAAKCRDyMVUMT0fjjlnQAQDFHUs6TIcxrNTtEZFjUFm1M0PJ1Dng/cDW4xN80fsn
0QEA22Kr7VkCjeAEC08VSTeV+QFsmz55/lntWkwYWhmvOgE=
=iIGO
-----END PGP PUBLIC KEY BLOCK-----

Debian 프로젝트 배포판 작성

Debian 프로젝트 배포판을 작성합니다.

POST /projects/:id/debian_distributions
속성 타입 필수 설명
id integer/string yes 인증된 사용자가 소유한 프로젝트의 ID 또는 URL 인코딩 경로
codename string yes Debian 배포판의 코드명
suite string no 새 Debian 배포판의 스위트
origin string no 새 Debian 배포판의 출처
label string no 새 Debian 배포판의 라벨
version string no 새 Debian 배포판의 버전
description string no 새 Debian 배포판의 설명
valid_time_duration_seconds integer no 새 Debian 배포판의 유효 시간(초)
components string array no 새 Debian 배포판의 컴포넌트 디렉터리
architectures string array no 새 Debian 배포판의 아키텍처 디렉터리
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/debian_distributions?codename=sid"

예시 응답:

{
  "id": 1,
  "codename": "sid",
  "suite": null,
  "origin": null,
  "label": null,
  "version": null,
  "description": null,
  "valid_time_duration_seconds": null,
  "components": [
    "main"
  ],
  "architectures": [
    "all",
    "amd64"
  ]
}

Debian 프로젝트 배포판 업데이트

Debian 프로젝트 배포판을 업데이트합니다.

PUT /projects/:id/debian_distributions/:codename
속성 타입 필수 설명
id integer/string yes 인증된 사용자가 소유한 프로젝트의 ID 또는 URL 인코딩 경로
codename string yes Debian 배포판의 코드명
suite string no Debian 배포판의 새 스위트
origin string no Debian 배포판의 새 출처
label string no Debian 배포판의 새 라벨
version string no Debian 배포판의 새 버전
description string no Debian 배포판의 새 설명
valid_time_duration_seconds integer no Debian 배포판의 새 유효 시간(초)
components string array no Debian 배포판의 새 컴포넌트 디렉터리
architectures string array no Debian 배포판의 새 아키텍처 디렉터리
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/debian_distributions/unstable?suite=new-suite&valid_time_duration_seconds=604800"

예시 응답:

{
  "id": 1,
  "codename": "sid",
  "suite": "new-suite",
  "origin": null,
  "label": null,
  "version": null,
  "description": null,
  "valid_time_duration_seconds": 604800,
  "components": [
    "main"
  ],
  "architectures": [
    "all",
    "amd64"
  ]
}

Debian 프로젝트 배포판 삭제

Debian 프로젝트 배포판을 삭제합니다.

DELETE /projects/:id/debian_distributions/:codename
속성 타입 필수 설명
id integer/string yes 인증된 사용자가 소유한 프로젝트의 ID 또는 URL 인코딩 경로
codename string yes Debian 배포판의 코드명
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/debian_distributions/unstable"