DebianプロジェクトディストリビューションAPI
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab Self-Managed
このAPIを使用して、Debianプロジェクトのディストリビューションを管理します。このAPIは、機能フラグの背後にあり、デフォルトで無効になっています。このAPIを使用するには、Debian APIを有効にする必要があります。
このAPIは開発中であり、本番環境での使用を目的としていません。
Debian APIを有効にする
Debian APIは、機能フラグの背後にあり、デフォルトで無効になっています。GitLab Railsコンソールにアクセスできる管理者は、それを有効にすることを選択できます。有効にするには、Debian APIを有効にするの手順に従ってください。
DebianディストリビューションAPIへの認証
DebianディストリビューションAPIへの認証を参照してください。
プロジェクト内のすべてのDebianディストリビューションをリストします
指定されたプロジェクト内のDebianディストリビューションをリストします。
GET /projects/:id/debian_distributions| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
codename | 文字列 | いいえ | 特定のcodenameでフィルタリングします。 |
suite | 文字列 | いいえ | 特定のsuiteでフィルタリングします。 |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "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"
]
}
]単一のDebianプロジェクトディストリビューション
単一のDebianプロジェクトディストリビューションを取得します。
GET /projects/:id/debian_distributions/:codename| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
codename | 文字列 | はい | ディストリビューションのcodename。 |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "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"
]
}単一のDebianプロジェクトディストリビューションキー
単一のDebianプロジェクトディストリビューションキーを取得します。
GET /projects/:id/debian_distributions/:codename/key.asc| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
codename | 文字列 | はい | ディストリビューションのcodename。 |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "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 | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
codename | 文字列 | はい | Debianディストリビューションのコードネーム。 |
suite | 文字列 | いいえ | 新しいDebianディストリビューションのスイート。 |
origin | 文字列 | いいえ | 新しいDebianディストリビューションのorigin。 |
label | 文字列 | いいえ | 新しいDebianディストリビューションのラベル。 |
version | 文字列 | いいえ | 新しいDebianディストリビューションのバージョン。 |
description | 文字列 | いいえ | 新しいDebianディストリビューションの説明。 |
valid_time_duration_seconds | 整数 | いいえ | 新しいDebianディストリビューションの有効期間(秒単位)。 |
components | 文字列配列 | いいえ | 新しいDebianディストリビューションのコンポーネントのリスト。 |
architectures | 文字列配列 | いいえ | 新しいDebianディストリビューションのアーキテクチャのリスト。 |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "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 | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
codename | 文字列 | はい | Debianディストリビューションのコードネーム。 |
suite | 文字列 | いいえ | Debianディストリビューションの新しいスイート。 |
origin | 文字列 | いいえ | Debianディストリビューションの新しいorigin。 |
label | 文字列 | いいえ | Debianディストリビューションの新しいラベル。 |
version | 文字列 | いいえ | Debianディストリビューションの新しいバージョン。 |
description | 文字列 | いいえ | Debianディストリビューションの新しい説明。 |
valid_time_duration_seconds | 整数 | いいえ | Debianディストリビューションの新しい有効期間(秒単位)。 |
components | 文字列配列 | いいえ | Debianディストリビューションの新しいコンポーネントのリスト。 |
architectures | 文字列配列 | いいえ | Debianディストリビューションの新しいアーキテクチャのリスト。 |
curl --request PUT \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "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 | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
codename | 文字列 | はい | Debianディストリビューションのコードネーム。 |
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/debian_distributions/unstable"