autospider.py is intended both as the harness for running automation builds, as well as a way to easily reproduce automation builds on a developer workstation. Some brave souls also use it as the basis for doing their normal local builds. Basic usage: ./js/src/devtools/automation/autospider.py plain The script may be run from any directory. This will configure and build the source, then run a series of tests. See the --help message for many different ways of suppressing various actions or changing the output. The different possible build+test configurations are controlled mostly by JSON files in a variants/ directory (eg there is a .../variants/plain file for the above command). In automation, the test jobs will run with a dynamically loaded library that catches crashes and generates minidumps, so that autospider.py can produce a readable stack trace at the end of the run. Currently this library is only available on linux64, and is built via the following procedure: % git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git % export PATH=$PATH:$(pwd)/depot_tools % mkdir breakpad % cd breakpad # python must be python2.7 % fetch breakpad % cd src % git fetch https://github.com/hotsphink/breakpad injector % git checkout FETCH_HEAD % cd .. % mkdir obj % cd obj # Possibly set $PATH to include a recent gcc % ../src/configure --enable-static % mkdir ../root % make install DESTDIR=$(pwd)/../root The shared library will now be in root/usr/local/lib64/libbreakpadinjector.so