先说下代码检视的好处
- 让开发人员得到成长
- 将代码质量提升形成可量化的数据
- 提前发现bug节约成本
sonarqube docker搭建方法
本文介绍的搭建方法是使用docker的形式搭建,简单易学
1.拉取镜像,默认都是从 DockerHub 拉取
-
docker pull postgres
拉取数据库 -
docker pull docker.io/lu566/sonarqube-zh:7.7
拉取sonarqube中文版
2.启动镜像
- 启动 postgres
docker run --name db -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres
- 启动 sonarqube 中文版
docker run --name sq --link db -e SONARQUBE_JDBC_URL=jdbc:postgresql://db:5432/sonar -p 9000:9000 -d docker.io/lu566/sonarqube-zh:7.7
至此环境已搭建完毕
使用
浏览器访问 http://localhost:9000 用admin/admin 登录
golang配置与使用
使用参考:https://docs.sonarqube.org/display/PLUG/SonarGo
1.在sonarqube页面上新建项目,如图创建完项目后按照图示红色框内先下载扫描工具,再复制扫描命令
2.在待扫描的项目根目录下创建文件 sonar-project.properties,文件内容如下:
简单:
sonar.sources=.
sonar.exclusions=**/*_test.go,**/vendor/**
sonar.language=go
sonar.tests=.
sonar.test.inclusions=**/*_test.go
sonar.test.exclusions=**/vendor/**
复杂:
sonar.host.url=http://172.31.16.127:9000
sonar.sourceEncoding=UTF-8
sonar.login=admin
sonar.password=admin
sonar.projectKey=uchains
sonar.projectName=uchains
sonar.projectVersion=1.0
sonar.golint.reportPath=report.xml
sonar.coverage.reportPath=coverage.xml
sonar.coverage.dtdVerification=false
sonar.test.reportPath=test.xml
sonar.sources=./
sonar.sources.inclusions=** /** .go
sonar.sources.exclusions=** /** _test.go,** /vendor/ * .com/ ** ,** /vendor/* .org/** ,** /vendor/**
sonar.tests=./
sonar.test.inclusions=** /** _test.go
sonar.test.exclusions=** /vendor/* .com/** ,** /vendor/* .org/** ,** /vendor/**
3.在项目目录下执行复制的命令
sonar-scanner \
-Dsonar.projectKey=demo \
-Dsonar.sources=. \
-Dsonar.host.url=http://172.31.16.127:9000 \
-Dsonar.login=a931bfa90418d4b4bceec6b4714426e619263304
执行效果图(只截图了结尾部分):
如上所示,成功后登录sonarqube页面就能看到如下分析概览,可以点进去查看详细
//如遇到问题欢迎留言