我有一个运行Jenkins(2.155.1)的Docker容器,另一个运行SonarQube(7.4)的Docker容器。Jenkins正在为Jenkins插件使用SonarQube扫描仪,扫描是在Jenkins容器上完成的。项目的JenkinsFile
如下所示:
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'building...'
}
}
stage('Test') {
steps {
echo 'testing...'
withSonarQubeEnv ('SonarQube') {
sh '/var/jenkins_home/sonar-scanner/sonar-scanner-3.2.0.1227-linux/bin/sonar-scanner'
}
echo 'really finished testing2'
}
}
stage("Quality Gate") {
steps {
timeout(time: 1, unit: 'MINUTES') {
waitForQualityGate abortPipeline: true
}
}
}
stage('Deployment') {
steps {
echo 'deploying...'
}
}
}
}
为了使扫描作为Jenkins管道作业的一部分工作,我在Jenkins容器上手动安装了sonar-scanner
,方法是下载zip文件并将其解压缩到:/var/jenkins_home/sonar-scanner/sonar-scanner-3.2.0.1227-linux
这很有效,但我想通过以下方法来改进它:
Jenkinsfile
声纳扫描仪
的harcoded路径
sonar-scanner的非本地位置
,因为我现在需要在另一个VM/容器上而不是在Jenkins容器上运行扫描我尝试使用Manage Jenkins>Global Tool Configuration>SonarQube Scanner并更新了我的JenkinsFile
以使用sonar_runner_home
而不是硬编码路径,但这不起作用,我得到了一个错误,即无法找到sonar-scanner
。
在管理詹金斯>全局工具配置>SonarQube扫描仪检查自动安装
中。
名称应与Jenkinsfile中的参数相同:withsonarqubeenv('sonarqube')
我正在尝试从我的jenkins节点运行soanrQube扫描,Sonar scanner版本是SonarQube scanner 3.1.0.1141,SonarQube服务器是SonarQube服务器5.6.4。得到以下错误,有谁能在这方面帮助我。
问题内容: 我想在Jenkins 2.x管道中执行“ SonarQube扫描仪”步骤。 当我尝试在管道语法中创建示例groovy时,我仅得到以下格式的groovy脚本: 有谁知道正确的步骤语法?例如,发布JUnit报告看起来像 我使用以下版本: 詹金斯2.11 SonarQube扫描仪2.6.1 SonarQube插件2.4.1 问题答案: 我想我明白了。首先,您必须检索SonarQube扫描仪工
我有两个。NET解决方案,一个在。NET5中,另一个在。NET Classic 4.7.2中。每个解决方案都有单独的Jenkins构建作业。每个工作还使用Sonarqube的MSBuild扫描器分析解决方案。 我正在使用SonarQube服务器8.5版 .NET扫描程序5 .NET扫描程序4.7.2 在Jenkins中,当.NET 5构建运行时,发出 ,同时如果我执行另一个.NET经典构建,则后一
当我尝试在Jenkins build中执行SonarQube Scanner时,出现以下错误: 我可以从Jenkins主机访问以下URL:http://:9000/sonar/。当我尝试执行此操作时: 我得到了同样的404超文本传输协议错误作为回应。我不知道这个URL后缀 /batch/index来自哪里。网络搜索没有给出任何线索。 我的声纳版本是6.0。我的Jenkins声纳扫描仪插件版本是2.
我正在使用Jenkins为我的.NET项目(C#)运行SonarQube。 使用MsBuild:MsBuild版本:MsBuild 4.6 MsBuild文件:ci.sln命令行参数:/p:configuration=release/target:Build构建Visual Studio项目或解决方案 用于MSBuild-End分析的SonarQube扫描器 我可以为Visual Studio20