环境信息:
服务器:阿里云(2C4G,采用的是镜像市场多语言环境(CentOS6.9 Nginx PHP JAVA))
操作系统:CentOS6.9
软件信息:JDK1.8、Mysql5.6.37、jenkins2.89.4、sonarqube5.6.7、sonar-scanner3.1.0、maven3.3.9
为了相关访问方便,关闭了iptables服务。
2.Jenkins安装
本次使用的是rpm包方式进行jenkins安装(rpm安装相关命令省去)。
安装完成后,jenkins本身系统目录为/var/lib/jenkins
rpm安装完成后访问http://IP:8088进行jenkins系统初始化。
(此处针对jenkins启动端口进行了修改,修改/etc/sysconfig/jenkins文件,新增JENKINS_PORT=”8088”)
完成jenkins初始化后,开始相关插件的安装。
安装以下插件:JaCoCo plugin(代码覆盖率分析)
SonarQube Scanner for Jenkins(soanr scanner插件)
SVN 1.4 Compatibility Plugin(svn插件)
完成插件安装后在“系统管理”-“全局工具配置”中,配置已安装好的maven、jdk、svn、sonar scanner信息(如下图)
然后在“系统管理”—“系统设置”中配置maven配置、SonarQube Server信息(如下图)
(Server authentication token见后续)
注意:在“系统配置”—“日志配置”—“日志级别”中新增以下一条记录:
否则,没几天。磁盘可能就会被Jenkins日志给占满(日志路径为/var/log/jenkins,如果磁盘满了,可以检查下手工删除)
3.Sonarqube安装
安装步骤略过,我是直接丢在了对应的www目录下的。
以下说说配置,修改sonar目录下的conf/sonar.properties文件
配置以下信息:
sonar.jdbc.username=xxxxx
sonar.jdbc.password=xxxxx
sonar.jdbc.url=XXXXXXXXXXXXXX
启动应用有,安装以下插件(反正我装了这些)
下面说说之前提到的token的问题:
获取位置如图:”my account”–“security”下
4.sonar-scanner设置
(1)安装目录(这个是自己解压的位置)/usr/local/software/sonar-scanner
修改配置文件conf/sonar-scanner.properties
(讲真,这里配置的jacoco好像没用到,因为看其他教程说本身已经有集成了,所以没采用这个配置,不过懒得删了)
记得将sonar-scanner配置配置到环境变量中
sonar-runner与sonar-scanner类似,不重复写了。
5.项目配置(如图即可):
6.成果