openshift/origin工作记录(9)——openshift结合jenkins实现持续集成

最近工作为基于jenkins、Openshift实现持续集成。

由于只给了我一周的时间,这里先记录一下V1.0版的实现过程。

集成jenkins

参考《openshift/origin学习记录(7)——集成Jenkins服务》,集成jenkins(博客里记录的是非持久化的jenkins,选用jenkins-persistent-template模板,创建了持久化的jenkins)。

关于PV和PVC可以参考《openshift/origin工作记录(7)——持久化openshift内部镜像仓库》

修改jenkins的配置

由于采用docker的形式运行jenkins,面临的问题有在jenkins容器里调用docker打包镜像、调用maven构建war包。

这里的初步解决方案记录如下(核心思路是采用volume挂载):

修改jenkins的环境变量

这里写图片描述

OPENSHIFT_ENABLE_OAUTH:false。设置不采用openshift的登录认证。
JENKINS_PASSWORD:test。设置admin的初始密码为test。
PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/maven/bin。设置maven的环境变量。
JAVA_HOME:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64。设置java_home。

增加volume,挂载

这里写图片描述

其中
docker挂载相关的包括:
挂载主机目录/usr/bin/docker、/var/run/docker.sock、/etc/sysconfig/docker、/usr/bin/docker-current。
maven挂载相关的包括:
挂载主机目录/root/apache-maven-3.5.3(自己下载解压的maven)。

hostPath挂载需要修改scc权限

java操作jenkins

采用github开源项目,https://github.com/jenkinsci/java-client-api,最后初步实现了所有功能。

猜你喜欢

转载自blog.csdn.net/huqigang/article/details/79961987