Help us learn about your current experience with the documentation. Take the survey.

Debian 项目分发版 API

  • 版本:Free, Premium, Ultimate
  • 产品:GitLab Self-Managed

这是 Debian 项目分发版 API 的参考文档。此 API 默认处于功能标志之后,且默认禁用。要使用此 API,您必须启用 Debian API

此 API 正在开发中,不适用于生产环境。

有关使用 Debian 软件包的更多信息,请参阅 Debian 软件包仓库文档

启用 Debian API

Debian API 默认处于功能标志之后,且默认禁用。有权访问 GitLab Rails 控制台的 GitLab 管理员可以选择启用它。要启用它,请按照启用 Debian API中的说明进行操作。

向 Debian 分发版 API 进行身份验证

请参阅向 Debian 分发版 API 进行身份验证

列出项目中的所有 Debian 分发版

列出指定项目中的 Debian 分发版。

GET /projects/:id/debian_distributions
属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
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"
    ]
  }
]

获取单个 Debian 项目分发版

获取单个 Debian 项目分发版。

GET /projects/:id/debian_distributions/:codename
属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
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"
  ]
}

获取单个 Debian 项目分发版密钥

获取单个 Debian 项目分发版密钥。

GET /projects/:id/debian_distributions/:codename/key.asc
属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
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 分发版的 codename。
suite string no 新 Debian 分发版的 suite。
origin string no 新 Debian 分发版的 origin。
label string no 新 Debian 分发版的 label。
version string no 新 Debian 分发版的 version。
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 分发版的 codename。
suite string no Debian 分发版的新 suite。
origin string no Debian 分发版的新 origin。
label string no Debian 分发版的新 label。
version string no Debian 分发版的新 version。
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 分发版的 codename。
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/debian_distributions/unstable"