0

我最初在使用 SonarCloud.io 扫描我的存储库时遇到问题我正在使用 sonar-scanner.4.2 由于代理问题我无法连接到 SonarCloud.io 但我在添加 SONAR_SCANNER_OPTS='-Dhttps.proxyHost=* 时修复了它***** -Dhttps.proxyPort=****' 在我的詹金斯文件的环境部分。

environment {
        SONAR_SCANNER_OPTS='-Dhttps.proxyHost=****** -Dhttps.proxyPort=****'
}

  stage('SonarCloud analysis') {
    withSonarQubeEnv('My SonarQube Cloud') {
      sh 'mvn clean package sonar:sonar'
    }
  }
}
stage("Quality Gate"){
  timeout(time: 1, unit: 'HOURS') {
    def qg = waitForQualityGate() 
    if (qg.status != 'OK') {
      error "Pipeline aborted due to quality gate failure: ${qg.status}"
    }
  }
} 

现在我有同样的问题,但函数 waitForQualityGate() 返回错误

下面找到错误:

java.net.SocketException:连接重置原因:java.lang.IllegalStateException:请求失败https://sonarcloud.io/api/ce/task?id= ********

我如何使用该功能设置代理,或者这可能是另一个问题。

4

1 回答 1

0

设置代理的一种方法是您可以用Env 包装步骤并在那里设置代理

withEnv(["HTTP_PROXY=${proxyHost}:${proxyPort}",
         "HTTPS_PROXY=${proxyHost}:${proxyPort}") {
      timeout(time: 1, unit: 'HOURS') {
      def qg = waitForQualityGate() 
      if (qg.status != 'OK') {
        error "Pipeline aborted due to quality gate failure: ${qg.status}"
      }
   }
}
于 2020-02-08T17:19:03.550 回答