Sonarqube 安装配置

  1. 首先安装好sonarQube

1.本项目采用sonar的6.7.1版本,由于sonar不同版本的rest接口差异性比较大,请不要随意变更版本。(7开头版本不支持mysql,请安装postgresql)

2.请记录好sonar管理员账号密码,后续需要配置,一般使用admin账号

目前开发测试环境sonar http://10.86.42.196:9000 admin admin123

预发布环境:http://10.86.130.11:9000 admin admin123

3.sonar的安装启动最好不要用root账号,最好新建一个用户进行操作,不然会报权限问题

  1. 修改sonar配置

1.打开sonar目录下的sonar.properties文件,添加sonar的数据库信息

sonar.jdbc.username=sonar

sonar.jdbc.password=*******

sonar.jdbc.url=jdbc:mysql://10.12.14.22:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

2.同时,打开 sonar的sso登录,这样后续我们就可以通过header添加信息实现免登录

sonar.web.sso.enable=true

 

  1. 安装sonar-scanner

在联网情况下,从

https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner

下载sonar-scanner,解压到对应目录

 

  1. Jenkins关联sonar-scanner

1.进入Jenkins的配置中心-插件管理,安装sonar-scanner的插件

uploading.4e448015.gif正在上传…重新上传取消

2.进入Jenkins的系统管理-系统设置,进行配置sonar配置

uploading.4e448015.gif正在上传…重新上传取消

其中高版本的sonar需要填入tokens,我们可以登录sonar,进入我的账号,填入口令,直接生成token,将生成的token填入jenkins配置即可

uploading.4e448015.gif正在上传…重新上传取消

 

3.进入Jenkins的系统管理-全局工具配置,进行配置sonar-scanner配置,填入sonar-scanner的安装目录即可

uploading.4e448015.gif正在上传…重新上传取消

4.由于我们采用的是pipeline的方式进行代码检查,我们需要等待sonar检查完毕,调用waitForQualityGate()方法进行等待回调,因此,我们需要在sonar中填写Jenkins的回调地址,登录进入sonarQube,找到web-hook,填写Jenkins的回调地址,后续安装只需在此基础上修改ip和即可。

uploading.4e448015.gif转存失败重新上传取消

  1. Sonar免登录配置

 安装nginx,配置sonar的请求路径,通过拦截url中的ticket,然后在header添加login信息实现sonar免登录

server{

       listen       10000;

       server_name  10.86.42.196 127.0.0.1 localhost;

       location /{   

                     proxy_set_header X-Forwarded-Login "$arg_ticket";

           proxy_set_header X-Forwarded-Name "$arg_ticket";   

                     proxy_pass http://10.86.42.196:9000;

              }     

}

 

 

你可能感兴趣的:(devops)