我們在我們的數據中心和代理服務器後面安裝了Jenkins服務器。
我們試圖讓該機器在回購站上運行SonarQube掃描儀,並將結果發佈到我們網絡外部的SonarQube服務器(在AWS中)。Jenkins SonarQube掃描儀在代理服務器後面
作業正常啓動聲納掃描儀,但失敗,則嘗試連接到我們的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腳本添加一個簡單的curl
步驟到Jenkins作業,並且已經打到相同的服務器,並且工作正常。
我確定我只是在這裏錯過了一個小小的細節,但我是新來的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
您可以精確地使用您正在使用的掃描儀的版本嗎?我們在最近的版本中對代理做了幾處改進。 –
3.0.1.733(和Jenar 2.6.1的SonarQube掃描儀) – arsdehnel
嘗試將'-Djavax.net.debug = all'傳遞給JVM選項。這將記錄網絡相關的操作。這是非常詳細的,但應該有助於理解發生了什麼。如果你不能「讀」輸出,我建議你在SonarQube用戶組上創建一個新的線程。 SO不適合調查問題。 –