代理商背后的Jenkins SonarQube扫描仪

问题描述 投票:2回答:1

我们在数据中心和代理后面安装了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

jenkins proxy sonarqube sonarqube-scan
1个回答
3
投票

检查您的代理是否需要身份验证:您可能需要添加

-Dhttp.proxyUser=username -Dhttp.proxyPassword=password

确保您的代理作为代理服务器名称引用,而不使用http://

-Dhttp.proxyHost=myproxy (not -Dhttp.proxyHost=http://myproxy)
© www.soinside.com 2019 - 2024. All rights reserved.