Git+Jenkins+Sonarqube的使用
工具解释:
Git:版本控制、代码托管。放代码的地方。
Jenkins:持续集成工具。自动化部署,配置好后,一键部署,不需要在本地打包、上传、重启等等。
Sonarqube:代码质量管理工具。用来检测代码,能检查出写的代码存不存在Bug、有没有写重复代码、有哪些可以优化等等。
协作流程图:
每个项目创建两个构建任务———检查任务与部署任务。检查任务用于检查代码,部署任务用于将代码部署到服务器上。
整个流程:
检查任务:将代码提交到Git,登陆Jenkins,开始构建检查任务,这时Jenkins就会开始使用Git插件将代码克隆至Jenkins的工作目录,克隆成功后开始使用sonar-scanner(Sonarqube的工具)插件连接至Sonarqube服务器进行代码检查,检查完成后Jenkins将任务状态修改为构建成功。检查任务完成后,登陆Sonarqube Web端,查看此次检查任务的报告。
部署任务:当查看检查任务报告后,代码存在问题,则需要修改自己写的代码了。如果代码不存在问题或问题可忽略则进行构建部署任务。此处介绍Java+Maven+Tomcat部署,从git上克隆代码,使用Maven命令打包,打包完成后,使用Deploy插件连接Tomcat,将打包好的.war包发送至Tomcat,Tomcat接收到包后放入webapps目录中,Tomcat热部署会自动加载.war包。Deploay成功后Jenkins将任务状态修改为构建成功。
项目配置:
在每个项目的根目录下,新建一个sonar-project.properties文件。输入以下内容
sonar.projectKey=项目名
sonar.language=扫描的语言,如(java、php,默认的是java)
sonar.projectName=项目名
sonar.projectVersion=项目版本,可以就写个1.0
sonar.sources=./ #这个是项目扫描的资源路径,./是扫描全项目。
sonar.java.binaries=./ #这个是打包后的路径,由于我们还没检查代码还没有打包,所以就用这个./参数吧。
检查任务配置:
1、进入首页,点击新建视图
2、输入创建的视图名称,最好是项目名称
3、新建检查任务
4、输入任务名,最好是项目名-scanner,便于区分
5、输入git配置信息,在构建模块里选择Execute SonarQube Scanner
git配置
账号信息配置
Execute SonarQube Scanner,选择一个jdk即可
6、保存,检查任务配置完成。点击立即构建可以开始检查代码。点击后几秒后左下角会有一个进度条出现,红色为出错,蓝色为成功。成功后点击中间的SonarQube即可跳转至此次检查的检查报告下。
部署任务配置:
1、新建一个Maven任务。(记得是在当前项目的视图下创建)
2、Git配置(暂时没找到两个任务共享文件的方法,只能再拉一次代码)同上
3、build
package -Dmaven.test.skip=true
4、构建后操作,选择Deploy war/ear to a container 。其中Containers的Tomcat的账号密码的在Tomcat里设置,必须要有一个有Deploy权限的账户,详细操作可百度。Tomcat Url能用内网地址就用内网地址,内网传输快。
5、保存,构建即可部署。此任务可能存在版本或者环境上的问题。可在Console Output里查看日志,如有错误,可根据错误的日志进行排查。
视图上的两个任务:
对上述发现有错误、有疑问的可以找我。