jenkinsci / jenkinsci/git-plugin
[JENKINS-28976] windows master, mac slave, polling fails trying to launch windows GIT_SSH program
- Dominant language
- Java
- Stars
- 694
- Forks
- 1.1k
- Avg merge
- 1h 29m
- Merged PRs (30d)
- 3
Description
When I have a Mac slave node attached to the Windows master node, it always fails git polling with a message like this:
On my Windows master, the environment variable GIT_SSH is set to C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe (we also have subversion installed and this plink executable has been verified as working properly with github and our SSH key).
When we have the same job configured to run on a schedule, it always works. It only fails with this error when we use git polling.
I had previously encountered a similar problem that the Mac slave was attempting to run git.exe which I fixed by configuring the local tool location for the node to /usr/local/bin/git.
```
Started on Jun 18, 2015 2:46:52 PM
Using strategy: Default
[poll] Last Built Revision: Revision ce3c4ab9a700abf4d4874ff9116c49f68e3905c9 (refs/remotes/origin/master)
> /usr/local/bin/git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repositories
> /usr/local/bin/git config remote.origin.url git@github.com:daz3d/Scruffy # timeout=10
Fetching upstream changes from git@github.com:daz3d/Scruffy
> /usr/local/bin/git --version # timeout=10
> /usr/local/bin/git -c core.askpass=true fetch --tags --progress git@github.com:daz3d/Scruffy +refs/heads/*:refs/remotes/origin/*
FATAL: Failed to fetch from git@github.com:daz3d/Scruffy
hudson.util.IOException2: Failed to fetch from git@github.com:daz3d/Scruffy
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:496)
at hudson.scm.SCM._compareRemoteRevisionWith(SCM.java:356)
at hudson.scm.SCM.poll(SCM.java:373)
at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1549)
at hudson.model.AbstractProject._poll(AbstractProject.java:1521)
at hudson.model.AbstractProject.poll(AbstractProject.java:1455)
at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:439)
at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:468)
at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:118)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: hudson.plugins.git.GitException: Failed to fetch from git@github.com:daz3d/Scruffy
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:668)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWithImpl(GitSCM.java:575)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:494)
... 14 more
Caused by: hudson.plugins.git.GitException: Command "/usr/local/bin/git -c core.askpass=true fetch --tags --progress git@github.com:daz3d/Scruffy +refs/heads/*:refs/remotes/origin/*" returned status code 128:
stdout:
stderr: error: cannot run C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe: No such file or directory
fatal: unable to fork
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1591)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1379)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:86)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:324)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:152)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:145)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
Done. Took 0.14 sec
No changes
```
---
Originally reported by
legalize, imported from: windows master, mac slave, polling fails trying to launch windows GIT_SSH program
Raw content of original issue
When I have a Mac slave node attached to the Windows master node, it always fails git polling with a message like this:
On my Windows master, the environment variable GIT_SSH is set to C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe (we also have subversion installed and this plink executable has been verified as working properly with github and our SSH key).
When we have the same job configured to run on a schedule, it always works. It only fails with this error when we use git polling.
I had previously encountered a similar problem that the Mac slave was attempting to run git.exe which I fixed by configuring the local tool location for the node to /usr/local/bin/git.
Started on Jun 18, 2015 2:46:52 PM
Using strategy: Default
[poll] Last Built Revision: Revision ce3c4ab9a700abf4d4874ff9116c49f68e3905c9 (refs/remotes/origin/master)
> /usr/local/bin/git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repositories
> /usr/local/bin/git config remote.origin.url git@github.com:daz3d/Scruffy # timeout=10
Fetching upstream changes from git@github.com:daz3d/Scruffy
> /usr/local/bin/git --version # timeout=10
> /usr/local/bin/git -c core.askpass=true fetch --tags --progress git@github.com:daz3d/Scruffy +refs/heads/*:refs/remotes/origin/*
FATAL: Failed to fetch from git@github.com:daz3d/Scruffy
hudson.util.IOException2: Failed to fetch from git@github.com:daz3d/Scruffy
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:496)
at hudson.scm.SCM._compareRemoteRevisionWith(SCM.java:356)
at hudson.scm.SCM.poll(SCM.java:373)
at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1549)
at hudson.model.AbstractProject._poll(AbstractProject.java:1521)
at hudson.model.AbstractProject.poll(AbstractProject.java:1455)
at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:439)
at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:468)
at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:118)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: hudson.plugins.git.GitException: Failed to fetch from git@github.com:daz3d/Scruffy
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:668)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWithImpl(GitSCM.java:575)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:494)
... 14 more
Caused by: hudson.plugins.git.GitException: Command "/usr/local/bin/git -c core.askpass=true fetch --tags --progress git@github.com:daz3d/Scruffy +refs/heads/*:refs/remotes/origin/*" returned status code 128:
stdout:
stderr: error: cannot run C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe: No such file or directory
fatal: unable to forkat org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1591)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1379)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:86)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:324)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:152)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:145)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
Done. Took 0.14 sec
No changes
environment
```
Windows Master
MacOS slave
Jenkins ver. 1.509.4
jenkins-git plugin 2.2.12
jenkins git client plugin 1.17.1
```
1 attachment
- [screenshot-1.png](https://raw.githubusercontent.com/jenkinsci/attachments-from-jira-issues-last/refs/heads/main/attachments/29982/screenshot-1.png)
> 
Contributor guide
Assessment
This issue has not been assessed yet.