工作流程图

1 jenkins安装SonarQube Scanner插件

2 jenkins添加SonarQube凭证

 

3 Manage Jenkins->Configure System->SonarQube servers

 4 Manage Jenkins->Global Tool Configuration

 5 SonaQube-web界面中关闭审查结果上传到SCM功能

 6 项目根目录下,创建sonar-project.properties文件

sonar.projectKey=dockerimage_test
sonar.projectName=dockerimage_test
sonar.projectVersion=1.0

sonar.sources=.
sonar.exclusions=**/test/**,**/target/**
sonar.java.binaries=.

sonar.java.source=1.8
sonar.java.target=1.8

sonar.sourceEncoding=UTF-8

7 项目根目录下,创建文件Jenkinsfile,注意引用的名称要和步骤3,4的相同

pipeline {
  agent any
  stages {

    stage('拉取代码') {
        steps {
            checkout([$class: 'GitSCM', branches: [[name: '*/main']], extensions: [], userRemoteConfigs: [[credentialsId: 'gitlab-ssh-user', url: 'git@118.31.52.50:root/dockerimage_test.git']]])
        }
    }

    stage('SonarQube代码审查') {
        steps {
            script {
                scannerHome = tool 'SonarQube-Scanner'
            }
        withSonarQubeEnv('SonarQube7.4') {
            sh "${scannerHome}/bin/sonar-scanner"
        }
      }
    }

    stage('代码打包编译') {
        steps {
            sh "mvn clean package -DskipTests"
        }
    }

  }
}

8 故意写些有问题的代码,在jenkins中新建项目,在构建的过程中,看日志,可以看到sonar 的链接,点进行就可以看到sonar的审查代码的情况

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐