更新时间:2026-02-04 GMT+08:00
分享

通过客户端上传/下载Debian组件

CodeArts Artifact支持与本地Debian客户端对接,用户A可以通过客户端的方式将本地Debian客户端中的私有组件上传至CodeArts Artifact私有依赖库,其他用户再通过客户端的方式从CodeArts Artifact私有依赖库下载用户A上传的Debian组件,实现Debian组件的共享或传递。

Debian组件介绍

Debian组件通常指的是通过Debian GNU/Linux发行版的包管理系统(如APT, Advanced Package Tool)发布的软件包。这些软件包包含了安装、配置和使用该软件所需的所有文件。

约束与限制

不同用户账号的私有依赖库仓库密码不同,当用户以不同账号访问私有依赖库时,如果需要使用仓库密码,则需要在各仓库“操作指导”中重新下载配置文件获取仓库密码。

前提条件

  • 使用客户端工具为apt,请确保已安装 Ubntu或者Debian系统 ,apt仓库源配置文件为用户根目录下的: /etc/apt/sources.list。
  • 创建Debian仓库
  • 需要具备当前仓库的“下载/查看”权限,如需获取“下载/查看”的权限,请参考配置私有依赖库权限配置。

Debian配置

Debian仓库提供了apt配置,可以添加到操作系统/etc/apt/sources.list文件中:

  1. 使用华为云账号访问CodeArts Artifact的私有依赖库
  2. 在私有依赖库页面选择对应的Debian仓库。
  3. 在仓库页面右上角,单击“操作指导”。
  4. 在“操作指导”对话框,单击“下载配置文件”即可获取配置文件。
  5. 执行配置文件中的命令。

    配置文件中提供了两种方式添加debian仓库到apt配置中,当前选择第一种方式:

    sudo sh -c "echo 'deb <REPO_URL> <DISTRIBUTION> <COMPONENT>' >> /etc/apt/sources.list"
    sudo sh -c "echo 'machine <HOST> login <USERNAME> password <PASSWORD>' >> /etc/apt/auth.conf"
    表1 参数说明

    参数

    说明

    REPO_URL

    仓库地址,可以从配置文件中获取。

    HOST

    仓库地址中的域名.

    DISTRIBUTION

    发行版本名称,dists目录下第一层目录名称,如下图所示。

    COMPONENT

    组件名称,dists目录下第二层目录名称,如下图所示。

    USERNAME

    用户名称,可以从配置文件中获取。

    PASSWORD

    用户密码,可以从配置文件中获取。

下载GPG公钥

  1. 使用华为云账号访问CodeArts Artifact的私有依赖库
  2. 在私有依赖库页面选择对应的Debian仓库。
  3. 在仓库页面右上角,单击“操作指导”。
  4. 在“操作指导”对话框,单击“下载公钥”获取GPG公钥,如下图所示。

  5. 添加GPG公钥。

    执行以下三个命令添加GPG公钥。
    gpg --import <PUBLIC_KEY>
    gpg --list-signatures
    gpg --export --armor <SIG_ID> | apt-key add -

    参数说明:

    • [PUBLIC_KEY]: 下载得到的GPG公钥路径。
    • [SIG_ID]:执行gpg --import <PUBLIC_KEY> 后获取得到,参考下图:

  6. 执行如下命令可刷新本地缓存。

    apt-get update

通过客户端发布Debian组件

本地客户端可以使用REST接口发布Debian组件到私有依赖库,例如:

curl -k -u "<USERNAME>:<PASSWORD>" -X PUT " <REPO_URL>/<DEBIAN_PACKAGE_NAME>;deb.distribution=<DISTRIBUTION>;deb.component=<COMPONENT>;deb.architecture=<ARCHITECTURE>" -T <PATH_TO_FILE>

其中的参数说明如下表所示。

表2 参数说明

参数

说明

REPO_URL

仓库地址,可以从配置文件中获取。

DISTRIBUTION

发行版本名称,dists目录下第一层目录名称,如下图所示。

COMPONENT

组件名称,dists目录下第二层目录名称,如下图所示。

USERNAME

用户名称,可以从配置文件中获取,请参考Debian配置

PASSWORD

用户密码,可以从配置文件中获取,请参考Debian配置

PATH_TO_FILE

本地文件路径。

通过客户端下载Debian组件

  1. 参考Debian配置,配置当前Debian仓库为apt源,并添加GPG公钥。
  2. 执行以下命令下载组件。

    apt download <PACKAGE>

    其中,<PACKAGE>是指定的包名。

相关文档