前端项目接入 SonarQube
先在本地用 Docker 跑个 Sonar
1 | docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true -p 9000:9000 sonarqube:latest |
进入 http://localhost:9000 , 一开始打不开,原因是开了nginx,关掉就好了
默认的登录账号/密码是 admin/admin
创建一个新项目
选择 JavaScript 语言,生成 token(需要保存下来),然后运行:
1 | sonar-scanner \ |
需要安装 sonar-scanner
,Mac 上的话可以用 homebrew
安装:
1 | brew install sonar-scanner |
之后就可以看到自动生成的报告了。
ESLint
Sonar
文档里提到通过插件的方式引入自定义 rules
的方式已经被放弃了,所以需要自己在项目中配置完 ESLint
并生成一份报告,再传给 Sonar
。
配置完后运行:
1 | eslint -f json -o report.json . |
然后进入 Sonar
的UI界面,进入 Project Setting
-> General Settings
-> External Analyzers
,找到 JavaScript 下的 ESLint Report Files,填写 report.json
。
再次运行 sonar-scanner
的时候就会带上 ESLint
的报告了。