通过客户端上传/下载Conan组件
CodeArts Artifact支持与本地Conan客户端对接,用户A可以通过客户端的方式将本地Conan客户端中的私有组件上传至CodeArts Artifact私有依赖库,其他用户再通过客户端的方式从CodeArts Artifact私有依赖库下载用户A上传的Conan组件,实现Conan组件的共享或传递。
Conan组件介绍
Conan是一个用于C 和C++项目的包管理工具。与Conan 用于管理依赖关系、编译构建过程以及分发软件包。
约束与限制
不同用户账号的私有依赖库仓库密码不同,当用户以不同账号访问私有依赖库时,如果需要使用仓库密码,则需要在各仓库“操作指导”中重新下载配置文件获取仓库密码。
编辑Conan仓库源的配置文件remotes.json,配置文件默认在当前用户目录下:
- conan V1版本路径:{{用户}}/.conan/remotes.json
- conan V2版本路径:{{用户}}/.conan2/remotes.json
- 进入Conan仓操作指导页面。
- 在“操作指导”对话框,选择“下载配置文件替换”。

- 将下载的文件中的内容{"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命令配置账号密码。
- 配置通过后通过conan remote list命令查看仓库是否在显示的列表中。
通过命令行添加Conan仓库
|
依赖管理工具 |
操作说明 |
|---|---|
|
Conan V1客户端 |
选择conanV1管理工具,复制命令行到本地执行(密码在页面默认隐藏,单击复制会自动填充密码到命令行)。
|
|
Conan V2客户端 |
选择conanV2管理工具,复制命令行到本地执行(密码在页面默认隐藏,单击“复制”会自动填充密码到命令行)。
说明:
本地配置conan仓库时,conan仓库地址必须以api/conan开头。如https://{{域名}}/artgalaxy/api/conan/{{仓库名}}。
|
通过客户端发布Conan组件
- 参考Conan仓库操作指导完成相关配置。
- 执行如下命令,上传本地的Conan组件到CodeArtsArtifact私有依赖库。
conan upload <PATTERN> -r <REMOTE>
- <REMOTE>需要替换为仓库别名(具体请参考Conan仓库操作指导中“通过命令行添加Conan仓库”添加conan仓库时,定义的仓库别名),例如my-conan-test。
- <PATTERN>需要替换为要上传的package或者recipe,recipe格式:<NAME>/<VERSION>@<USER>/<CHANNEL>
通过客户端下载Conan组件
- 参考Conan仓库操作指导完成相关配置。
- 执行如下命令,下载conanfile.txt文件中声明的依赖组件。
conan install . -r <REMOTE>
其中,<REMOTE>需要替换为在Conan仓库操作指导中“通过命令行添加Conan仓库”,添加conan仓库时,定义的仓库别名,以my-conan-test为例,使用对应命令为conan install . -r my-conan-test。


