[英]Execute SonarQube Scanner within Jenkins 2 Pipeline
我想在Jenkins 2.x管道中執行“SonarQube掃描儀”步驟。
當我嘗試在管道語法中創建一個示例groovy時,我只獲得了以下格式的groovy腳本:
step <object of type hudson.plugins.sonar.SonarRunnerBuilder>
有誰知道什么是正確的步驟語法? 例如發布JUnit報告
step([$class: 'JUnitResultArchiver', testResults: ''])
我使用以下版本:
我想我明白了。 首先,您必須檢索SonarQube掃描儀工具
def sonarqubeScannerHome = tool name: 'SonarQubeScanner', type: 'hudson.plugins.sonar.SonarRunnerInstallation'
然后你可以通過Shell調用聲納掃描儀:
sh "${sonarqubeScannerHome}/bin/sonar-scanner -e -Dsonar.host.url=..."
env.sonarHome= tool name: 'scanner-2.4', type: 'hudson.plugins.sonar.SonarRunnerInstallation'
withSonarQubeEnv('sonar.installation') { // from SonarQube servers > name
sh "${sonarHome}/bin/sonar-runner -Dsonar.host.url=${SONAR_HOST_URL} -Dsonar.login=${SONAR_AUTH_TOKEN} -Dsonar.projectName=xxx -Dsonar.projectVersion=xxx -Dsonar.projectKey=xxx -Dsonar.sources=."
}
相反,你可以提供你的聲納 - 跑步者的完整路徑。 如下面的代碼片段所示。
def runSonarScan(sonar_url){
withEnv(['SONAR_HOST=' + sonar_url]) {
sh '''
$/opt/sonarqube/sonar-runner-2.4/bin/sonar-runner -e -Dsonar.host.url=${SONAR_HOST}
'''
}
}
如果您有特定的聲納屬性,請將它們添加為sonar-project.properties文件,如此處所示的聲納項目屬性
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.