Jenkins deploys archive onto Nexus via SSL

简介:

今天终于搞定了一个很头疼的问题:Jenkins(或者是它的slave)不能deploy那些build好的archive到Nexus库中。


我们的结构是这样的:

1、Jenkins master, serverA, windows7

2、Jenkins slave, serverB, windows7, started with JavaWebStart mode.

3、Nexus server, serverC. access only with SSL.


问题:

Jenkins的一个job可以正常编译,而且能将编译好的包安装到本地的maven库中。但是当Jenkins想把编译好的包发布到远程Nexus库(公司里的公共maven库)上时,出错:peer not authenticated.

此类问题是证书出了毛病,由于Nexus启用了SSL方式访问,所以,其要求所有与之连接的客户端需要手动或自动的安装Nexus服务器self-signed certificate。

分析:

按常理说,maven没有自带java,所以maven的运行需要有java的JDK或JRE支持,需要我们事先在master或slave所在的机器上安装JRE。而如果本地maven(不论是master的,还是slave的)需要和Nexus有互访操作的话,就需要将Nexus的Certificate导入到maven所调用的JRE的keystore中(as a trusted certificate)。

这些步骤我已经全都做过了,可是还是会遇到peer not authenticated问题。

于是我又检查了slave和master机器上所有的JRE,这是发现Jenkins master自身带有一个JRE目录,而这个JRE的keystore中还没有添加Nexus的certificate。

也许这就是问题所在。

解决:

将Nexus的certificate添加到Jenkins master自带的JRE的keystore中,重启Jenkins master服务,然后重试,slave部署archive成功。


本文转自 rickqin 51CTO博客,原文链接:http://blog.51cto.com/rickqin/1336531


相关文章
|
8月前
|
jenkins Shell 网络安全
jenkins构建dotnet项目时遇到ssl问题
jenkins构建dotnet项目时遇到ssl问题
49 0
|
4月前
|
jenkins Java 持续交付
【项目集成工具】Jenkins
【项目集成工具】Jenkins
|
30天前
|
jenkins Java 持续交付
Docker Swarm总结+Jenkins安装配置与集成(5/5)
Docker Swarm总结+Jenkins安装配置与集成(5/5)
47 0
|
30天前
|
jenkins Java 持续交付
Docker Swarm总结+Jenkins安装配置与集成snarqube和目标服务器(4/5)
Docker Swarm总结+Jenkins安装配置与集成snarqube和目标服务器(4/5)
41 0
|
7月前
|
jenkins 持续交付 开发工具
如何基于Docker搭建jenkins集成开发环境?建议收藏
如何基于Docker搭建jenkins集成开发环境?建议收藏
|
6月前
|
运维 jenkins 机器人
Jenkins配置项目集成钉钉通知
Jenkins配置项目集成钉钉通知
|
7月前
|
jenkins 应用服务中间件 持续交付
1小时带你入门Jenkins持续集成自动化环境搭建
1小时带你入门Jenkins持续集成自动化环境搭建
|
7月前
|
jenkins Java 持续交付
使用 Jenkins 创建微服务应用的持续集成
使用 Jenkins 创建微服务应用的持续集成
81 0
|
8月前
|
监控 NoSQL jenkins
2021-9-11大连东软实训---gitlab 、jenkins和sonar集成
2021-9-11大连东软实训---gitlab 、jenkins和sonar集成
66 0