简介作为一名java开发者,相信每个人都有将自己的组件(比如jar包)部署到中央仓库的需求,以便它们可以与其他开发人员共享。人员和项目是共享的。如果我们使用maven作为java项目管理工具,我们的做法通常有以下步骤:在项目pom中配置相关的远程仓库信息和一些必要的插件,在setting.xml中配置远程仓库的账号密码,以及使用gnupg生成public和private用key对部署的文件进行签名看起来冗长复杂,但是你现在不用担心,因为剑木CI为你提供了节点来完成这一系列的事情,你只需要一些声明式配置,可以大大缩短配置java组件的部署时间,让开发者专注于业务开发,让我们乘着简木CI的小船,扬帆远航,快进部署环境,将组件部署到中枢仓库。如此复杂冗长的过程,想必大家都不满意。下面将介绍如何使用简目CI自动化、声明式地完成这一切。简木CI是一个节点编排工具,通过编排节点来实现一系列的需求。这次将组件部署到远程仓库也是通过布置节点来实现的。安排节点就像厨师做饭。首先,我们需要选择原材料。下面介绍一下本次自动化部署用到的三个节点。gitclonenodegit是一个版本管理工具。gitclone节点是用来将我们的工程从远程仓库拉上拉下来的,版本选择最新的1.2.3gnupg节点如果我们需要对jar进行签名,可能需要使用gnupg生成公钥和私钥(如果我们提前准备好了,这个节点就不需要了)。由于要生成公钥和私钥,所以我们选择这个节点来生成公钥和私钥。版本为1.0.0_gen-keysonatype节点。我们使用这个节点来部署项目。目前只支持maven工具管理的项目发布到远程仓库。版本为1.0.0-maven3.8.5_jdk11选择的节点如下图所示:原材料准备好了,接下来我们开始准备调料,也就是填写参数构建流程的过程:这个有一次我们使用图形化排版功能编辑测试流程(ps:图形化排版是剑木CI2.4.0推出的重量级功能,详见《v2.4》期待已久的图形化排版来了!)首先编辑项目信息,开始向所有节点填写参数gitClonenode点击节点图标,在右侧抽屉填写参数,如下图:配置我们项目的git地址,获取gnupg节点同理,在右侧抽屉中点击节点图标填写参数,如下图:配置必要的参数,使用生成公私钥sonatype节点重复以上操作,点击节点图标填写参数右边抽屉这里有个小细节,聪明的朋友可以看出sonatype节点的一些输入参数使用了上一个节点的输出参数(比如Project目录,gpg路径参数)如果要使用的输出参数之前的节点,首先要在线连接这些节点,如下图:然后选择upstream节点的输出参数,如下图,到这里我们就完成了图形化的排列maven部署java组件的过程有不仅准备了原料(节点选择),还加了调料,接下来就是精彩的炒菜环节,启动进程:进程正在运行:进程运行成功,查看每个节点的运行日志git_clone节点:gnupg节点:sonatype节点:到中央仓库查看新部署的java组件:至此,我们使用简木CI成功将java组件部署到中央仓库!说到最后,大家一定对图形化布局很感兴趣。实际上,在图形化布局流程的底层也会生成一个流程DSL。如果想参考这个测试过程生成的具体DSL,可以到这里部署java组件到中央仓库。处理DSL官网:https://jianmu.dev代码:https://gitee.com/jianmu-dev文档:https://docs.jianmu.dev示例:https://ci.jianmu.dev
