SonarQube-jenkins
pipeline { agent { node { label "maven" } } options { buildDiscarder(logRotator(numToKeepStr: '3')) } parameters { gitParameter branchFilter: 'origin/(.*)', defaultValue: 'master', name: 'BRANCH', type: 'PT_BRANCH' choice(name: 'Option_parameters', choices: ['false', 'true'], description: '是否开启代码扫描') } stages { stage('代码拉取') { steps { script { checkout scmGit(branches: [[name: "${BRANCH}"]], extensions: [], userRemoteConfigs: [[credentialsId: 'aliyun', url: 'https://codeup.aliyun.com/glr/cems/cems-auth.git']]) } } } stage('代码编译') { steps { script { sh "mvn clean install package -Dmaven.test.skip=true" } } } stage('代码扫描') { when { expression { params.Option_parameters == 'true' } } steps { // 执行 SonarQube 静态代码分析 withSonarQubeEnv('SonarQubeServer') { sh "mvn sonar:sonar" } } } stage('制品上传') { steps { script { sh "cp -rf target/cems-*.jar /mnt" } } } } }