SonarQube是量检一款静态代码分析、代码质量度量和漏洞检测的微服务部开源代码质量管理平台,它提供了许多功能,署配包括静态代码分析、行代代码覆盖率、码质复杂度分析、量检漏洞检测等。微服务部SonarQube可以集成到许多流行的署配编程语言和集成开发环境中,帮助开发人员创建高质量的行代软件项目。SonarQube以及依赖环境软件的码质安装已经在此系列文章的第一篇写过,这里只介绍如何配置和使用Jenkins+SonarQube进行代码质量检查。量检
流水线脚本如下:
node { def mvnHome stage('Preparation') { // for display purposes // Get some code from a GitHub repository echo "checkout from GitLab" checkout scmGit(branches: [[name: '*/main']], extensions: [], userRemoteConfigs: [[credentialsId: 'git_username', url: 'http://127.0.0.1:9091/test/test.git']]) // Get the Maven tool. // ** NOTE: This 'M3' Maven tool must be configured // ** in the global configuration. mvnHome = tool 'maven_j' } stage('SonarQube Analysis') { echo "sonar test code" withEnv(["MVN_HOME=$mvnHome"]) { withSonarQubeEnv() { sh "'$MVN_HOME/bin/mvn' clean verify sonar:sonar -Dsonar.projectKey=sonarTest -Dsonar.projectName='Sonar质量检查'" } } } stage('Build') { echo "build test code" // Run the maven build withEnv(["MVN_HOME=$mvnHome"]) { if (isUnix()) { sh '"$MVN_HOME/bin/mvn" -Dmaven.test.failure.ignore clean package' } else { bat(/"%MVN_HOME%\bin\mvn" -Dmaven.test.failure.ignore clean package/) } } } stage('Results') { echo "end sonar testcode" //junit '**/target/surefire-reports/TEST-*.xml' // archiveArtifacts 'target/*.jar' }}
(责任编辑:时尚)
大别山革命老区正式迎来“高铁时代” 黄黄高铁正线全长126.85公里
西部数据扩展闪存产品组合,助力ZB时代以数据为中心的存储架构不断发展
568万元!四川省攀枝花市获省建筑领域绿色低碳循环发展专项资金支持
鑫科材料(600255.SH):向激励对象授予股票期权4969万份 行权价格为2.38元/份