sonar

198 阅读1分钟

安装

安装sonarqube

下载地址:www.sonarqube.org/downloads/

sonarqube依赖数据库即jdk,需要安装数据库及jdk

在.zprofile中修改$PATH,追加 :/usr/local/sonarqube/bin/macosx-universal-64

安装sonar-scanner

下载地址:binaries.sonarsource.com/Distributio…

在.zprofile中修改$PATH,追加 :/usr/local/mysql/bin:/usr/local/sonar-scanner/bin

安装sonarqube plugin for objective c

github.com/Backelite/s…

github.com/raatiniemi/…

全局配置

ALM集成 - github - 创建配置

可使用github app扩展github workflow,将静态分析的结果传递到sonarqube进行展示

配置名称:github app的名称
github网址:https://api.github.com
企业版:https://github.company.com/api/v3
Github应用ID:
客户端ID:
私钥:

github app简介:juejin.cn/post/710009…

项目

项目配置

- 手工进行静态分析工具

  1. 创建令牌
  2. 分析代码

使用infer、oclint等工具进行代码分析

  1. 扫码并展示结果
sonar-scanner \
  -Dsonar.projectKey=demo \
  -Dsonar.sources=. \
  -Dsonar.cfamily.build-wrapper-output=bw-output \
  -Dsonar.host.url=http://127.0.0.1:9000 \
  -Dsonar.login=创建的令牌

- 使用github action作为静态代码分析工具

github ations简介:juejin.cn/post/710014…

  1. 创建令牌
  2. 生成工作流脚本,拷贝到github项目中
  3. 工作流脚本使用了变量,需在github - git仓库 - settings - Security - Secrets - Actions中添加
SONAR_TOKEN:sonarqube项目对应token
SONAR_HOST_URL:sonarqube网址
  1. 操作完成。提交代码到github仓库,github执行工作流脚本生成静态代码分析结果,github app通过webhook传递结果到sonarqube,sonarqube即可展示结果。