Sonarqube与Gitlab集成

1、Docker安装Sonarqube

docker-compose.yml

version: "3"

services:
  sonarqube:
    image: sonarqube:8.9.7-community
    depends_on:
      - db
    environment:
      SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonar
      SONAR_JDBC_USERNAME: sonar
      SONAR_JDBC_PASSWORD: sonar
    volumes:
      - sonarqube_data:/opt/sonarqube/data
      - sonarqube_extensions:/opt/sonarqube/extensions
      - sonarqube_logs:/opt/sonarqube/logs
    ports:
      - "9000:9000"
  db:
    image: postgres:12
    environment:
      POSTGRES_USER: sonar
      POSTGRES_PASSWORD: sonar
    volumes:
      - postgresql:/var/lib/postgresql
      - postgresql_data:/var/lib/postgresql/data

volumes:
  sonarqube_data:
  sonarqube_extensions:
  sonarqube_logs:
  postgresql:
  postgresql_data:

2、 调整linux系统配置

/etc/sysctl.conf

fs.file-max = 6553560 

kernel.sem =5010 641280 5010 128
net.core.somaxconn=65535
vm.dirty_background_ratio = 5
vm.dirty_ratio = 10
vm.overcommit_memory=1
vm.max_map_count=262144

 配置生效:sysctl -p

3、访问http://x.x.x.x:9000/

默认登录:admin/admin

4、获取Gitlab Personal Access Token(Edit profile) 

5、Sonarqube administration 创建Gitlab集成配置(第4步中创建的Access Token)

6、Sonarqube导入Gitlab项目

 

7、选择Gitlab中的项目

 

 8、生成Sonarqube Gitlab CI中的环境变量

 

 

 9、根据第8步中的Sonarqube信息,配置Gitlab项目中的变量。

 

 10、根据Sonarqube信息,配置Gitlab项目.gitlab-ci.yml文件

 

sonarqube-check:
  image: gradle:jre11-slim
  variables:
    SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar"  # Defines the location of the analysis task cache
    GIT_DEPTH: "0"  # Tells git to fetch all the branches of the project, required by the analysis task
  cache:
    key: "${CI_JOB_NAME}"
    paths:
      - .sonar/cache
  script: gradle sonarqube
  allow_failure: true
  only:
    - master # or the name of your main branch

11、修改项目build.gradle,增加sonarqube插件。

plugins {
    id "org.sonarqube" version "3.4.0.2513"
}

sonarqube {
    properties {
        property 'sonar.projectName', "${project.name}"
        property "sonar.sourceEncoding", "UTF-8"
        property "sonar.sources", "src"
    }
}

12、Git提交修改,合并分支触发CI/CD。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值