代理商背后的Jenkins SonarQube扫描仪
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代理商背后的Jenkins SonarQube扫描仪相关的知识,希望对你有一定的参考价值。
我们在数据中心和代理后面安装了Jenkins服务器。 我们试图让该机器在repo上运行SonarQube Scanner并将结果发布到我们网络外部的SonarQube服务器上(在AWS中)。
该作业正确启动Sonar Scanner,但在尝试连接到SonarQube服务器时失败:
22:12:31.612 DEBUG: keyStore is :
22:12:31.613 DEBUG: keyStore type is : jks
22:12:31.613 DEBUG: keyStore provider is :
22:12:31.613 DEBUG: init keystore
22:12:31.613 DEBUG: init keymanager of type SunX509
22:12:31.682 INFO: User cache: /zdata/jenkins/.sonar/cache
22:12:31.683 DEBUG: Extract sonar-scanner-api-batch in temp...
22:12:31.687 DEBUG: Get bootstrap index...
22:12:31.687 DEBUG: Download: http://my-sq-server.com/batch/index
22:12:31.713 ERROR: SonarQube server [http://my-sq-server.com] can not be reached
我读了Sonar Runner Behind a Proxy并尝试将这些值放在JVM选项部分和附加选项部分,但它们似乎没有任何区别。
为了解决这个问题,我只是通过一个bash脚本向Jenkins工作添加了一个简单的curl
步骤,然后点击同一个服务器并且工作正常。
我确定我只是错过了一些小细节,但我是SQ的新手并不知道还有什么要看的。
UPDATE
目前的输出显示如下:
/zdata/jenkins/tools/hudson.plugins.sonar.SonarRunnerInstallation/scanner-3.0.1.733/bin/sonar-scanner -Dhttp.proxyHost=proxy.hostname.com -Dhttp.proxyPort=8080 -e -Dsonar.host.url=http://my-sonarqube-server.com ******** -Dsonar.sourceEncoding=UTF-8 -Dsonar.sources=. -Dsonar.language=js -Dsonar.exclusions=__tests__/**,**/node_modules/**,coverage/** -Dsonar.projectVersion=1.0 -Dsonar.projectKey=repo-key -Dsonar.verbose=true -Dsonar.javascript.lcov.reportPath=coverage/lcov.info -Dsonar.tests=__tests__ "-Dsonar.projectName=Project Name" -Dsonar.projectBaseDir=/zdata/jenkins/workspace/my-project
检查您的代理是否需要身份验证:您可能需要添加
-Dhttp.proxyUser=username -Dhttp.proxyPassword=password
确保您的代理作为代理服务器名称引用,而不使用http://
:
-Dhttp.proxyHost=myproxy (not -Dhttp.proxyHost=http://myproxy)
以上是关于代理商背后的Jenkins SonarQube扫描仪的主要内容,如果未能解决你的问题,请参考以下文章
Jenkins 使用 SonarQube 扫描 Coding
SonarQube 9.x与Jenkins进行集成并扫描后端java以及前端vue代码;
SonarQube 7.9.1 无法扫描通过 Jenkins 运行的 .net 项目的 .cs 和 sql 文件