Story #16053
Updated by Tom Clegg over 4 years ago
The dev/test mode should cover everything at [[Hacking prerequisites]] The non-dev/test mode should omit things like Go and phantomjs By default, if anything needs to be done as root, complain and exit; if "root" command-line option is given, Dev mode should install symlinks in /usr/local/bin so the developer can run phantomjs, passenger, keepstore, etc. easily. Conflicting contents of /usr/local/bin (which aren't symlinks to /var/lib/arvados) should be reported as an error. All modes should install dependencies in /var/lib/arvados; /var/lib/arvados, and @arvados-server boot@ and @run-tests.sh@ should prefer to run binaries from there. For example, presence of an old version of ruby in /usr/local shouldn't break (or be broken by) anything in Arvados. Before downloading anything (like ruby 2.5.5 source code), check /var/lib/arvados/archives first. This allows a workaround for packages that aren't available from the usual source, and allows testing without repetitive downloading. h3. References arvbox dependency install: https://dev.arvados.org/projects/arvados/repository/revisions/master/entry/tools/arvbox/lib/arvbox/docker/Dockerfile.base the jenkins worker image install: git@git.arvados.org:packer.git/jenkins/run_jenkins-slave-image-run-tests.sh