pipeline {
agent any
stages {
stage('SonarQube Scan') {
steps {
dir('/export/sonar-scanner/bin') {
sh './sonar-scanner -e -Dsonar.host.url=http://localhost:9000 -Dsonar.scm.disabled=true -Dsonar.language=java -Dsonar.projectName=ai-content-adapter -Dsonar.projectVersion=1.0.0 -Dsonar.projectKey=ai-content-adapter -Dsonar.sources=/export/jenkins/workspace/ai-content-adapter -Dsonar.projectBaseDir=/export/jenkins/workspace/ai-content-adapter -Dsonar.java.binaries=target/sonar -Dsonar.java.binaries=src'
}
}
}
stage('Send Email') {
steps {
script {
sh 'rm -f ${JOB_NAME}.pdf'
sh "wget http://192.168.180.251:9000/api/pdfreport/get?componentKey=${sonar_url} -O ${JOB_NAME}.pdf"
sh 'echo "${JOB_NAME}-第${BUILD_NUMBER}次代码扫描报告" > mail.txt'
sh 'echo "项目名称:${JOB_NAME}" >> mail.txt'
sh 'echo "构建编号:第${BUILD_NUMBER}次构建" >> mail.txt'
sh 'echo "代码路径:${WORKSPACE}" >> mail.txt'
sh 'echo "构建日志:${BUILD_URL}consoleText" >> mail.txt'
sh 'echo "构建Url:${JOB_URL}" >> mail.txt'
sh "echo 'SonarQube-PDF报告下载地址:${BUILD_URL}artifact/${JOB_NAME}.pdf' >> mail.txt"
sh "sudo mail -s '=?UTF-8?B?`echo ${JOB_NAME}第${BUILD_NUMBER}次代码扫描报告 | base64`?=' ${send1},${send2},${send3},${send4},${send5} < mail.txt"
}
}
}
}
}