运维进阶-Sonarqube

151 阅读1分钟

代码质量测试工具sonarqube介绍;

官网 www.sonarqube.org

SonarQube介绍:

  • SonarQube 是一个用于代码质量管理的 开放平台,通过插件机制实现对不同语言的 源代码质量扫描,如go、python、java、 python等代码扫描并生成扫描报告,
  • 下载地址: www.sonarqube.org/downloads
  • 支持25种以上的常见编程语言,如java、 pyhton、go、c、JavaScript等。
  • 插件化,便于后期功能扩展。 可视化展示代码分析结果。

SonarServer

  • 将扫描结果存入数据库
  • 然后可视化展示

SonarScanner

  • 对代码进行扫描

SonarQube代码扫描流程

image.png

环境简介(授课环境)

image.png

环境依赖

软件依赖:

  • docs.sonarqube.org/8.9/require…

  • 7.9.x 版本开始不再支持MySQL

    • MySQL No Longer Supported
    • SonarQube no longer supports MySQL. To migrate from MySQL to a supported database, see the free MySQL

    Migrator tool.

  • 不能使用root用户启动SonarQube

    • SonarQube cannot be run as root on Unix-based systems, so create a dedicated user account for SonarQube if necessary.

硬件依赖:

- https://docs.sonarqube.org/8.9/requirements/hardware-recommendations/ 
- CPU、内存、磁盘、网卡、数据库

部署PostgreSQL 14.x

Sonarqube部署、插件管理、实现代码扫描;

Jenkins结合sonarqube实现代码自动扫描