pandaAnthony:jenkins+git+maven持续集成(三)

这个系列有四篇文章,自动部署分成了2篇:

  1. jenkins+git+maven持续集成(一):主要介绍Centos7下jenkins的安装
  2. jenkins+git+maven持续集成(二):主要介绍下jenkins怎么集成git+maven进行自动构建
  3. jenkins+git+maven持续集成(三):主要介绍下jenkins怎么集成进行自动部署(发布到maven私有库)
  4. jenkins+git+maven持续集成(四):主要介绍下jenkins怎么集成进行自动部署(通过SSH部署到服务器)

上篇介绍了怎么用maven+git进行自动构建,既然都能自动构建了,那么自动部署肯定是少不了的。

构建后操作

回到前面的jenkinsDemo任务编辑页面,在构建的下面能看到“构建后操作”:


pandaAnthony:jenkins+git+maven持续集成(三)_第1张图片
image.png

我们点开“增加构建后操作步骤”:


pandaAnthony:jenkins+git+maven持续集成(三)_第2张图片
image.png

1. 发布包到maven私有库

其中有一个项目中用到比较多的“Deploy artifacts to Maven repository”;这个就是部署到maven仓库,在实际项目开发中,大部分时候我们只需要关注自己的业务或者调用其他项目的接口,至于怎么实现的我们不用太去关注,而且可能都没有权限去看相关代码,但是我们还是需要用到相关的jar。那么怎么办呢,其实就和我们使用maven一样,只是需要公司搭建自己的私有库,然后将自己开发的接口或公共的jar提交上去,这时在构建完添加“Deploy artifacts to Maven repository”就很有用了,这个操作会帮助我们直接将构建好的pom或者jar包发布到Maven私有库去。

1.1 手动发布包到maven私有库

这里简单地说下maven的setting.xml的配置:
中添加release和snapshot对应的server信息:


pandaAnthony:jenkins+git+maven持续集成(三)_第3张图片
image.png

然后在中添加私服的镜像(这里的账号密码需要在私服中创建并设置有deploy的权限):


pandaAnthony:jenkins+git+maven持续集成(三)_第4张图片
image.png

最后在中添加release和snapshot对应的地址信息:


pandaAnthony:jenkins+git+maven持续集成(三)_第5张图片
image.png

有多个profile的时候需要指定一个使用的:


pandaAnthony:jenkins+git+maven持续集成(三)_第6张图片
image.png

关于私服的搭建就不在这里描述了,可以参考我以前写的Window下搭建Nexus3私服;linux下的操作也大同小异,不过是tar包,解压后运行对应的shell就可以了。

maven的设置到这里就结束了,不过对应的工程也需要做相关的修改。还是拿我们做集成的spring-cloud工程为例,在根目录下pom中添加


pandaAnthony:jenkins+git+maven持续集成(三)_第7张图片
image.png

注意这里的repository id要和maven setting.xml中设置的对应;然后一般java项目中会有个顶级的pom配置工程,所有其他的java maven工程都集成顶级的pom,所以一般只要在顶级的pom配置工程中添加一次就可以了。

这里简单地做下测试是否能正常发布,先看下私有库对应的包(这里我发布过一次了):


pandaAnthony:jenkins+git+maven持续集成(三)_第8张图片
image.png

我们在根目录运行:

mvn deploy

可以看到发布成功了,而且还有相关的报信息(这里就只截取最后一段信息):


pandaAnthony:jenkins+git+maven持续集成(三)_第9张图片
image.png

我们回到私有库查看是否有刚才发布的包:


pandaAnthony:jenkins+git+maven持续集成(三)_第10张图片
image.png

可以看到确实是刚才通过运行命令发布的包,其他的包信息也能对上,这里就不一一比对了。到这里说明具备了发布包到私有库的能力,接下看下Jenkins中怎么自动发布。

1.2 Jenkins自动发布包到maven私有库

回到“增加构建后操作”,选择“Deploy artifacts to Maven repository”,然后点开“高级”;这里我们是snapshot版本的,添加对应的信息:


pandaAnthony:jenkins+git+maven持续集成(三)_第11张图片
image.png

保存后,回到任务页面点击“立即构建”,进入控制台查看:


pandaAnthony:jenkins+git+maven持续集成(三)_第12张图片
image.png

可以看到自动构建完成后,进行了deploy相关的操作。我们再回到maven私有库检查是否上传成功了:


pandaAnthony:jenkins+git+maven持续集成(三)_第13张图片
image.png

包名是对应的,到这里说明自动发布到maven私有库成功了。

下一篇会介绍通过SSH自动部署到服务器上。

你可能感兴趣的:(pandaAnthony:jenkins+git+maven持续集成(三))