maven - 如何为 Jenkins Kubernetes 插件 SunCertPathBuilderException 创建的 jenkins pod slaves 配置具有可信证书的密钥库
问题描述
我正在使用 Jenkins Kubernetes 插件来配置运行 Java 项目构建管道的不同任务的从属代理 (pod)。
管道阶段之一包括使用 Sonarqube 分析 Java 代码:
try {
withSonarQubeEnv('SONARQUBE_CFG') {
sh "./mvnw org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar -Dsonar.branch=$branch -Dsonar.verbose=true"
}
} catch (ex) {
ex.printStackTrace()
}
问题是我收到 SunCertPathBuilderException 因为它无法验证证书链。
[ERROR] SonarQube server [https://sonarqube.profile.es] can not be reached
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 19.894 s
[INFO] Finished at: 2018-10-11T16:45:10Z
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) on project myproject: Unable to execute SonarQube: Fail to download libraries from server: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target -> [Help 1]
我已经从路径的 jenkins slave pod 中的配置映射中安装了密钥库,/cfg/keystore.jks
但无法想出一种方法来强制使用该密钥库。想法?
解决方案
您的问题不是证书错误。您的服务器根本无法访问。
- 开了吗?
- 你能从你的詹金斯服务器/pod ping 它吗?
- 是否为詹金斯打开了必要的端口才能到达它?(得谷歌这个)
推荐阅读
- date-range - Google Data Studio:如何在日期范围过滤器中仅选择一天
- vhdl - FPGA中数据传输的设计模式
- wordpress - Wordpress - 使用 previous_post_link() 和 next_post_link() 时删除分隔符
- amazon-web-services - 如何在 Docker 上获取 AWS 凭证和访问 S3
- r - 有没有办法让 ggplot 图例调整到它所在视口的宽度和长度?
- json - 如何使用 JSON 为 Rust 设置自定义目标三元组?
- javascript - 导致钩子对象更新时重新渲染的最佳方法
- python - 使用多个按钮重定向到不同页面的视图
- javascript - Javascript 未通过应用或调用将其设置为值
- html - 打开 Bootstrap 模态时的问题