Jenkins git 插件:无法识别 Peer 的证书颁发者

Zar*_*tra 3 git ssl jenkins

在尝试连接到通过 https 托管的存储库时,我在使用 jenkins git 插件时遇到了问题。

Baue in Arbeitsbereich /opt/jenkins/jobs/TestJob2/workspace
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://my.host.de/group/project # timeout=10
Fetching upstream changes from https://my.host.de/group/project
 > git --version # timeout=10
using GIT_ASKPASS to set credentials Jenkins at my.host.de
 > git fetch --tags --progress https://my.host.de/group/project +refs/heads/*:refs/remotes/origin/*
ERROR: Error fetching remote repo 'origin'
hudson.plugins.git.GitException: Failed to fetch from https://my.host.de/group/project
    at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:766)
    at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1022)
    at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1053)
    at hudson.scm.SCM.checkout(SCM.java:485)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1269)
    at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:607)
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:529)
    at hudson.model.Run.execute(Run.java:1738)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:98)
    at hudson.model.Executor.run(Executor.java:410)
Caused by: hudson.plugins.git.GitException: Command "git fetch --tags --progress https://my.host.de/group/project +refs/heads/*:refs/remotes/origin/*" returned status code 128:
stdout: 
stderr: fatal: unable to access 'https://my.host.de/group/project/': Peer's Certificate issuer is not recognized.

    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1709)
    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1438)
    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:63)
    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:314)
    at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:764)
    ... 11 more
ERROR: null
Finished: FAILURE
Run Code Online (Sandbox Code Playgroud)

我无法使用 SSH。证书没问题,一切看起来都很棒。

curl -Lv 不显示任何错误。

通过 ssh 登录时,我可以在本地计算机上克隆存储库,也没有错误消息。

我要换的开关在哪里?

http.sslVerify用户 jenkins 正在运行时,我可以在将 git 属性设置为 false时更改此行为,但这只是一种解决方法。

ako*_*nov 5

我只是花了一个小时调查这样的问题。我测试的是,在 master 上一切正常,自定义 CA 被配置到系统中。不幸的是,我花了一些时间才意识到所有奴隶都需要安装适当的 gitconfig 或 CA 证书才能工作。