-
Bug
-
Resolution: Cannot Reproduce
-
Critical
-
jenkins-1.611 and Windows with cygwin installed and configured SSH server.
The ssh part works properly and Jenkins succeeds on copying the slave.jar file and executes it but it seems that it does make some wrong assumptions about paths, giving the error below:
[marvin] $ /bin/bash C:\Users\Administrator\hudson5000371039477233927.sh hudson.util.IOException2: Slave JVM has not reported exit code. Is it still running? at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:953) at hudson.plugins.sshslaves.SSHLauncher.access$400(SSHLauncher.java:133) Caused by: java.io.IOException: Cannot run program "/bin/bash" (in directory "C:\tools\cygwin\home\Administrator\marvin\marvin"): CreateProcess error=3, The system cannot find the path specified at java.lang.ProcessBuilder.start(Unknown Source) at hudson.Proc$LocalProc.<init>(Proc.java:244)
Full log at https://gist.github.com/ssbarnea/370949586b622f751d07
The windows path is correct, being created by Jenkins, but it seems that he execution of /bin/bash is the one that fails. If one does manually performs ssh to the machine, using the same credentials, they would be able to run /bin/bash.
I believe that the problem is because Jenkins is assuming that being a Windows machine it has to provide a Windows path to the CreateProcess which probably expects a Unix path instead because the entire shell is run under cygwin.
Still, I tried any combinations of configuring the slave path on the node configuration but none seems to work.
- is related to
-
JENKINS-11370 "The directory name is invalid" on Windows slaves
- Open
-
JENKINS-22650 POSIX paths are not converted to Windows with "Cygpath Plugin"
- Open