「开源人的福音」一键部署 Java 构件到 Sonatype
介绍
作为一个 java 开发人员,我相信大家都有这样的需求,将自己的构件(例如 jar 包)部署到中央仓库,以便与其他开发人员和项目共享。如果我们使用 maven 作为 java 项目管理工具,通常我们的做法大致有以下几步:
在项目 pom 里面配置相关的远程仓库信息以及一些必要的插件
在 setting.xml 里配置远程仓库的账号密码
使用 gnupg 生成公私钥对部署的文件进行签名
看整个过程显得冗长复杂,但是现在大家不用担心,因为建木 CI 给大家提供了节点去完成这一系列的事情,只需要一些声明式的配置,即可大大缩短配置 java 构件的部署时间,让开发人员专注于业务开发,所以让我们搭上建木 CI 的小船驶向远方
以下流程省略开发者在 Sonatype 上注册账号并提交工单(提一个上传 jar 包的申请) 的流程,快进到部署环境
部署构件到中央仓库
想必大家对如此复杂冗长的流程已经开始不满了,下面将介绍如何使用建木 CI 来自动化、声明式地完成这一切。
建木 CI 是一个节点编排工具,通过编排节点来实现一系列的需求。此次部署构件到远程仓库也是通过编排节点来达到目的
编排节点就像大厨炒菜,首先要进行原材料的选择,下面介绍一下本次自动化部署使用的三个节点
git clone 节点
git 是一个版本管理工具,git clone 节点用于将我们的项目从远端仓库上拉取下来,版本选用最新的1.2.3
gnupg 节点
如果我们需要对 jar 进行签名,我们可能需要使用 gnupg 来生成公私钥(如果我们事先已经准备好了,则不需要此节点)。既然要生成公私钥,那么我们选用此节点生成公私钥,版本为1.0.0_gen-key
sonatype 节点
我们选用此节点来进行项目的部署,目前仅支持使用 maven 工具管理的项目发布到远程仓库,版本为1.0.0-maven3.8.5_jdk11
选好的节点如下图所示:
原材料准备好了那么我们开始准备加调料,也就是填充参数构建流程的过程:
此次我们使用图形化编排功能编辑此测试流程(ps:图形化编排是建木 CI 2.4.0 推出的重磅级功能,详见「v2.4」千呼万唤的图形化编排,来了!)
首先编辑项目信息
然后开始往所有节点填充参数
git clone 节点
点击节点图标往右侧抽屉里填充参数,如下图:
配置好我们项目的 git 地址即可
gnupg 节点
同样,点击节点图标往右侧抽屉里填充参数,如下图:
配置好必要的参数,用于生成公私钥
sonatype 节点
重复上述的操作,点击节点图标往右侧抽屉里填充参数
这里有一个小细节,聪明的小伙伴都看出来 sonatype 节点某些输入参数使用了前面节点的输出参数(比如,项目目录、gpg 路径参数)这里想要使用前面节点的输出参数,那么必须先将这几个节点连上线,如下图:
然后选择上游节点的输出参数,如下图
到这里我们就完成了图形化编排 maven 部署 java 构件的流程
那么既准备好了原材料(节点选型),又加好了调料,接下来就到了激动人心的炒菜环节,启动流程:
流程正在运行中:
流程运行成功,查看每个节点的运行日志
git_clone 节点:
gnupg 节点:
sonatype 节点:
到中央仓库查看刚刚部署的 java 构件:
至此,我们已经使用建木 CI 成功将 java 构件部署到了中央仓库上!
结尾
想必大家对图形化编排非常感兴趣,其实图形化编排流程底层也是生成了一个流程 DSL,如果想参考本次测试流程具体生成的 DSL,可以移步此处java构件部署到中央仓库流程DSL
本文为建木博主「free」的原创投稿文章,转载请联系授权。
项⽬官⽹:https://jianmu.dev
项⽬托管:https://gitee.com/jianmu-dev
评论