【发布时间】:2017-07-13 00:02:55
【问题描述】:
我有一个 RedHat 主节点和一个 Windows 从节点。 Jenkins (v2.46) 安装在同一个 RedHat 盒子上。 我在 Windows 从属节点上运行作业时遇到异常。在主节点上执行的作业没有问题地执行。值得一提的是,这只是在升级(以及其他)这些插件之后才开始:
- v2.1.13 的凭据插件
- git 客户端插件到 v2.4.4
- git 插件到 v3.3.0
- ssh 凭证插件到 v1.13
- ssh 从属插件到 v1.17
我已经阅读了许多类似的问题,并尝试并检查了大多数建议的解决方案,但似乎没有一个能解决我的问题。 我尝试过的解决方案涉及检查 Windows 框上的凭据,因此我已经验证了这些: 我已经在 Windows 机器上检查过,我在 jenkins 用户帐户的用户主目录中有包含正确文件(和内容)的 .ssh 文件夹。 如果我在 Windows 机器上手动克隆存储库(即在 Git Bash 中使用 git clone 命令),它不会要求我提供 jenkins 凭据,它会成功克隆存储库。这两个都让我相信本地凭据不是问题。
Fetching upstream changes from git@BBB.git
> git --version # timeout=10
using GIT_SSH to set credentials Jenkins SSH for cloning from git repositories.
> git fetch --tags --progress git@BBB.git +refs/heads/*:refs/remotes/origin/* --prune --depth=1
ERROR: Error fetching remote repo 'origin'
hudson.plugins.git.GitException: Failed to fetch from git@BBB.git
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:809)
at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1076)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1107)
at hudson.scm.SCM.checkout(SCM.java:496)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1278)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:604)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:529)
at hudson.model.Run.execute(Run.java:1728)
at hudson.matrix.MatrixRun.run(MatrixRun.java:146)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:405)
Caused by: hudson.plugins.git.GitException: Command "git fetch --tags --progress git@BBB.git +refs/heads/*:refs/remotes/origin/* --prune --depth=1" returned status code 128:
我怀疑我错过了 Jenkins 中的配置,但找不到什么。任何帮助或指点将不胜感激。
我所做的另一个观察是,詹金斯在处理带有空格的工作区时可能会遇到问题。因为如果我将构建从例如“First Run”重命名为“First_Run”,那么它在 Windows 节点上执行得很好。
【问题讨论】:
-
我认为如果您使用
git@...,您将使用 ssh 密钥。如果你想使用凭证助手,你必须使用https://...并且你必须检查本地设置不会覆盖 coorect 全局设置。 -
是的,我正在使用 SSH,但不想使用凭证助手