这篇文章主要介绍了通过pipeline配置sonar自动化实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.sonar配置webhooks,
2.url填写jenkins的地址:http://jenkinsurl/sonarqube-webhook/
3.前提:jenkins配置好sonar的scanner服务地址
node { stage('gitcheckout') { echo 'This is a gitcheckout step' checkout poll: false, scm: [$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'git-', url: 'http://gitlab..com/qingzhu-dev/workflow.git']]]}stage('sonar') { echo 'This is a sonar step' def sonarqubeScannerHome = tool name: 'sonar-scanner'echo sonarqubeScannerHomewithSonarQubeEnv('sonar') {sh "${sonarqubeScannerHome}/bin/sonar-scanner -X "+"-Dsonar.host.url=${SONAR_HOST_URL} " +"-Dsonar.language=java " + "-Dsonar.projectKey=workflow " + "-Dsonar.projectName=workflow " + "-Dsonar.projectVersion=$BUILD_NUMBER " + "-Dsonar.sources=src/ " + "-Dsonar.sourceEncoding=UTF-8 " + "-Dsonar.java.binaries=target/ " + "-Dsonar.exclusions=src/test/** " }}stage("QualityGate") {echo 'QualityGate'// timeout(time: 1, unit: "HOURS") { // 防止获取回调出现异常情况,设置超时时间// def qg = waitForQualityGate()// if (qg.status != 'OK') {// error "Pipeline aborted due to quality gate failure: ${qg.status}"// }// }}stage('Build') { echo 'This is a build step'sh "/var/jenkins_home/apache-maven-3.6.0/bin/mvn clean package -U dockerfile:build dockerfile:push -Ptest -D maven.test.skip=true -f pom.xml -Dimage.tag=v$BUILD_NUMBER"}stage('Deploy') { echo 'This is a deploy step' sh "${dp}"}stage('Test') { echo 'This is a test step' checkout poll: false, scm: [$class: 'GitSCM', branches: [[name: '*/qiaojiafei']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'git-', url: 'http://gitlab..com/qz-qa/qingzhucrmtest.git']]]sh '/var/jenkins_home/apache-maven-3.6.0/bin/mvn clean test -DfailIfNoTests=false -Ptest'}
stage('report'){ echo 'This is a report' allure includeProperties: false, jdk: 'jdk1.8', results: [[path: 'allure-results']] sh 'rm -rf allure-report' sh 'rm -rf allure-results' } stage('email'){ emailext body: 'test', subject: 'test', to: 'gexinwei@meizhu365.com' }}
最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。