-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
Hudson 1.383
Master: Ubuntu, glassfish
Slave: Windows XP, Cygwin, running via JNLP
It looks like either cygpath sometimes does not return the right information, or Hudson does not use the cygpath information to find /bin/bash. The log snippet below shows a few things:
- Timing - It found bash twice within 10 seconds, and then the 3rd time it failed to find it
- When it worked, Hudson called C:\cygwin\bin\bash. When it failed, Hudson called /bin/bash. This is what makes me think that it didn't use the cygpath value
I found one thread in the forums which suggested just using bash instead of /bin/bash in the shell environment variable. Would that take care of something like this?
The two success cases:
09:56:19 $ C:\cygwin\bin\cygpath -w /bin/bash 09:56:19 [spectrum_tap2] $ C:\cygwin\bin\bash -xe C:\DOCUME~1\OR-ENG~1\LOCALS~1\Temp\hudson3300316933213918666.sh ... 09:56:19 $ C:\cygwin\bin\cygpath -w /bin/bash 09:56:20 [spectrum_tap2] $ C:\cygwin\bin\bash -xe C:\DOCUME~1\OR-ENG~1\LOCALS~1\Temp\hudson2834466993129794225.sh 09:56:20 + '[' '' '!=' true ']' 09:56:20 + echo 'Build description: Build skipped' 09:56:20 Build description: Build skipped
And the failure, 3 seconds later:
09:56:23 $ C:\cygwin\bin\cygpath -w /bin/bash 09:56:27 [spectrum_tap2] $ /bin/bash -xe C:\DOCUME~1\OR-ENG~1\LOCALS~1\Temp\hudson5829219388252082290.sh 09:56:29 FATAL: command execution failed 09:56:29 java.io.IOException: Cannot run program "/bin/bash" (in directory "C:\Hudson\workspace\spectrum_tap2"): CreateProcess error=3, The system cannot find the path specified 09:56:29 at java.lang.ProcessBuilder.start(Unknown Source) 09:56:29 at hudson.Proc$LocalProc.<init>(Proc.java:192) 09:56:29 at hudson.Proc$LocalProc.<init>(Proc.java:164) 09:56:29 at hudson.Launcher$LocalLauncher.launch(Launcher.java:638) 09:56:29 at hudson.Launcher$ProcStarter.start(Launcher.java:273) 09:56:29 at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:793) 09:56:29 at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:767) 09:56:29 at hudson.remoting.UserRequest.perform(UserRequest.java:114) 09:56:29 at hudson.remoting.UserRequest.perform(UserRequest.java:48) 09:56:29 at hudson.remoting.Request$2.run(Request.java:270) 09:56:29 at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 09:56:29 at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 09:56:29 at java.util.concurrent.FutureTask.run(Unknown Source) 09:56:29 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 09:56:29 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 09:56:29 at hudson.remoting.Engine$1$1.run(Engine.java:58) 09:56:29 at java.lang.Thread.run(Unknown Source) 09:56:29 Caused by: java.io.IOException: CreateProcess error=3, The system cannot find the path specified 09:56:29 at java.lang.ProcessImpl.create(Native Method) 09:56:29 at java.lang.ProcessImpl.<init>(Unknown Source) 09:56:29 at java.lang.ProcessImpl.start(Unknown Source) 09:56:29 ... 17 more
I don't know what component this should be, so I set it to 'core'.