It fails with the following message long long time ago: C:/Ruby22-x64/lib/ruby/2.2.0/fileutils.rb:357:in `symlink': symlink() function is unimplemented on this machine (NotImplementedError) from C:/Ruby22-x64/lib/ruby/2.2.0/fileutils.rb:357:in `block in ln_s' from C:/Ruby22-x64/lib/ruby/2.2.0/fileutils.rb:1586:in `fu_each_src_dest0' from C:/Ruby22-x64/lib/ruby/2.2.0/fileutils.rb:355:in `ln_s' from Tools/Scripts/run-jsc-stress-tests:1179:in `block in prepareBundle' from Tools/Scripts/run-jsc-stress-tests:1174:in `chdir' from Tools/Scripts/run-jsc-stress-tests:1174:in `prepareBundle' from Tools/Scripts/run-jsc-stress-tests:1576:in `runNormal' from Tools/Scripts/run-jsc-stress-tests:1608:in `<main>' http://stackoverflow.com/questions/21511347/how-to-create-a-symlink-on-windows-via-ruby It says that creating symlinks with symlink() isn't supported on Windows, it can be done with only workaround. How does it work on the Apple Windows buildbots? And it worked previously on the WinCairo bot too. What changed? Maybe we can fix it with setting $copyVM to true based on OS. But I can't test if this fix is enough or not.
Created attachment 252856 [details] Patch speculative fix, could somebody test it?
Just to document my findings: latest pass: - r181974 - Wed Mar 25 15:39:49 2015 https://build.webkit.org/builders/WinCairo%2064-Bit%20Release/builds/44990 (build failure during this period) first failure: - r183565 - Wed Apr 29 12:20:43 2015 https://build.webkit.org/builders/WinCairo%2064-Bit%20Release/builds/45143
(In reply to comment #0) > It says that creating symlinks with symlink() isn't supported on Windows, it > can > be done with only workaround. How does it work on the Apple Windows > buildbots? > And it worked previously on the WinCairo bot too. What changed? > Thanks for looking into this :) I believe the WinCairo bot is now set up without cygwin. > Maybe we can fix it with setting $copyVM to true based on OS. > But I can't test if this fix is enough or not. Another possibility is to catch all exceptions: Index: run-jsc-stress-tests =================================================================== --- run-jsc-stress-tests (revisjon 184067) +++ run-jsc-stress-tests (arbeidskopi) @@ -1177,7 +1177,10 @@ else begin FileUtils.ln_s source, destination - rescue + rescue Exception => e + puts "Exception raised" + puts [e, e.backtrace].flatten.join("\n") + FileUtils.cp_r source, destination end end
(In reply to comment #0) > And it worked previously on the WinCairo bot too. What changed? WinCairo bot does not use cygwin. AppleWin bots do. WinCairo bot used to. Still under construction: http://trac.webkit.org/wiki/WindowsWithoutCygwin
Comment on attachment 252856 [details] Patch Clearing flags on attachment: 252856 Committed r184119: <http://trac.webkit.org/changeset/184119>
All reviewed patches have been landed. Closing bug.
This broke JSC tests on Apple Windows: https://build.webkit.org/builders/Apple%20Win%207%20Release%20(Tests)?numbuilds=50
(In reply to comment #7) > This broke JSC tests on Apple Windows: > > https://build.webkit.org/builders/ > Apple%20Win%207%20Release%20(Tests)?numbuilds=50 Those are just warnings. Do we want to cover up the warnings or rollout this patch?
Re-opened since this is blocked by bug 144888
Created attachment 252956 [details] Patch to catch symlink exception.
Comment on attachment 252956 [details] Patch to catch symlink exception. LGTM, let's try this one.
(In reply to comment #11) > Comment on attachment 252956 [details] > Patch to catch symlink exception. > > LGTM, let's try this one. Thanks :)
Committed r184201: <http://trac.webkit.org/changeset/184201>
The bot is still broken, but at least the sylink problem is fixed now. process_begin: CreateProcess(NULL, sh test_script_0, ...) failed. make (e=2): The system cannot find the file specified. make: *** [test_done_0] Error 2 Tools/Scripts/run-jsc-stress-tests:79:in `mysys': Command failed: #<Process::Status: pid 5988 exit 2> (RuntimeError) from Tools/Scripts/run-jsc-stress-tests:1411:in `runAndMonitorTestRunnerCommand' from Tools/Scripts/run-jsc-stress-tests:1499:in `block in runTestRunner' from Tools/Scripts/run-jsc-stress-tests:1498:in `chdir' from Tools/Scripts/run-jsc-stress-tests:1498:in `runTestRunner' from Tools/Scripts/run-jsc-stress-tests:1579:in `runNormal' from Tools/Scripts/run-jsc-stress-tests:1609:in `<main>' It would be great if the port maintainers could fix this issue. I don't have any chance without WinCairo build environment.
Maybe installing some tools on the bot would solve this issue. But it seems there are many unix tools are used by the runner scripts: sh, touch, dirname, rm, awk, diff, ...
(In reply to comment #15) > Maybe installing some tools on the bot would solve this issue. > > But it seems there are many unix tools are used by the runner scripts: > sh, touch, dirname, rm, awk, diff, ... gnuwin32 has many of these tools, and there are many places where we should use a perl/python/ruby function instead of calling an executable from the command line. I'll look into this soon. Ideally we would get all the bots running without cygwin, but that will take a significant amount of work
The WinCairo bot doesn't run tests long time ago.