SonarQube 扫描仪是否支持 BlueOcean 管道插件,无需 maven 和 docker,如果支持,脚本在 Jenkinsfile 中如何工作?
我是 Jenkins 和 BlueOcean 的新手,并且已经尝试了所有可用的基本可能方面。
如果 SonarQube 插件确实支持声明式:
pipeline {
agent any
stages {
stage('SonarQube analysis') {
tools {
sonarQube 'SonarQube Scanner 2.8'
}
steps {
withSonarQubeEnv('SonarQube Scanner') {
sh 'sonar-scanner'
}
}
}
}
}
我们不能说SonarQube扫描仪支持或不支持蓝海。 BlueOcean 是一个表示层,显示各阶段提供的数据(例如:日志)。
SonarQube 扫描仪生成日志,因此 BlueOcean 可以显示它。我不认为这种关系可以被归类为“支持”。
EDIT:
您可以使用以下代码在声明式管道中执行分析:
pipeline {
agent any
stages {
stage('Build') {
steps {
def scannerHome = tool 'SonarQubeScanner3'
withSonarQubeEnv('SonarQube') {
sh "${scannerHome}/bin/sonar-scanner"
}
}
}
}
}
您还添加了 SonarQube 服务器Manage Jenkins → Configure System → SonarQube servers
:
和 SonarQube 扫描仪Manage Jenkins → Global Tool Configuration → SonarQube Scanner
:
名称:
- 服务器必须与中使用的相同
withSonarQubeEnv
(在我的示例中,它等于“SonarQube”)
- 扫描仪工具必须与中使用的相同
tool
(在我的示例中,它等于“SonarQubeScanner3”)
您还必须选中复选框Enable injection of SonarQube server configuration as build environment variables
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)