对sonnar来说很新鲜。到目前为止,我已经能够在jenkins中配置我的sonarqube服务器,并使用以下代码运行maven应用程序。
withSonarQubeEnv('sonarserver') {
sh 'mvn clean package sonar:sonar'
} 这将成功运行,并执行分析和maven构建,并生成一个war文件。我还可以在sonarqube页面中看到分析
现在,我正在尝试为.net核心应用程序做同样的事情。我按照这个link安装了sonarscanner
第一步成功运行,我得到了:
dotnet tool install --global dotnet-sonarscanner
Since you just installed the .NET Core SDK, you will need to logout or restart your session before running the tool you installed.
You can invoke the tool using the following command: dotnet-sonarscanner因此,我接下来创建了以下代码:
withSonarQubeEnv('sonarserver') {
sh '''
dotnet-sonarscanner begin /k:"proyject-key" //key was generated in sonarqube x new proj.
dotnet build solution.sln
dotnet-sonarscanner end
'''但现在我得到了:
+ dotnet-sonarscanner begin /k:project-key
/var/lib/jenkins/workspace/sonar-test-dotnet@tmp/durable-00ff368b/script.sh: 3: /var/lib/jenkins/workspace/sonar-test-dotnet@tmp/durable-00ff368b/script.sh: dotnet-sonarscanner: not found
[Pipeline] }
WARN: Unable to locate 'report-task.txt' in the workspace. Did the SonarScanner succeed?发布于 2020-09-25 03:18:55
根据您提到的文档,执行的命令应该是:
dotnet sonarscanner begin /k:"proyject-key" //key was generated in sonarqube x new proj.
dotnet build solution.sln
dotnet sonarscanner end而不是:
dotnet-sonarscanner begin /k:"proyject-key" //key was generated in sonarqube x new proj.
dotnet build solution.sln
dotnet-sonarscanner end将dotnet-sonarscanner替换为dotnet sonarscanner。
发布于 2021-09-06 19:06:00
这个阶段对我来说很有用。
pipeline {
agent any
environment {
PROYECT_FOLDER = 'xxx'
PROYECT_NAME = 'xxx'
PROYECT_TEST_FOLDER = 'xxt'
PROYECT_TEST_NAME = 'Mxxx'
SONAR_KEY_PROYECT = 'xx'
SONAR_URL = 'xxx'
SONAR_LOGIN = 'xx' //Key get from sonnar
}
stages {.
stage('Build + SonarQube analysis') {
environment {
MSBUILD_SQ_SCANNER_HOME = tool name: 'SonaScanner.NetCore'
}
steps {
withSonarQubeEnv('sonarqube') {
sh "dotnet ${MSBUILD_SQ_SCANNER_HOME}/SonarScanner.MSBuild.dll begin /k:'${SONAR_KEY_PROYECT}' /d:sonar.host.url=${SONAR_URL} /d:sonar.login=${SONAR_LOGIN} "
sh "dotnet build ${PROYECT_FOLDER}/${PROYECT_NAME} --configuration Release --no-restore"
sh "dotnet ${MSBUILD_SQ_SCANNER_HOME}/SonarScanner.MSBuild.dll end /d:sonar.login=${SONAR_LOGIN}}"
}
}
}https://stackoverflow.com/questions/64017095
复制相似问题