1 制品仓库产品
Artifactory
是一款二进制存储管理工具,用来管理构建构建工具(如:gradle)等所依赖的二进制仓库,以方便管理第三方库和发布目标版本库,从而提高软件开发效率。它提供大量的插件以利于和不同工具之间的整合,内部使用权限管理更加安全,并支持高并发等等特性。
优点:功能全面,方便集成
缺点:收费,而且很贵。免费的版本功能阉割严重,目前开源可用的只有几个,开源并不支持conan
Nexus
也是一款二进制存储管理工具,与Artifactory相比,免费。可以集成jekins、conan等
优点:免费
缺点:插件不如前者丰富,集成也需要手动
2 Nexus集成conan方案
(2.1) 安装nexus
直接官网下载最新版即可https://help.sonatype.com/repomanager3/download,下载后直接控制台运行bin中:
我下载的版本为3.19
./nexus.exe /install
./nexus.exe /run
(2.2) nexus默认并不支持conan仓库,需要手动安装额外的插件,根据插件说明经过测试0.06版本可用,0.04在3.10上不能用
插件git:https://github.com/sonatype-nexus-community/nexus-repository-conan
按照文档说明,插件需要源码编译安装:最简便的安装方法
mvn clean package -PbuildKar //构建
完成构建后,Copy the nexus-repository-conan-0.0.6-bundle.kar file from your ./target folder to the ./deploy folder for your Nexus Repository installation.
将编译出来的jar文件放入到deploy文件夹内,该文件夹默认只有一个.类型文件
重启nexus服务
(2.3) 登录nexus,创建仓库,选择hosted模式,proxy代理模式不能使用
能在Browse里面看到,就算创建成功
可以在创建conan之前创建blob仓库
注:blob是数据实际存储的路径,为了方便移动和备份,建议不是默认
(2.4.2) 配置conan的security realms
加入客户端令牌
激活conan的登录token realm,否则conan客户端无法登录Nexus
然后就可以愉快体验conan管理成果物了!
然而,nexus的conan插件更新慢,功能不全,截止至20191222甚至连search命令都不支持。