• SonarQube


    简介

    SonarQube 是一个用于管理代码质量的开放平台,可以快速的定位代码中潜在的或者明显的错误。目前支持java,C#,C/C++,Python,PL/SQL,Cobol,JavaScrip,Groovy等二十几种编程语言的代码质量管理与检测。

    环境

    CentOS 7
    JDK 11
    Postgresql 9.6

    创建用户

    groupadd sonarqube
    useradd -g sonarqube sonarqube

    优化参数

    ulimit -n  65535
    sysctl -w vm.max_map_count=262144

    安装postgresql

    yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
    yum install postgresql96-server
    ​
    /usr/pgsql-9.6/bin/postgresql96-setup initdb
    ​
    systemctl enable postgresql-9.6
    systemctl start postgresql-9.6
    # psql -V
    psql (PostgreSQL) 9.6.18

    创建数据库和用户,并把数据库分配给该用户,并授予权限

    su - postgres
    psql -U postgres
    ​
    create database sonarqube;
    create user sonarqube;
    alter user sonarqube with passwor 'sonarqube';
    alter role sonarqube createdb;
    alter role sonarqube superuser;
    alter role sonarqube createrole;
    alter database sonarqube owner to sonarqube;
    q
    exit

    修改配置文件/var/lib/pgsql/10/data/pg_hba.conf

    /var/lib/pgsql/9.6/data
    
    local   all             all                                     trust
    host    all             all             0.0.0.0/0               trust

    安装SonarQube

    版本:sonarqube-7.9.3
    unzip sonarqube-7.9.3.zip
    mv sonarqube-7.9.3 /data/sonarqube
    chown -R sonarqube.sonarqube /data/sonarqube

    修改配置文件

    vim /data/sonarqube/conf/sonar.properties
    ​
    sonar.jdbc.username=sonarqube
    sonar.jdbc.password=sonarqube
    sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube

    启动sonarqube

    启动
    su sonarqube /data/sonarqube/bin/linux-x86-64/sonar.sh start
    查看状态
    su sonarqube /data/sonarqube/bin/linux-x86-64/sonar.sh status
    停止
    su sonarqube /data/sonarqube/bin/linux-x86-64/sonar.sh stop
    查看日志
    
    /data/sonarqube/logs

    登入

     

    汉化

    重启sonarqube

     

    Jenkins集成SonarQube

    安装插件

    管理Jenkins->插件管理

    SonarQube Scanner

     

    生成SonarQube Token

    创建项目->生成Token

    保存生成的Token

     

    添加jenkins凭证

     

    配置jenkins 的sonarqube server

    管理Jenkins -> 系统设置

    配置Sonarqube scanner

    Jenkins 构建Job时代码扫描

    Post Steps配置项中点击:Add post-build step,然后选择:Execute SonarQube Scanner

    这里我们只需要在Analysis properties中配置sonar扫描的参数即可

    sonar.projectKey=com.pinbei.pb-dubbo-user.pb-user-core
    sonar.projectName=pb-user-core
    sonar.projectVersion=1.0
    sonar.sources=pb-dubbo-parent/pb-dubbo-user/pb-user-core/src
    sonar.java.binaries=pb-dubbo-parent/pb-dubbo-user/pb-user-core/target/classes
    sonar.language=java
    参数项说明
    sonar.projectKey 项目Key,需要唯一,建议使用GroupId+ArtifactId
    sonar.projectName 项目名称,跟ArtifactId保持一致即可
    sonar.projectVersion 项目版本,跟pom.xml保持一致即可
    sonar.sources 源码目录,Java项目默认就是src,如果项目有多个module,那就需要配置为{moduleDirectory}/src
    sonar.java.binaries 编译产出的classes目录,如果项目有多个module,那就需要配置为{moduleDirectory}/target/classes

    构建和扫描

  • 相关阅读:
    浅谈数论
    浅谈数论
    bzoj2190 [SDOI2008]仪仗队
    bzoj2190 [SDOI2008]仪仗队
    35.QQ大数据模型
    34.函数指针数组和多线程
    33.函数指针相关问题
    32.分配数组的方式
    31.内存分配四大函数以及栈上分配内存
    30.锯齿数组
  • 原文地址:https://www.cnblogs.com/bigberg/p/13575685.html
Copyright © 2020-2023  润新知