自升级到Git客户端插件2.1.0以来,Jenkins无法读取Github密码

我目前在Windows 2012上使用Jenkins 1.650,并将Jenkins的testing实例(从我的生产服务器克隆)升级到2.25。

作为其中的一部分,Git客户端插件从1.19.6升级到2.1.0,现在无法进行身份validation。

如果我再次降级这个插件,我的工作就完美了,但是使用升级后的插件运行时,作业会失败。 所有的错误输出都是一样的:

08:18:40 Cloning the remote Git repository 08:18:40 Cloning repository https://github.com/mycompany/myrepo.git 08:18:40 > C:\Program Files\Git\cmd\git.exe init C:\Program Files (x86)\Jenkins\workspace\project # timeout=10 08:18:40 Fetching upstream changes from https://github.com/mycompany/myrepo.git 08:18:40 > C:\Program Files\Git\cmd\git.exe --version # timeout=10 08:18:40 using GIT_ASKPASS to set credentials 08:18:40 > C:\Program Files\Git\cmd\git.exe fetch --tags --progress https://github.com/mycompany/myrepo.git +refs/heads/*:refs/remotes/origin/* 08:18:41 ERROR: Error cloning remote repo 'origin' 08:18:41 hudson.plugins.git.GitException: Command "C:\Program Files\Git\cmd\git.exe fetch --tags --progress https://github.com/mycompany/myrepo.git +refs/heads/*:refs/remotes/origin/*" returned status code 128: 08:18:41 stdout: 08:18:41 stderr: '*dds23' is not recognized as an internal or external command, 08:18:41 operable program or batch file. 08:18:41 error: unable to read askpass response from 'C:\Windows\TEMP\pass6274847349411211542.bat' 08:18:41 bash: /dev/tty: No such device or address 08:18:41 error: failed to execute prompt script (exit code 1) 08:18:41 fatal: could not read Password for 'https://[email protected]': No error 08:18:41 08:18:41 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1745) 08:18:41 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1489) 08:18:41 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:64) 08:18:41 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:315) 08:18:41 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:512) 08:18:41 at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1054) 08:18:41 at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1094) 08:18:41 at hudson.scm.SCM.checkout(SCM.java:495) 08:18:41 at hudson.model.AbstractProject.checkout(AbstractProject.java:1278) 08:18:41 at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:604) 08:18:41 at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) 08:18:41 at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:529) 08:18:41 at hudson.model.Run.execute(Run.java:1720) 08:18:41 at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:531) 08:18:41 at hudson.model.ResourceController.execute(ResourceController.java:98) 08:18:41 at hudson.model.Executor.run(Executor.java:401) 08:18:41 ERROR: null 08:18:41 Archiving artifacts 08:18:41 [htmlpublisher] Archiving HTML reports... 08:18:41 [htmlpublisher] Archiving at PROJECT level C:\Program Files (x86)\Jenkins\workspace\project\server.project\server.distribution\target\htmldocs\documentation to C:\Program Files (x86)\Jenkins\jobs\project\htmlreports\documentation 08:18:41 ERROR: Specified HTML directory 'C:\Program Files (x86)\Jenkins\workspace\project\server.project\server.distribution\target\htmldocs\documentation' does not exist. 08:18:41 [BFA] Scanning build for known causes... 08:18:41 [BFA] No failure causes found 08:18:41 [BFA] Done. 0s 08:18:41 Started calculate disk usage of build 08:18:41 Finished Calculation of disk usage of build in 0 seconds 08:18:41 Started calculate disk usage of workspace 08:18:41 Finished Calculation of disk usage of workspace in 0 seconds 08:18:42 Sending e-mails to: bob@yeah 08:18:43 Finished: FAILURE 

不知道这个插件发生了什么变化,突然导致这个失败。

这里的答案总结在这里:

如何将使用GIT_ASKPASS的Jenkins Git插件更改为.gitcredentials

但总之,在Windows环境中,有Jenkins 2+的已知错误,读密码包含需要Windows在命令提示符下转义的字符。

我更改了Github帐户的密码,并解决了身份validation问题。