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

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

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

Conan组件介绍

Conan是一个用于C 和C++项目的包管理工具。与Conan 用于管理依赖关系、编译构建过程以及分发软件包。

约束与限制

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

前提条件

进入Conan仓操作指导页面

  1. 使用华为云账号访问CodeArts Artifact的私有依赖库
  2. 在私有依赖库页面选择对应的Conan仓库。
  3. 在仓库页面右上角,单击“操作指导”,进入配置向导界面。

Conan仓库操作指导

通过修改配置文件添加Conan仓库

编辑Conan仓库源的配置文件remotes.json,配置文件默认在当前用户目录下:

  • conan V1版本路径:{{用户}}/.conan/remotes.json
  • conan V2版本路径:{{用户}}/.conan2/remotes.json
  1. 进入Conan仓操作指导页面
  2. 在“操作指导”对话框,选择“下载配置文件替换”。

  3. 将下载的文件中的内容{"name":"{{xxx}}","url":"https://{{xxx}}/artgalaxy/api/conan/{{xxx}}/","verify_ssl":false},添加到配置文件中,其中verify_ssl设置为false表示忽略https证书。

    修改后的remotes.json文件样例如下:

    • Conan V1版本客户端通过conan user命令配置账号密码。
    • Conan V2版本客户端通过conan remote login命令配置账号密码。

  4. 配置通过后通过conan remote list命令查看仓库是否在显示的列表中。

通过命令行添加Conan仓库

依赖管理工具

操作说明

Conan V1客户端

选择conanV1管理工具,复制命令行到本地执行(密码在页面默认隐藏,单击复制会自动填充密码到命令行)。

Conan V2客户端

选择conanV2管理工具,复制命令行到本地执行(密码在页面默认隐藏,单击“复制”会自动填充密码到命令行)。

说明:

本地配置conan仓库时,conan仓库地址必须以api/conan开头。如https://{{域名}}/artgalaxy/api/conan/{{仓库名}}。

通过客户端发布Conan组件

  1. 参考Conan仓库操作指导完成相关配置。
  2. 执行如下命令,上传本地的Conan组件到CodeArtsArtifact私有依赖库。

     conan upload <PATTERN> -r <REMOTE>
    • <REMOTE>需要替换为仓库别名(具体请参考Conan仓库操作指导中“通过命令行添加Conan仓库”添加conan仓库时,定义的仓库别名),例如my-conan-test。
    • <PATTERN>需要替换为要上传的package或者recipe,recipe格式:<NAME>/<VERSION>@<USER>/<CHANNEL>

      例如conan upload "*" -r my-conan-test。

通过客户端下载Conan组件

  1. 参考Conan仓库操作指导完成相关配置。
  2. 执行如下命令,下载conanfile.txt文件中声明的依赖组件。

    conan install . -r <REMOTE>

    其中,<REMOTE>需要替换为在Conan仓库操作指导中“通过命令行添加Conan仓库”,添加conan仓库时,定义的仓库别名,以my-conan-test为例,使用对应命令为conan install . -r my-conan-test。

相关文档