詹金斯管道工作建设

时间:2017-07-31 16:48:36

标签: jenkins sonarqube jenkins-plugins jenkins-pipeline sonarqube-scan

我正在尝试构建Jenkins管道作业。我试图将sonarqube扫描仪配置放入Jenkins管道作业的Groovy脚本中。 Sonarqube configurations in Jenkins Pipeline Job Groovy Script

但是当我建立上述工作时,我得到以下错误 - Error

当我参考Sonarqube文档与Jenkins Pipeline作业集成时,我没有得到关于设置sonarqube属性的信息,否则我们必须通过添加步骤来设置 - "执行sonarqube扫描仪"

enter image description here

任何人都可以帮助我们知道如何在jenkins管道作业中设置Sonarqube属性,否则我们可以在Mane中指定或Jnekins中的Freestyle作业类型(如上图所示)。 感谢。

现在我更改了Jenkins管道作业配置的Groovy脚本 - enter image description here

现在我收到了错误 -

enter image description here

有人可以帮助我解决上述问题。

2 个答案:

答案 0 :(得分:3)

在我的情况下,配置文件始终位于应用程序存储库中,然后从jenkins作业调用为$ WORKSPACE / sonar-project.properties

该文件的内容是(示例):

# Required metadata
sonar.projectKey=<project-key>
sonar.projectName=<project-name>
sonar.projectVersion=<project-version>

# Comma-separated paths to directories with sources (required)
sonar.sources=src
sonar.exclusions=src/vendor/**/*

# Language
sonar.language=php

# Encoding of the source files
sonar.sourceEncoding=UTF-8

sonar.php.coverage.reportPath=src/coverage-clover.xml #change path to location of your test report
sonar.php.tests.reportPath=src/unitreport.xml  #change path to location of your test report

在Jenkins / Global工具配置中,您必须添加Sonarqube扫描仪,如下所示:

enter image description here

在管理Jenkins / Configure系统中,您必须添加如下配置的Sonarqube服务器“redated Sonarqube”:

Sonarqube config example

在工作本身你有:

def scannerHome = tool 'azure-tools-sonarqube'  #This is the scanner you added

withSonarQubeEnv('redacted Sonarqube') {  #This is the server you added
  sh "${scannerHome}/bin/sonar-scanner"
}

答案 1 :(得分:1)

发生unsupported major.minor version错误是因为您没有使用Java 1.8运行 你可以在所有从站上加倍Java版本1.8,包括Jenkins运行的主站吗? sonar-scanner需要Java 1.8,而您的JAVA_HOME变量必须指向该值。