[ARVADOS] created: 4a466cd2caf121678a1d46d049c5b1e5477b6d50

Git user git at public.curoverse.com
Sun Aug 21 22:10:37 EDT 2016


        at  4a466cd2caf121678a1d46d049c5b1e5477b6d50 (commit)


commit 4a466cd2caf121678a1d46d049c5b1e5477b6d50
Author: Peter Amstutz <peter.amstutz at curoverse.com>
Date:   Sun Aug 21 22:09:38 2016 -0400

    8232: Remove outdated/misleading Docker install

diff --git a/build/run-build-docker-jobs-image.sh b/build/run-build-docker-jobs-image.sh
index 15f7881..933d488 100755
--- a/build/run-build-docker-jobs-image.sh
+++ b/build/run-build-docker-jobs-image.sh
@@ -118,18 +118,8 @@ timer_reset
 
 # clean up the docker build environment
 cd "$WORKSPACE"
-cd docker
-rm -f jobs-image
-rm -f config.yml
-
-# Get test config.yml file
-cp $HOME/docker/config.yml .
-
-if [[ ! -z "$tags" ]]; then
-  COMMIT=${tags/,*/} ./build.sh jobs-image
-else
-  ./build.sh jobs-image
-fi
+cd docker/jobs
+docker build -t arvados/jobs .
 
 ECODE=$?
 
@@ -147,8 +137,8 @@ timer_reset
 if [[ "$ECODE" != "0" ]]; then
     title "upload arvados images SKIPPED because build failed"
 else
-    if [[ $upload == true ]]; then 
-        ## 20150526 nico -- *sometimes* dockerhub needs re-login 
+    if [[ $upload == true ]]; then
+        ## 20150526 nico -- *sometimes* dockerhub needs re-login
         ## even though credentials are already in .dockercfg
         docker login -u arvados
 
diff --git a/docker/.gitignore b/docker/.gitignore
deleted file mode 100644
index ff626a3..0000000
--- a/docker/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*-image
-build/
diff --git a/docker/README.md b/docker/README.md
deleted file mode 100644
index 9c03e1b..0000000
--- a/docker/README.md
+++ /dev/null
@@ -1,81 +0,0 @@
-Deploying Arvados in Docker Containers
-======================================
-
-This file explains how to build and deploy Arvados servers in Docker
-containers, so that they can be run easily in different environments
-(a dedicated server, a developer's laptop, a virtual machine,
-etc).
-
-Prerequisites
--------------
-
-* Docker
-
-  Docker is a Linux container management system. It is a very young system but
-  is being developed rapidly.
-  [Installation packages](http://www.docker.io/gettingstarted/)
-  are available for several platforms.
-  
-  If a prebuilt docker package is not available for your platform, the
-  short instructions for installing it are:
-  
-  1. Create a `docker` group and add yourself to it.
-
-     <pre>
-     $ sudo addgroup docker
-     $ sudo adduser `whoami` docker
-     </pre>
-
-     Log out and back in.
-	 
-  2. Add a `cgroup` filesystem and mount it:
-
-     <pre>
-     $ mkdir -p /cgroup
-     $ grep cgroup /etc/fstab
-     none   /cgroup    cgroup    defaults    0    0
-     $ sudo mount /cgroup
-	 </pre>
-	 
-  3. [Download and run a docker binary from docker.io.](http://docs.docker.io/en/latest/installation/binaries/)
-
-* Ruby (version 1.9.3 or greater)
-
-* sudo privileges to run `debootstrap`
-
-Building
---------
-
-Type `./build.sh` to configure and build the following Docker images:
-
-   * arvados/api       - the Arvados API server
-   * arvados/compute   - Arvados compute node image
-   * arvados/doc       - Arvados documentation
-   * arvados/keep      - Keep, the Arvados content-addressable filesystem
-   * arvados/keepproxy - Keep proxy
-   * arvados/shell     - Arvados shell node image
-   * arvados/sso       - the Arvados single-signon authentication server
-   * arvados/workbench - the Arvados console
-
-`build.sh` will generate reasonable defaults for all configuration
-settings.  If you want more control over the way Arvados is
-configured, first copy `config.yml.example` to `config.yml` and edit
-it with appropriate configuration settings, and then run `./build.sh`.
-
-Running
--------
-
-The `arvdock` script in this directory is used to start, stop and
-restart Arvados servers on your machine.  The simplest and easiest way
-to use it is `./arvdock start` to start the full complement of Arvados
-servers, and `./arvdock stop` and `./arvdock restart` to stop and
-restart all servers, respectively.
-
-Developers who are working on individual servers can start, stop or
-restart just those containers, e.g.:
-
-* `./arvdock start --api --sso` to start just the API and SSO services.
-* `./arvdock stop --keep` to stop just the Keep services.
-* `./arvdock restart --workbench=8000` restarts just the Workbench service on port 8000.
-
-For a full set of arguments, use `./arvdock --help`.
diff --git a/docker/api/.gitolite.rc b/docker/api/.gitolite.rc
deleted file mode 100644
index 855e103..0000000
--- a/docker/api/.gitolite.rc
+++ /dev/null
@@ -1,191 +0,0 @@
-# configuration variables for gitolite
-
-# This file is in perl syntax.  But you do NOT need to know perl to edit it --
-# just mind the commas, use single quotes unless you know what you're doing,
-# and make sure the brackets and braces stay matched up!
-
-# (Tip: perl allows a comma after the last item in a list also!)
-
-# HELP for commands can be had by running the command with "-h".
-
-# HELP for all the other FEATURES can be found in the documentation (look for
-# "list of non-core programs shipped with gitolite" in the master index) or
-# directly in the corresponding source file.
-
-my $repo_aliases;
-my $aliases_src = "$ENV{HOME}/.gitolite/arvadosaliases.pl";
-if ($ENV{HOME} && (-e $aliases_src)) {
-    $repo_aliases = do $aliases_src;
-}
-$repo_aliases ||= {};
-
-%RC = (
-
-    # ------------------------------------------------------------------
-
-    # default umask gives you perms of '0700'; see the rc file docs for
-    # how/why you might change this
-    UMASK                           =>  0022,
-
-    # look for "git-config" in the documentation
-    GIT_CONFIG_KEYS                 =>  '',
-
-    # comment out if you don't need all the extra detail in the logfile
-    LOG_EXTRA                       =>  1,
-
-    # roles.  add more roles (like MANAGER, TESTER, ...) here.
-    #   WARNING: if you make changes to this hash, you MUST run 'gitolite
-    #   compile' afterward, and possibly also 'gitolite trigger POST_COMPILE'
-    ROLES => {
-        READERS                     =>  1,
-        WRITERS                     =>  1,
-    },
-
-    REPO_ALIASES => $repo_aliases,
-
-    # ------------------------------------------------------------------
-
-    # rc variables used by various features
-
-    # the 'info' command prints this as additional info, if it is set
-        # SITE_INFO                 =>  'Please see http://blahblah/gitolite for more help',
-
-    # the 'desc' command uses this
-        # WRITER_CAN_UPDATE_DESC    =>  1,
-    # the 'readme' command uses this
-        # WRITER_CAN_UPDATE_README  =>  1,
-
-    # the CpuTime feature uses these
-        # display user, system, and elapsed times to user after each git operation
-        # DISPLAY_CPU_TIME          =>  1,
-        # display a warning if total CPU times (u, s, cu, cs) crosses this limit
-        # CPU_TIME_WARN_LIMIT       =>  0.1,
-
-    # the Mirroring feature needs this
-        # HOSTNAME                  =>  "foo",
-
-    # if you enabled 'Shell', you need this
-        # SHELL_USERS_LIST          =>  "$ENV{HOME}/.gitolite.shell-users",
-
-    # ------------------------------------------------------------------
-
-    # suggested locations for site-local gitolite code (see cust.html)
-
-        # this one is managed directly on the server
-        # LOCAL_CODE                =>  "$ENV{HOME}/local",
-
-        # or you can use this, which lets you put everything in a subdirectory
-        # called "local" in your gitolite-admin repo.  For a SECURITY WARNING
-        # on this, see http://gitolite.com/gitolite/cust.html#pushcode
-        # LOCAL_CODE                =>  "$rc{GL_ADMIN_BASE}/local",
-
-    # ------------------------------------------------------------------
-
-    # List of commands and features to enable
-
-    ENABLE => [
-
-        # COMMANDS
-
-            # These are the commands enabled by default
-            'help',
-            'desc',
-            'info',
-            'perms',
-            'writable',
-
-            # Uncomment or add new commands here.
-            # 'create',
-            # 'fork',
-            # 'mirror',
-            # 'readme',
-            # 'sskm',
-            # 'D',
-
-        # These FEATURES are enabled by default.
-
-            # essential (unless you're using smart-http mode)
-            'ssh-authkeys',
-
-            # creates git-config enties from gitolite.conf file entries like 'config foo.bar = baz'
-            'git-config',
-
-            # creates git-daemon-export-ok files; if you don't use git-daemon, comment this out
-            'daemon',
-
-            # creates projects.list file; if you don't use gitweb, comment this out
-            'gitweb',
-
-        # These FEATURES are disabled by default; uncomment to enable.  If you
-        # need to add new ones, ask on the mailing list :-)
-
-        # user-visible behaviour
-
-            # prevent wild repos auto-create on fetch/clone
-            # 'no-create-on-read',
-            # no auto-create at all (don't forget to enable the 'create' command!)
-            # 'no-auto-create',
-
-            # access a repo by another (possibly legacy) name
-            'Alias',
-
-            # give some users direct shell access
-            # 'Shell',
-
-            # set default roles from lines like 'option default.roles-1 = ...', etc.
-            # 'set-default-roles',
-
-            # show more detailed messages on deny
-            # 'expand-deny-messages',
-
-        # system admin stuff
-
-            # enable mirroring (don't forget to set the HOSTNAME too!)
-            # 'Mirroring',
-
-            # allow people to submit pub files with more than one key in them
-            # 'ssh-authkeys-split',
-
-            # selective read control hack
-            # 'partial-copy',
-
-            # manage local, gitolite-controlled, copies of read-only upstream repos
-            # 'upstream',
-
-            # updates 'description' file instead of 'gitweb.description' config item
-            # 'cgit',
-
-            # allow repo-specific hooks to be added
-            # 'repo-specific-hooks',
-
-        # performance, logging, monitoring...
-
-            # be nice
-            # 'renice 10',
-
-            # log CPU times (user, system, cumulative user, cumulative system)
-            # 'CpuTime',
-
-        # syntactic_sugar for gitolite.conf and included files
-
-            # allow backslash-escaped continuation lines in gitolite.conf
-            # 'continuation-lines',
-
-            # create implicit user groups from directory names in keydir/
-            # 'keysubdirs-as-groups',
-
-            # allow simple line-oriented macros
-            # 'macros',
-
-    ],
-
-);
-
-# ------------------------------------------------------------------------------
-# per perl rules, this should be the last line in such a file:
-1;
-
-# Local variables:
-# mode: perl
-# End:
-# vim: set syn=perl:
diff --git a/docker/api/Dockerfile b/docker/api/Dockerfile
deleted file mode 100644
index 6a3428c..0000000
--- a/docker/api/Dockerfile
+++ /dev/null
@@ -1,75 +0,0 @@
-# Arvados API server Docker container.
-
-FROM arvados/passenger
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-# Install postgres and apache.
-RUN apt-get update -q
-RUN apt-get install -qy \
-    procps postgresql postgresql-server-dev-9.1 slurm-llnl munge \
-    supervisor sudo libwww-perl libio-socket-ssl-perl libcrypt-ssleay-perl \
-    libjson-perl cron openssh-server
-
-ADD munge.key /etc/munge/
-RUN chown munge:munge /etc/munge/munge.key && chmod 600 /etc/munge/munge.key
-ADD generated/slurm.conf /etc/slurm-llnl/
-
-RUN /usr/local/rvm/bin/rvm-exec default gem install arvados-cli arvados
-# /for crunch-dispatch
-
-RUN /bin/mkdir -p /usr/src/arvados/services
-ADD generated/api.tar.gz /usr/src/arvados/services/
-
-# Install generated config files
-ADD generated/database.yml /usr/src/arvados/services/api/config/database.yml
-ADD generated/omniauth.rb /usr/src/arvados/services/api/config/initializers/omniauth.rb
-RUN /bin/cp /usr/src/arvados/services/api/config/environments/production.rb.example /usr/src/arvados/services/api/config/environments/production.rb
-ADD generated/application.yml /usr/src/arvados/services/api/config/application.yml
-
-# Configure Rails databases.
-ENV RAILS_ENV production
-ADD generated/config_databases.sh /tmp/config_databases.sh
-ADD generated/superuser_token /tmp/superuser_token
-RUN /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/services/api/Gemfile && \
-    sh /tmp/config_databases.sh && \
-    rm /tmp/config_databases.sh && \
-    /etc/init.d/postgresql start && \
-    cd /usr/src/arvados/services/api && \
-    /usr/local/rvm/bin/rvm-exec default bundle exec rake db:structure:load && \
-    /usr/local/rvm/bin/rvm-exec default bundle exec rake db:seed && \
-    /usr/local/rvm/bin/rvm-exec default bundle exec rake assets:precompile && \
-    /usr/local/rvm/bin/rvm-exec default ./script/create_superuser_token.rb $(cat /tmp/superuser_token) && \
-    chown www-data:www-data config.ru && \
-    chown www-data:www-data log -R && \
-    mkdir -p tmp && \
-    chown www-data:www-data tmp -R
-
-# Install a token for root
-RUN mkdir -p /root/.config/arvados; echo "ARVADOS_API_HOST=api" >> /root/.config/arvados/settings.conf && echo "ARVADOS_API_HOST_INSECURE=yes" >> /root/.config/arvados/settings.conf && echo "ARVADOS_API_TOKEN=$(cat /tmp/superuser_token)" >> /root/.config/arvados/settings.conf && chmod 600 /root/.config/arvados/settings.conf
-
-# Set up directory for job commit repo
-RUN mkdir -p /var/lib/arvados
-# Add crunch user
-RUN addgroup --gid 4005 crunch && mkdir /home/crunch && useradd --uid 4005 --gid 4005 crunch && chown crunch:crunch /home/crunch
-
-# Create keep and compute node objects
-ADD generated/keep_server_0.json /root/
-ADD generated/keep_server_1.json /root/
-ADD keep_proxy.json /root/
-
-# Set up update-gitolite.rb
-RUN mkdir /usr/local/arvados/config -p
-ADD generated/arvados-clients.yml /usr/src/arvados/services/api/config/
-ADD .gitolite.rc /usr/local/arvados/config/
-RUN ln /usr/src/arvados/services/api/script/arvados-git-sync.rb /usr/local/bin/
-
-# Supervisor.
-ADD supervisor.conf /etc/supervisor/conf.d/arvados.conf
-ADD generated/setup.sh /usr/local/bin/setup.sh
-ADD generated/setup-gitolite.sh /usr/local/bin/setup-gitolite.sh
-ADD crunch-dispatch-run.sh /usr/local/bin/crunch-dispatch-run.sh
-ADD munge.sh /usr/local/bin/munge.sh
-ADD passenger.sh /usr/local/bin/passenger.sh
-
-# Start the supervisor.
-CMD ["/usr/bin/supervisord", "-n"]
diff --git a/docker/api/apache2_foreground.sh b/docker/api/apache2_foreground.sh
deleted file mode 100755
index fc6028e..0000000
--- a/docker/api/apache2_foreground.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#! /bin/bash
-
-read pid cmd state ppid pgrp session tty_nr tpgid rest < /proc/self/stat
-trap "kill -TERM -$pgrp; exit" EXIT TERM KILL SIGKILL SIGTERM SIGQUIT
-
-source /etc/apache2/envvars
-/usr/sbin/apache2 -D FOREGROUND
diff --git a/docker/api/apache2_vhost.in b/docker/api/apache2_vhost.in
deleted file mode 100644
index 344e36d..0000000
--- a/docker/api/apache2_vhost.in
+++ /dev/null
@@ -1,50 +0,0 @@
-# VirtualHost definition for the Arvados API server
-
-<VirtualHost *:80>
-  ServerName @@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@
-  ServerAdmin sysadmin at curoverse.com
-
-  RedirectPermanent / https://@@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@/
-
-  LogLevel warn
-  ErrorLog  ${APACHE_LOG_DIR}/error.log
-  CustomLog ${APACHE_LOG_DIR}/access.log combined
-
-</VirtualHost>
-
-<VirtualHost *:443>
-  ServerName @@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@
-  ServerAdmin sysadmin at curoverse.com
-
-  RailsEnv production
-  RackBaseURI /
-  RailsAppSpawnerIdleTime 1200
-
-  # Enable streaming
-  PassengerBufferResponse off
-
-  # Index file and Document Root (where the public files are located)
-  DirectoryIndex index.html
-  DocumentRoot /usr/src/arvados/services/api/public
-
-  LogLevel warn
-  ErrorLog  ${APACHE_LOG_DIR}/ssl_error.log
-  CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
-
-  <Directory /usr/src/arvados/services/api/public>
-    Options Indexes FollowSymLinks MultiViews IncludesNoExec
-    AllowOverride None
-    Order allow,deny
-    allow from all
-  </Directory>
-
-  <IfModule mod_ssl.c>
-    SSLEngine on
-    # SSLCertificateChainFile /etc/ssl/certs/startcom.sub.class1.server.ca.pem
-    # SSLCACertificateFile    /etc/ssl/certs/startcom.ca.pem
-    SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
-    SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
-    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
-  </IfModule>
-
-</VirtualHost>
diff --git a/docker/api/application.yml.in b/docker/api/application.yml.in
deleted file mode 100644
index 97eb66f..0000000
--- a/docker/api/application.yml.in
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copy this file to application.yml and edit to suit.
-#
-# Consult application.default.yml for the full list of configuration
-# settings.
-#
-# The order of precedence is:
-# 1. config/environments/{RAILS_ENV}.rb (deprecated)
-# 2. Section in application.yml corresponding to RAILS_ENV (e.g., development)
-# 3. Section in application.yml called "common"
-# 4. Section in application.default.yml corresponding to RAILS_ENV
-# 5. Section in application.default.yml called "common"
-
-development:
-  # The blob_signing_key is a string of alphanumeric characters used
-  # to sign permission hints for Keep locators. It must be identical
-  # to the permission key given to Keep.  If you run both apiserver
-  # and Keep in development, change this to a hardcoded string and
-  # make sure both systems use the same value.
-  blob_signing_key: ~
-
-production:
-  host: api.@@ARVADOS_DOMAIN@@
-
-  git_repo_ssh_base: "git at api.@@ARVADOS_DOMAIN@@:"
-
-  # Docker setup doesn't include arv-git-httpd yet.
-  git_repo_https_base: false
-
-  # At minimum, you need a nice long randomly generated secret_token here.
-  # Use a long string of alphanumeric characters (at least 36).
-  secret_token: @@API_SECRET@@
-
-  # blob_signing_key is required and must be identical to the
-  # permission secret provisioned to Keep.
-  # Use a long string of alphanumeric characters (at least 36).
-  blob_signing_key: @@KEEP_SIGNING_SECRET@@
-
-  uuid_prefix: @@API_HOSTNAME@@
-
-  # compute_node_domain: example.org
-  # compute_node_nameservers:
-  #   - 127.0.0.1
-  #   - 192.168.1.1
-  #
-  permit_create_collection_with_unsigned_manifest: true
-  git_repositories_dir: /home/git/repositories
-  crunch_job_wrapper: :slurm_immediate
-  action_mailer.raise_delivery_errors: false
-  action_mailer.perform_deliveries: false
-
-  workbench_address: @@API_WORKBENCH_ADDRESS@@
-
-  auto_setup_new_users: true
-
-  auto_admin_first_user: true
-
-  auto_setup_new_users_with_repository: true
-
-  auto_setup_new_users_with_vm_uuid: @@API_HOSTNAME@@-2x53u-csbtkecoa669vkz
-
-test:
-  uuid_prefix: zzzzz
-  secret_token: <%= rand(2**512).to_s(36) %>
-
-common:
-  #git_repositories_dir: /var/cache/git
-  #git_internal_dir: /var/cache/arvados/internal.git
diff --git a/docker/api/apt.arvados.org.list b/docker/api/apt.arvados.org.list
deleted file mode 100644
index 7eb8716..0000000
--- a/docker/api/apt.arvados.org.list
+++ /dev/null
@@ -1,2 +0,0 @@
-# apt.arvados.org
-deb http://apt.arvados.org/ wheezy main
diff --git a/docker/api/arvados-clients.yml.in b/docker/api/arvados-clients.yml.in
deleted file mode 100644
index 6741328..0000000
--- a/docker/api/arvados-clients.yml.in
+++ /dev/null
@@ -1,6 +0,0 @@
-production:
-  gitolite_url: 'git at api.@@ARVADOS_DOMAIN@@:gitolite-admin.git'
-  gitolite_tmp: 'gitolite-tmp'
-  arvados_api_host: 'api'
-  arvados_api_token: '@@API_SUPERUSER_SECRET@@'
-  arvados_api_host_insecure: true
diff --git a/docker/api/config_databases.sh.in b/docker/api/config_databases.sh.in
deleted file mode 100755
index b548c21..0000000
--- a/docker/api/config_databases.sh.in
+++ /dev/null
@@ -1,15 +0,0 @@
-#! /bin/sh
-
-# Configure postgresql in a docker instance.
-
-/bin/su postgres -c '/usr/lib/postgresql/9.1/bin/postgres --single -D /var/lib/postgresql/9.1/main -c config_file=/etc/postgresql/9.1/main/postgresql.conf' <<EOF
-alter role postgres with encrypted password '@@POSTGRES_ROOT_PW@@';
-
-create user @@ARVADOS_DEV_USER@@ with encrypted password '@@ARVADOS_DEV_PW@@';
-create database @@ARVADOS_DEV_DB@@ with owner @@ARVADOS_DEV_USER@@;
-
-create user @@ARVADOS_TEST_USER@@ with createdb encrypted password '@@ARVADOS_TEST_PW@@';
-
-create user @@ARVADOS_PROD_USER@@ with encrypted password '@@ARVADOS_PROD_PW@@';
-create database @@ARVADOS_PROD_DB@@ with owner @@ARVADOS_PROD_USER@@;
-EOF
diff --git a/docker/api/crunch-dispatch-run.sh b/docker/api/crunch-dispatch-run.sh
deleted file mode 100755
index 5103b1d..0000000
--- a/docker/api/crunch-dispatch-run.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/bash
-set -e
-export PATH="$PATH":/usr/src/arvados/services/crunch
-export PERLLIB=/usr/src/arvados/sdk/perl/lib
-export ARVADOS_API_HOST=api
-export ARVADOS_API_HOST_INSECURE=yes
-export CRUNCH_DISPATCH_LOCKFILE=/var/lock/crunch-dispatch
-
-if [[ ! -e $CRUNCH_DISPATCH_LOCKFILE ]]; then
-  touch $CRUNCH_DISPATCH_LOCKFILE
-fi
-
-export CRUNCH_JOB_BIN=/usr/src/arvados/services/crunch/crunch-job
-export HOME=`pwd`
-fuser -TERM -k $CRUNCH_DISPATCH_LOCKFILE || true
-
-# Give the compute nodes some time to start up
-sleep 5
-
-cd /usr/src/arvados/services/api
-export RAILS_ENV=production
-/usr/local/rvm/bin/rvm-exec default bundle install
-exec /usr/local/rvm/bin/rvm-exec default bundle exec ./script/crunch-dispatch.rb 2>&1
-
diff --git a/docker/api/database.yml.in b/docker/api/database.yml.in
deleted file mode 100644
index 5990319..0000000
--- a/docker/api/database.yml.in
+++ /dev/null
@@ -1,25 +0,0 @@
-development:
-  adapter: postgresql
-  encoding: utf8
-  database: @@ARVADOS_DEV_DB@@
-  username: @@ARVADOS_DEV_USER@@
-  password: @@ARVADOS_DEV_PW@@
-  host: localhost
-
-test:
-  adapter: postgresql
-  encoding: utf8
-  template: template0
-  database: @@ARVADOS_TEST_DB@@
-  username: @@ARVADOS_TEST_USER@@
-  password: @@ARVADOS_TEST_PW@@
-  host: localhost
-
-production:
-  adapter: postgresql
-  encoding: utf8
-  database: @@ARVADOS_PROD_DB@@
-  username: @@ARVADOS_PROD_USER@@
-  password: @@ARVADOS_PROD_PW@@
-  host: localhost
-
diff --git a/docker/api/keep_proxy.json b/docker/api/keep_proxy.json
deleted file mode 100644
index 117e590..0000000
--- a/docker/api/keep_proxy.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  "service_host": "localhost",
-  "service_port": 9902,
-  "service_ssl_flag": "false",
-  "service_type": "proxy"
-}
diff --git a/docker/api/keep_server_0.json.in b/docker/api/keep_server_0.json.in
deleted file mode 100644
index d63c590..0000000
--- a/docker/api/keep_server_0.json.in
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  "service_host": "keep_server_0.keep.@@ARVADOS_DOMAIN@@",
-  "service_port": 25107,
-  "service_ssl_flag": "false",
-  "service_type": "disk"
-}
diff --git a/docker/api/keep_server_1.json.in b/docker/api/keep_server_1.json.in
deleted file mode 100644
index 53d5c64..0000000
--- a/docker/api/keep_server_1.json.in
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  "service_host": "keep_server_1.keep.@@ARVADOS_DOMAIN@@",
-  "service_port": 25107,
-  "service_ssl_flag": "false",
-  "service_type": "disk"
-}
diff --git a/docker/api/munge.key b/docker/api/munge.key
deleted file mode 100644
index 34036a0..0000000
Binary files a/docker/api/munge.key and /dev/null differ
diff --git a/docker/api/munge.sh b/docker/api/munge.sh
deleted file mode 100755
index ef10d01..0000000
--- a/docker/api/munge.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-rm -rf /var/run/munge
-exec /etc/init.d/munge start
diff --git a/docker/api/omniauth.rb.in b/docker/api/omniauth.rb.in
deleted file mode 100644
index 8daa300..0000000
--- a/docker/api/omniauth.rb.in
+++ /dev/null
@@ -1,18 +0,0 @@
-# Change this omniauth configuration to point to your registered provider
-# Since this is a registered application, add the app id and secret here
-APP_ID = '@@SSO_CLIENT_APP_ID@@'
-APP_SECRET = '@@SSO_CLIENT_SECRET@@'
-
-# Update your custom Omniauth provider URL here
-if '@@OMNIAUTH_URL@@' != ''
-  CUSTOM_PROVIDER_URL = '@@OMNIAUTH_URL@@'
-else
-  CUSTOM_PROVIDER_URL = 'https://@@SSO_HOSTNAME@@.@@ARVADOS_DOMAIN@@'
-end
-
-# This is a development sandbox, we use self-signed certificates
-OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE
-
-Rails.application.config.middleware.use OmniAuth::Builder do
-  provider :josh_id, APP_ID, APP_SECRET, CUSTOM_PROVIDER_URL
-end
diff --git a/docker/api/passenger.sh b/docker/api/passenger.sh
deleted file mode 100755
index a62d9d5..0000000
--- a/docker/api/passenger.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-cd /usr/src/arvados/services/api
-export ARVADOS_WEBSOCKETS=1
-export RAILS_ENV=production
-/usr/local/rvm/bin/rvm-exec default bundle exec rake db:migrate
-exec /usr/local/rvm/bin/rvm-exec default bundle exec passenger start -p443 --ssl --ssl-certificate=/etc/ssl/certs/ssl-cert-snakeoil.pem --ssl-certificate-key=/etc/ssl/private/ssl-cert-snakeoil.key
diff --git a/docker/api/setup-gitolite.sh.in b/docker/api/setup-gitolite.sh.in
deleted file mode 100755
index 023ca5d..0000000
--- a/docker/api/setup-gitolite.sh.in
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/bash
-
-ssh-keygen -q -N '' -t rsa -f /root/.ssh/id_rsa
-
-useradd git
-mkdir /home/git
-
-# Set up gitolite repository
-cp ~root/.ssh/id_rsa.pub ~git/root-authorized_keys.pub
-chown git:git /home/git -R
-su - git -c "mkdir -p ~/bin"
-
-su - git -c "git clone git://github.com/sitaramc/gitolite"
-su - git -c "gitolite/install -ln ~/bin"
-su - git -c "PATH=/home/git/bin:$PATH gitolite setup -pk ~git/root-authorized_keys.pub"
-install -o git -g git -m 600 /usr/local/arvados/config/.gitolite.rc /home/git/
-
-# And make sure that the existing repos are equally readable, or the API server commit model will freak out...
-chmod 755 /home/git/repositories
-chmod +rx /home/git/repositories/*git -R
-
-# Now set up the gitolite repo(s) we use
-mkdir -p /usr/local/arvados/gitolite-tmp/
-# Make ssh store the host key
-ssh -o "StrictHostKeyChecking no" git at api.@@ARVADOS_DOMAIN@@ info
-# Now check out the tree
-git clone git at api.@@ARVADOS_DOMAIN@@:gitolite-admin.git /usr/local/arvados/gitolite-tmp/gitolite-admin/
-cd /usr/local/arvados/gitolite-tmp/gitolite-admin
-mkdir keydir/arvados
-mkdir conf/admin
-mkdir conf/auto
-echo "
-
- at arvados_git_user = arvados_git_user
-
-repo @all
-     RW+                 = @arvados_git_user
-
-" > conf/admin/arvados.conf
-echo '
-include "auto/*.conf"
-include "admin/*.conf"
-' >> conf/gitolite.conf
-
-#su - git -c "ssh-keygen -t rsa"
-cp /root/.ssh/id_rsa.pub keydir/arvados/arvados_git_user.pub
-# Replace the 'root' key with the user key, just in case
-cp /root/.ssh/authorized_keys keydir/root-authorized_keys.pub
-# But also make sure we have the root key installed so it can access all keys
-git add keydir/root-authorized_keys.pub
-git add keydir/arvados/arvados_git_user.pub
-git add conf/admin/arvados.conf
-git add keydir/arvados/
-git add conf/gitolite.conf
-git commit -a -m 'git server setup'
-git push
-
-# Prepopulate the arvados.git repo with our source. Silly, but until we can check out from remote trees,
-# we need this to make the tutorials work.
-su - git -c "git clone --bare git://github.com/curoverse/arvados.git /home/git/repositories/arvados.git"
-
-echo "ARVADOS_API_HOST_INSECURE=yes" > /etc/cron.d/gitolite-update
-echo "*/2 * * * * root /bin/bash -c 'source /etc/profile.d/rvm.sh && /usr/src/arvados/services/api/script/arvados-git-sync.rb production'" >> /etc/cron.d/gitolite-update
-
-# Create/update the repos now
-. /etc/profile.d/rvm.sh
-export ARVADOS_API_HOST=api
-export ARVADOS_API_HOST_INSECURE=yes
-export ARVADOS_API_TOKEN=@@API_SUPERUSER_SECRET@@
-/usr/local/arvados/update-gitolite.rb production
-
-echo "PATH=/usr/bin:/bin:/sbin" > /etc/cron.d/arvados-repo-update
-echo "*/5 * * * * git cd ~git/repositories/arvados.git; git fetch https://github.com/curoverse/arvados.git master:master" >> /etc/cron.d/arvados-repo-update
diff --git a/docker/api/setup.sh.in b/docker/api/setup.sh.in
deleted file mode 100755
index 2c7da92..0000000
--- a/docker/api/setup.sh.in
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/bash
-
-set -x
-
-if test -f /root/finished_arvados_setup ; then
-   exit
-fi
-
-. /etc/profile.d/rvm.sh
-
-export ARVADOS_API_HOST=api
-export ARVADOS_API_HOST_INSECURE=yes
-export ARVADOS_API_TOKEN=@@API_SUPERUSER_SECRET@@
-export HOME=/root
-
-# Wait for API server to come up.
-while ! arv user current ; do sleep 1 ; done
-
-# Arvados repository object
-all_users_group_uuid="@@API_HOSTNAME@@-j7d0g-fffffffffffffff"
-
-arv user update --uuid @@API_HOSTNAME@@-tpzed-000000000000000 --user '{"username":"root"}'
-repo_uuid=`arv --format=uuid repository create --repository '{"owner_uuid":"@@API_HOSTNAME@@-tpzed-000000000000000", "name":"arvados"}'`
-echo "Arvados repository uuid is $repo_uuid"
-
-read -rd $'\000' newlink <<EOF; arv link create --link "$newlink"
-{
- "tail_uuid":"$all_users_group_uuid",
- "head_uuid":"$repo_uuid",
- "link_class":"permission",
- "name":"can_read"
-}
-EOF
-
-# Make sure the necessary keep_service objects exist
-arv keep_service list > /tmp/keep_service.list
-
-grep -q keep_server_0 /tmp/keep_service.list
-if [[ "$?" != "0" ]]; then
-  arv keep_service create --keep-service "$(cat /root/keep_server_0.json)"
-fi
-
-grep -q keep_server_1 /tmp/keep_service.list
-if [[ "$?" != "0" ]]; then
-  arv keep_service create --keep-service "$(cat /root/keep_server_1.json)"
-fi
-
-grep -q keep_proxy /tmp/keep_service.list
-if [[ "$?" != "0" ]]; then
-  arv keep_service create --keep-service "$(cat /root/keep_proxy.json)"
-fi
-
-# User repository object
-# user_uuid=`arv --format=uuid user current`
-# repo_uuid=`arv --format=uuid repository create --repository '{"name":"@@ARVADOS_USER_NAME@@","fetch_url":"git at api.dev.arvados:@@ARVADOS_USER_NAME@@.git","push_url":"git at api.dev.arvados:@@ARVADOS_USER_NAME@@.git"}'`
-
-# echo "User repository uuid is $repo_uuid"
-
-# read -rd $'\000' newlink <<EOF; arv link create --link "$newlink"
-# {
-#  "tail_uuid":"$user_uuid",
-#  "head_uuid":"$repo_uuid",
-#  "link_class":"permission",
-#  "name":"can_write"
-# }
-# EOF
-
-# # Shell machine object
-shell_uuid=`arv --format=uuid virtual_machine create --virtual-machine '{"hostname":"shell"}'`
-arv virtual_machine create --virtual-machine '{"hostname":"shell.dev", "uuid": "@@API_HOSTNAME@@-2x53u-csbtkecoa669vkz"}'
-
-# read -rd $'\000' newlink <<EOF; arv link create --link "$newlink"
-# {
-#  "tail_uuid":"$user_uuid",
-#  "head_uuid":"$shell_uuid",
-#  "link_class":"permission",
-#  "name":"can_login",
-#  "properties": {"username": "@@ARVADOS_USER_NAME@@"}
-# }
-# EOF
-
-touch /root/finished_arvados_setup
diff --git a/docker/api/slurm.conf.in b/docker/api/slurm.conf.in
deleted file mode 100644
index 7312a0e..0000000
--- a/docker/api/slurm.conf.in
+++ /dev/null
@@ -1,60 +0,0 @@
-
-ControlMachine=api
-#SlurmUser=slurmd
-SlurmctldPort=6817
-SlurmdPort=6818
-AuthType=auth/munge
-#JobCredentialPrivateKey=/etc/slurm-llnl/slurm-key.pem
-#JobCredentialPublicCertificate=/etc/slurm-llnl/slurm-cert.pem
-StateSaveLocation=/tmp
-SlurmdSpoolDir=/tmp/slurmd
-SwitchType=switch/none
-MpiDefault=none
-SlurmctldPidFile=/var/run/slurmctld.pid
-SlurmdPidFile=/var/run/slurmd.pid
-ProctrackType=proctrack/pgid
-CacheGroups=0
-ReturnToService=2
-TaskPlugin=task/affinity
-#
-# TIMERS
-SlurmctldTimeout=300
-SlurmdTimeout=300
-InactiveLimit=0
-MinJobAge=300
-KillWait=30
-Waittime=0
-#
-# SCHEDULING
-SchedulerType=sched/backfill
-#SchedulerType=sched/builtin
-SchedulerPort=7321
-#SchedulerRootFilter=
-#SelectType=select/linear
-SelectType=select/cons_res
-SelectTypeParameters=CR_CPU_Memory
-FastSchedule=1
-#
-# LOGGING
-SlurmctldDebug=3
-#SlurmctldLogFile=
-SlurmdDebug=3
-#SlurmdLogFile=
-JobCompType=jobcomp/none
-#JobCompLoc=
-JobAcctGatherType=jobacct_gather/none
-#JobAcctLogfile=
-#JobAcctFrequency=
-#
-# COMPUTE NODES
-NodeName=DEFAULT
-# CPUs=8 State=UNKNOWN RealMemory=6967 Weight=6967
-PartitionName=DEFAULT MaxTime=INFINITE State=UP
-PartitionName=compute Default=YES Shared=yes
-#PartitionName=sysadmin Hidden=YES Shared=yes
-
-NodeName=compute[0-1]
-#NodeName=compute0 RealMemory=6967 Weight=6967
-
-PartitionName=compute Nodes=compute[0-1]
-PartitionName=crypto Nodes=compute[0-1]
diff --git a/docker/api/superuser_token.in b/docker/api/superuser_token.in
deleted file mode 100644
index 49bb34e..0000000
--- a/docker/api/superuser_token.in
+++ /dev/null
@@ -1 +0,0 @@
-@@API_SUPERUSER_SECRET@@
diff --git a/docker/api/supervisor.conf b/docker/api/supervisor.conf
deleted file mode 100644
index b24e552..0000000
--- a/docker/api/supervisor.conf
+++ /dev/null
@@ -1,43 +0,0 @@
-[program:ssh]
-user=root
-command=/etc/init.d/ssh start
-startsecs=0
-
-[program:postgres]
-user=postgres
-command=/usr/lib/postgresql/9.1/bin/postgres -D /var/lib/postgresql/9.1/main -c config_file=/etc/postgresql/9.1/main/postgresql.conf
-autorestart=true
-
-[program:passenger]
-command=/usr/local/bin/passenger.sh
-autorestart=true
-
-[program:munge]
-user=root
-command=/usr/local/bin/munge.sh
-startsecs=0
-
-[program:slurm]
-user=root
-command=/etc/init.d/slurm-llnl start
-startsecs=0
-
-[program:cron]
-user=root
-command=/etc/init.d/cron start
-startsecs=0
-
-[program:setup]
-user=root
-command=/usr/local/bin/setup.sh
-startsecs=0
-
-[program:setup-gitolite]
-user=root
-command=/usr/local/bin/setup-gitolite.sh
-startsecs=0
-
-[program:crunch-dispatch]
-user=root
-command=/usr/local/bin/crunch-dispatch-run.sh
-autorestart=true
diff --git a/docker/arv-web/Dockerfile b/docker/arv-web/Dockerfile
deleted file mode 100644
index 11a9c17..0000000
--- a/docker/arv-web/Dockerfile
+++ /dev/null
@@ -1,15 +0,0 @@
-FROM arvados/passenger
-MAINTAINER Peter Amstutz <peter.amstutz at curoverse.com>
-
-ADD apache2_foreground.sh /etc/apache2/foreground.sh
-
-ADD apache2_vhost /etc/apache2/sites-available/arv-web
-RUN \
-  mkdir /var/run/apache2 && \
-  a2dissite default && \
-  a2ensite arv-web && \
-  a2enmod rewrite
-
-EXPOSE 80
-
-CMD ["/etc/apache2/foreground.sh"]
\ No newline at end of file
diff --git a/docker/arv-web/apache2_foreground.sh b/docker/arv-web/apache2_foreground.sh
deleted file mode 100755
index 76766a6..0000000
--- a/docker/arv-web/apache2_foreground.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#! /bin/bash
-
-read pid cmd state ppid pgrp session tty_nr tpgid rest < /proc/self/stat
-trap "kill -HUP -$pgrp" HUP
-trap "kill -TERM -$pgrp; exit" EXIT TERM QUIT
-
-source /etc/apache2/envvars
-/usr/sbin/apache2 -D FOREGROUND
diff --git a/docker/arv-web/apache2_vhost b/docker/arv-web/apache2_vhost
deleted file mode 100644
index 5268201..0000000
--- a/docker/arv-web/apache2_vhost
+++ /dev/null
@@ -1,19 +0,0 @@
-<VirtualHost *:80>
-  # Index file and Document Root (where the public files are located)
-  DirectoryIndex index.html
-  DocumentRoot /mnt/public
-  RackBaseURI /
-
-  LogLevel warn
-  ErrorLog  ${APACHE_LOG_DIR}/error.log
-  CustomLog ${APACHE_LOG_DIR}/access.log combined
-
-  <Directory /mnt/public>
-    Options Indexes IncludesNoExec
-    Options -MultiViews
-    AllowOverride All
-    Order allow,deny
-    Allow from all
-  </Directory>
-
-</VirtualHost>
diff --git a/docker/arvdock b/docker/arvdock
deleted file mode 100755
index 43a384e..0000000
--- a/docker/arvdock
+++ /dev/null
@@ -1,559 +0,0 @@
-#!/bin/bash
-
-DOCKER=`which docker.io`
-
-if [[ "$DOCKER" == "" ]]; then
-    DOCKER=`which docker`
-fi
-
-CURL=`which curl`
-
-COMPUTE_COUNTER=0
-
-ARVADOS_DOMAIN=dev.arvados
-
-function usage {
-    echo >&2
-    echo >&2 "usage: $0 (start|stop|restart|reset|test) [options]"
-    echo >&2
-    echo >&2 "start    run new or restart stopped arvados containers"
-    echo >&2 "stop     stop arvados containers"
-    echo >&2 "restart  stop and then start arvados containers"
-    echo >&2 "reset    stop and delete containers WARNING: this will delete the data inside Arvados!"
-    echo >&2 "test     run tests"
-    echo >&2
-    echo >&2 "$0 options:"
-    echo >&2 "  -b[bridge], --bridge[=bridge] Docker bridge (default bridge docker0)"
-    echo >&2 "  -d[port], --doc[=port]        Documentation server (default port 9898)"
-    echo >&2 "  -w[port], --workbench[=port]  Workbench server (default port 9899)"
-    echo >&2 "  -s[port], --sso[=port]        SSO server (default port 9901)"
-    echo >&2 "  -a[port], --api[=port]        API server (default port 9900)"
-    echo >&2 "  -c, --compute                 Compute nodes (starts 2)"
-    echo >&2 "  -v, --vm                      Shell server"
-    echo >&2 "  -n, --nameserver              Nameserver"
-    echo >&2 "  -k, --keep                    Keep servers"
-    echo >&2 "  -p, --keepproxy               Keepproxy server"
-    echo >&2 "  -h, --help                    Display this help and exit"
-    echo >&2 "      --domain=dns.domain       DNS domain used by containers (default dev.arvados)"
-    echo >&2
-    echo >&2 "  If no options are given, the action is applied to all servers."
-    echo >&2
-    echo >&2 "$0 test [testname] [testname] ..."
-    echo >&2 "  By default, all tests are run."
-}
-
-function ip_address {
-    local container=$1
-    echo `$DOCKER inspect $container  |grep IPAddress |cut -f4 -d\"`
-}
-
-function bridge_ip_address {
-    local bridge_name=$1
-    # FIXME: add a more robust check here.
-    # because ip command could be mising, multiple docker bridges could be there.. etc.
-    echo $(ip --oneline --family inet addr show dev "$bridge_name" | awk '{ print $4 }'| cut -d/ -f1 )
-}
-
-function start_container {
-    bridge_ip=$(bridge_ip_address "$bridge")
-
-    local args="-d -i -t"
-    if [[ "$1" != '' ]]; then
-      local port="$1"
-      args="$args -p $port"
-    fi
-    if [[ "$2" != '' ]]; then
-      local name="$2"
-      if [[ "$name" == "api_server" ]]; then
-        args="$args --dns=$bridge_ip --dns-search=compute.$ARVADOS_DOMAIN --hostname api -P --name $name"
-      elif [[ "$name" == "compute" ]]; then
-        name=$name$COMPUTE_COUNTER
-        # We need --privileged because we run docker-inside-docker on the compute nodes
-        args="$args --dns=$bridge_ip --dns-search=compute.$ARVADOS_DOMAIN --hostname compute$COMPUTE_COUNTER -P --privileged --name $name"
-        let COMPUTE_COUNTER=$(($COMPUTE_COUNTER + 1))
-      else
-        args="$args --dns=$bridge_ip --dns-search=$ARVADOS_DOMAIN --hostname ${name#_server} --name $name"
-      fi
-    fi
-    if [[ "$3" != '' ]]; then
-      local volume="$3"
-      args="$args --volumes-from $volume"
-    fi
-    if [[ "$4" != '' ]]; then
-      local link="$4"
-      args="$args --link $link"
-    fi
-    local image=$5
-
-    `$DOCKER ps |grep -E "\b$name\b" -q`
-    if [[ "$?" == "0" ]]; then
-      echo "You have a running container with name $name -- skipping."
-      return
-    fi
-
-    echo "Starting container: $name"
-    `$DOCKER ps --all |grep -E "\b$name\b" -q`
-    if [[ "$?" == "0" ]]; then
-        echo "  $DOCKER start $name"
-        container=`$DOCKER start $name`
-    else
-        echo "  $DOCKER run $args $image"
-        container=`$DOCKER run $args $image`
-    fi
-
-    if [ "$?" != "0" -o "$container" = "" ]; then
-      echo "Unable to start container"
-      exit 1
-    else
-      echo "Started container: $container"
-    fi
-
-}
-
-# Create a Docker data volume
-function make_keep_volumes () {
-    `$DOCKER ps --all |grep -E "\bkeep_data\b" -q`
-    if [[ "$?" == "0" ]]; then
-      return
-    fi
-    docker create -v /keep-data --name keep_data arvados/keep
-}
-
-function do_start {
-    local start_doc=false
-    local start_sso=false
-    local start_api=false
-    local start_compute=false
-    local start_workbench=false
-    local start_vm=false
-    local start_nameserver=false
-    local start_keep=false
-    local start_keepproxy=false
-    local bridge="docker0"
-    local
-
-    # NOTE: This requires GNU getopt (part of the util-linux package on Debian-based distros).
-    local TEMP=`getopt -o d::s::b:a::cw::nkpvh \
-                  --long doc::,sso::,api::,bridge:,compute,workbench::,nameserver,keep,keepproxy,vm,help,domain:: \
-                  -n "$0" -- "$@"`
-
-    if [ $? != 0 ] ; then echo "Use -h for help"; exit 1 ; fi
-
-    # Note the quotes around `$TEMP': they are essential!
-    eval set -- "$TEMP"
-
-    while [ $# -ge 1 ]
-    do
-        case $1 in
-            -b | --bridge)
-                case "$2" in
-                    *)  start_bridge=$2; shift 2 ;;
-                esac
-                ;;
-            -d | --doc)
-                case "$2" in
-                    "") start_doc=9898; shift 2 ;;
-                    *)  start_doc=$2; shift 2 ;;
-                esac
-                ;;
-            -s | --sso)
-                case "$2" in
-                    "") start_sso=9901; shift 2 ;;
-                    *)  start_sso=$2; shift 2 ;;
-                esac
-                ;;
-            -a | --api)
-                case "$2" in
-                    "") start_api=9900; shift 2 ;;
-                    *)  start_api=$2; shift 2 ;;
-                esac
-                ;;
-            -c | --compute)
-                start_compute=2
-                shift
-                ;;
-            -w | --workbench)
-                case "$2" in
-                    "") start_workbench=9899; shift 2 ;;
-                    *)  start_workbench=$2; shift 2 ;;
-                esac
-                ;;
-            -v | --vm)
-                start_vm=true
-                shift
-                ;;
-            -n | --nameserver)
-                start_nameserver=true
-                shift
-                ;;
-            -k | --keep)
-                start_keep=true
-                shift
-                ;;
-            -p | --keepproxy)
-                start_keepproxy=true
-                shift
-                ;;
-            --domain)
-                case "$2" in
-                    *) ARVADOS_DOMAIN="$2"; shift 2 ;;
-                esac
-                ;;
-            --)
-                shift
-                break
-                ;;
-            *)
-                usage
-                exit 1
-                ;;
-        esac
-    done
-
-    # If no options were selected, then start all servers.
-    if [[ $start_doc == false &&
-          $start_sso == false &&
-          $start_api == false &&
-          $start_compute == false &&
-          $start_workbench == false &&
-          $start_vm == false &&
-          $start_nameserver == false &&
-          $start_keep == false &&
-          $start_keepproxy == false ]]
-    then
-        start_doc=9898
-        start_sso=9901
-        start_api=9900
-        start_compute=2
-        start_workbench=9899
-        #start_vm=true
-        start_nameserver=true
-        start_keep=true
-        start_keepproxy=true
-    fi
-
-    if [[ $start_nameserver != false ]]
-    then
-      $DOCKER ps | grep skydns >/dev/null
-      need_skydns="$?"
-
-      $DOCKER ps | grep skydock >/dev/null
-      need_skydock="$?"
-
-      if [[ "$need_skydns" != 0 || "$need_skydock" != 0 ]]
-      then
-          # skydns and skydock need to both be running before everything else.
-          # If they are not running we need to shut everything down and start
-          # over, otherwise DNS will be broken and the containers won't find each other.
-          do_stop
-          need_skydns=1
-          need_skydock=1
-      fi
-
-      # We rely on skydock and skydns for dns discovery between the slurm controller and compute nodes,
-      # so make sure they are running
-      $DOCKER ps | grep skydns >/dev/null
-      if [[ $need_skydns != "0" ]]; then
-        echo "Detecting bridge '$bridge' IP for crosbymichael/skydns"
-        bridge_ip=$(bridge_ip_address "$bridge")
-
-        echo "Starting crosbymichael/skydns container..."
-        $DOCKER rm "skydns" 2>/dev/null
-        echo $DOCKER run -d -p $bridge_ip:53:53/udp --name skydns crosbymichael/skydns -nameserver 8.8.8.8:53 -domain arvados
-        $DOCKER run -d -p $bridge_ip:53:53/udp --name skydns crosbymichael/skydns -nameserver 8.8.8.8:53 -domain arvados
-      fi
-      $DOCKER ps | grep skydock >/dev/null
-      if [[ "$need_skydock" != "0" ]]; then
-        echo "Starting crosbymichael/skydock container..."
-        $DOCKER rm "skydock" 2>/dev/null
-        echo $DOCKER run -d -v /var/run/docker.sock:/docker.sock --name skydock crosbymichael/skydock -ttl 30 -environment dev -s /docker.sock -domain arvados -name skydns
-        $DOCKER run -d -v /var/run/docker.sock:/docker.sock --name skydock crosbymichael/skydock -ttl 30 -environment dev -s /docker.sock -domain arvados -name skydns
-      fi
-    fi
-
-    if [[ $start_sso != false ]]
-    then
-        start_container "$start_sso:443" "sso_server" '' '' "arvados/sso"
-    fi
-
-    if [[ $start_api != false ]]
-    then
-      if [[ $start_sso != false ]]; then
-        start_container "$start_api:443" "api_server" '' "sso_server:sso" "arvados/api"
-      else
-        start_container "$start_api:443" "api_server" '' '' "arvados/api"
-      fi
-    fi
-
-    if [[ $start_compute != false ]]
-    then
-        for i in `seq 0 $(($start_compute - 1))`; do
-          start_container "" "compute" '' "api_server:api" "arvados/compute"
-        done
-    fi
-
-    if [[ $start_keep != false ]]
-    then
-        # create `keep_volumes' array with a list of keep mount points
-        # remove any stale metadata from those volumes before starting them
-        make_keep_volumes
-        start_container "25107:25107" "keep_server_0" \
-            "keep_data" \
-            "api_server:api" \
-            "arvados/keep"
-        start_container "25108:25107" "keep_server_1" \
-            "keep_data" \
-            "api_server:api" \
-            "arvados/keep"
-    fi
-
-    if [[ $start_keepproxy != false ]]
-    then
-        start_container "9902:9100" "keepproxy_server" '' \
-            "api_server:api" \
-            "arvados/keepproxy"
-    fi
-
-    if [[ $start_doc != false ]]
-    then
-        start_container "$start_doc:80" "doc_server" '' '' "arvados/doc"
-    fi
-
-    if [[ $start_vm != false ]]
-    then
-        start_container "" "shell" '' "api_server:api" "arvados/shell"
-    fi
-
-    if [[ $start_workbench != false ]]
-    then
-        start_container "" "workbench_server" '' "" "arvados/workbench"
-    fi
-
-    if [[ $start_api != false ]]
-    then
-        if [[ -f "api/generated/superuser_token" ]]
-        then
-          if [ -d $HOME/.config/arvados ] || mkdir -p $HOME/.config/arvados
-          then
-            cat >$HOME/.config/arvados/settings.conf <<EOF
-ARVADOS_API_HOST=$(ip_address "api_server")
-ARVADOS_API_HOST_INSECURE=yes
-ARVADOS_API_TOKEN=$(cat api/generated/superuser_token)
-EOF
-          fi
-        fi
-    fi
-
-    if [ "$(awk '($1 == "nameserver"){print $2; exit}' </etc/resolv.conf)" != "$bridge_ip" ]; then
-        echo
-        echo "******************************************************************"
-        echo "To access Arvados you must add the Arvados nameserver to the top"
-        echo "of your DNS configuration in /etc/resolv.conf:"
-        echo "nameserver $bridge_ip"
-        echo
-        echo "Then run '$0 start' again"
-        echo "******************************************************************"
-        echo
-    else
-        while ! $CURL -k -L -f http://workbench.$ARVADOS_DOMAIN >/dev/null 2>/dev/null ; do
-            echo "Waiting for Arvados to be ready."
-            sleep 1
-        done
-
-        `$DOCKER ps |grep -E "\bdoc_server\b" -q`
-        if [[ "$?" == "0" ]]; then
-            echo
-            echo "******************************************************************"
-            echo "You can access the Arvados documentation at http://doc.$ARVADOS_DOMAIN"
-            echo "******************************************************************"
-            echo
-        fi
-
-        `$DOCKER ps |grep -E "\bworkbench_server\b" -q`
-        if [[ "$?" == "0" ]]; then
-            echo
-            echo "********************************************************************"
-            echo "You can access the Arvados workbench at http://workbench.$ARVADOS_DOMAIN"
-            echo "********************************************************************"
-            echo
-        fi
-    fi
-
-}
-
-function do_stop {
-    local stop_doc=""
-    local stop_sso=""
-    local stop_api=""
-    local stop_compute=""
-    local stop_workbench=""
-    local stop_nameserver=""
-    local stop_vm=""
-    local stop_keep=""
-    local stop_keepproxy=""
-
-    # NOTE: This requires GNU getopt (part of the util-linux package on Debian-based distros).
-    local TEMP=`getopt -o dsacwnkpvh \
-                  --long doc,sso,api,compute,workbench,nameserver,keep,keepproxy,vm,help,domain:: \
-                  -n "$0" -- "$@"`
-
-    if [ $? != 0 ] ; then echo "Use -h for help"; exit 1 ; fi
-
-    # Note the quotes around `$TEMP': they are essential!
-    eval set -- "$TEMP"
-
-    while [ $# -ge 1 ]
-    do
-        case $1 in
-            -d | --doc)
-                stop_doc=doc_server ; shift ;;
-            -s | --sso)
-                stop_sso=sso_server ; shift ;;
-            -a | --api)
-                stop_api=api_server ; shift ;;
-            -c | --compute)
-                stop_compute=`$DOCKER ps |grep -E "\bcompute[0-9]+\b" |grep -v api_server |cut -f1 -d ' '` ; shift ;;
-            -w | --workbench)
-                stop_workbench=workbench_server ; shift ;;
-            -n | --nameserver )
-                stop_nameserver="skydock skydns" ; shift ;;
-            -v | --vm )
-                stop_vm="shell" ; shift ;;
-            -k | --keep )
-                stop_keep="keep_server_0 keep_server_1" ; shift ;;
-            -p | --keepproxy )
-                stop_keep="keepproxy_server" ; shift ;;
-            --domain)
-                case "$2" in
-                    *) ARVADOS_DOMAIN="$2"; shift 2 ;;
-                esac
-                ;;
-            --)
-                shift
-                break
-                ;;
-            *)
-                usage
-                exit 1
-                ;;
-        esac
-    done
-
-    # If no options were selected, then stop all servers.
-    if [[ $stop_doc == "" &&
-          $stop_sso == "" &&
-          $stop_api == "" &&
-          $stop_compute == "" &&
-          $stop_workbench == "" &&
-          $stop_vm == "" &&
-          $stop_nameserver == "" &&
-          $stop_keep == "" &&
-          $stop_keepproxy == "" ]]
-    then
-        stop_doc=doc_server
-        stop_sso=sso_server
-        stop_api=api_server
-        stop_compute=`$DOCKER ps |grep -E "\bcompute[0-9]+\b" |grep -v api_server |cut -f1 -d ' '`
-        stop_workbench=workbench_server
-        stop_vm=shell
-        stop_nameserver="skydock skydns"
-        stop_keep="keep_server_0 keep_server_1"
-        stop_keepproxy="keepproxy_server"
-    fi
-
-    $DOCKER stop $stop_doc $stop_sso $stop_api $stop_compute $stop_workbench $stop_nameserver $stop_keep $stop_keepproxy $stop_vm \
-        2>/dev/null
-}
-
-function do_test {
-    local alltests
-    if [ $# -lt 1 ]
-    then
-        alltests="python-sdk api"
-    else
-        alltests="$@"
-    fi
-
-    for testname in $alltests
-    do
-        echo "testing $testname..."
-        case $testname in
-            python-sdk)
-                do_start --api --keep --sso
-                export ARVADOS_API_HOST=$(ip_address "api_server")
-                export ARVADOS_API_HOST_INSECURE=yes
-                export ARVADOS_API_TOKEN=$(cat api/generated/superuser_token)
-                python -m unittest discover ../sdk/python
-                ;;
-            api)
-                $DOCKER run -t -i arvados/api \
-                    /usr/src/arvados/services/api/script/rake_test.sh
-                ;;
-            *)
-                echo >&2 "unknown test $testname"
-                ;;
-        esac
-    done
-}
-
-function do_reset {
-    for name in skydock skydns workbench_server shell doc_server keepproxy_server keep_server_0 keep_server_1 compute0 compute1 api_server keepproxy keep_data sso_server
-    do
-        `$DOCKER ps |grep -E "\b$name\b" -q`
-        if [[ "$?" == "0" ]]; then
-            echo "  $DOCKER stop $name"
-            $DOCKER stop $name
-        fi
-        `$DOCKER ps --all |grep -E "\b$name\b" -q`
-        if [[ "$?" == "0" ]]; then
-            echo "  $DOCKER rm $name"
-            $DOCKER rm $name
-        fi
-    done
-}
-
-if [ "$DOCKER" == '' ]
-then
-  echo "Docker not found. Please install it first."
-  exit 2
-fi
-
-if [ "$CURL" == '' ]
-then
-  echo "Curl not found. Please install it first."
-  exit 3
-fi
-
-if [ $# -lt 1 ]
-then
-  usage
-  exit 1
-fi
-
-case $1 in
-    start)
-        shift
-        do_start $@
-        ;;
-    stop)
-        shift
-        do_stop $@
-        ;;
-    restart)
-        shift
-        do_stop $@
-        do_start $@
-        ;;
-    test)
-        shift
-        do_test $@
-        ;;
-    reset)
-        shift
-        do_reset $@
-        ;;
-    *)
-        usage
-        exit 1
-        ;;
-esac
diff --git a/docker/base/Dockerfile b/docker/base/Dockerfile
deleted file mode 100644
index 5eeabc8..0000000
--- a/docker/base/Dockerfile
+++ /dev/null
@@ -1,43 +0,0 @@
-# Arvados base image (wheezy+rvm+Arvados source) in Docker
-
-# Based on Debian Wheezy
-FROM arvados/debian:wheezy
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-ENV DEBIAN_FRONTEND noninteractive
-
-# Install prerequisite packages for Arvados
-#   * git, curl, rvm
-#   * Arvados source code in /usr/src/arvados, for preseeding gem installation
-
-ADD apt.arvados.org.list /etc/apt/sources.list.d/
-RUN apt-key adv --keyserver pool.sks-keyservers.net --recv 1078ECD7
-RUN apt-get update -q
-
-## 2015-06-29 nico
-## KNOWN BUG:  python-oauth2client needs specific versions
-## python-pyasn1=0.1.7 python-pyasn1-modules=0.0.5
-## but apt-get doesn't resolv them correctly. we have to
-## do it by hand here (or add apt_preferences if it gets too hairy)
-RUN apt-get install -qy apt-utils git curl \
-             libcurl3 libcurl3-gnutls libcurl4-openssl-dev locales \
-             postgresql-server-dev-9.1 python-arvados-python-client \
-             python-google-api-python-client python-oauth2client python-pyasn1=0.1.7 python-pyasn1-modules=0.0.5
-
-RUN gpg --keyserver pool.sks-keyservers.net --recv-keys D39DC0E3 && \
-    /bin/sed -ri 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
-    /usr/sbin/locale-gen && \
-    curl -L https://get.rvm.io | bash -s stable && \
-    /usr/local/rvm/bin/rvm install 2.1 && \
-    /usr/local/rvm/bin/rvm alias create default ruby-2.1 && \
-    /bin/mkdir -p /usr/src/arvados
-
-ADD generated/arvados.tar.gz /usr/src/arvados/
-
-# Update gem. This (hopefully) fixes
-# https://github.com/rubygems/rubygems.org/issues/613.
-RUN /usr/local/rvm/bin/rvm-exec default gem update --system && \
-    /usr/local/rvm/bin/rvm-exec default gem install bundler  -v 1.9.9 && \
-    /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/apps/workbench/Gemfile && \
-    /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/services/api/Gemfile && \
-    /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/doc/Gemfile
diff --git a/docker/base/apt.arvados.org.list b/docker/base/apt.arvados.org.list
deleted file mode 100644
index 7eb8716..0000000
--- a/docker/base/apt.arvados.org.list
+++ /dev/null
@@ -1,2 +0,0 @@
-# apt.arvados.org
-deb http://apt.arvados.org/ wheezy main
diff --git a/docker/bcbio-nextgen/Dockerfile b/docker/bcbio-nextgen/Dockerfile
deleted file mode 100644
index 8f6e774..0000000
--- a/docker/bcbio-nextgen/Dockerfile
+++ /dev/null
@@ -1,47 +0,0 @@
-# Install Arvados SDK into bcbio-nextgen Docker image.
-#
-# To build bcbio-nextgen:
-#
-# $ git clone https://github.com/chapmanb/bcbio-nextgen.git
-# $ cd bcbio-nextgen
-# $ docker build
-# $ docker tag <image> bcbio-nextgen
-#
-
-FROM bcbio-nextgen
-MAINTAINER Peter Amstutz <peter.amstutz at curoverse.com>
-
-USER root
-
-# Install Ruby 2.1.0
-RUN apt-get remove --quiet --assume-yes ruby && \
-    curl -L https://get.rvm.io | bash -s stable && \
-    /usr/local/rvm/bin/rvm install 2.1.0 && \
-    /bin/mkdir -p /usr/src/arvados
-
-ADD generated/arvados.tar.gz /usr/src/arvados/
-ENV GEM_HOME /usr/local/rvm/gems/ruby-2.1.0
-ENV GEM_PATH /usr/local/rvm/gems/ruby-2.1.0:/usr/local/rvm/gems/ruby-2.1.0 at global
-ENV PATH /usr/local/rvm/gems/ruby-2.1.0/bin:/usr/local/rvm/gems/ruby-2.1.0 at global/bin:/usr/local/rvm/rubies/ruby-2.1.0/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
-
-# Install dependencies and set up system.
-# The FUSE packages help ensure that we can install the Python SDK (arv-mount).
-RUN /usr/bin/apt-get update && \
-    /usr/bin/apt-get install --quiet --assume-yes python-dev python-llfuse python-pip \
-      libio-socket-ssl-perl libjson-perl liburi-perl libwww-perl \
-      fuse libattr1-dev libfuse-dev && \
-    /usr/sbin/adduser --disabled-password \
-      --gecos 'Crunch execution user' crunch && \
-    /usr/bin/install --directory --owner=crunch --group=crunch --mode=0700 /keep /tmp/crunch-src /tmp/crunch-job && \
-    /bin/ln -s /usr/src/arvados /usr/local/src/arvados
-
-# Install Arvados packages.
-RUN gem update --system && \
-    find /usr/src/arvados/sdk -name '*.gem' -print0 | \
-      xargs -0rn 1 gem install && \
-    cd /usr/src/arvados/services/fuse && \
-    python setup.py install && \
-    cd /usr/src/arvados/sdk/python && \
-    python setup.py install
-
-USER crunch
diff --git a/docker/build.sh b/docker/build.sh
deleted file mode 100755
index 77aeb1f..0000000
--- a/docker/build.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#! /bin/bash
-
-# make sure a Ruby version greater than or equal to 1.9.3 is installed before proceeding
-if ! ruby -e 'exit RUBY_VERSION >= "1.9.3"' 2>/dev/null
-then
-    echo "Building the Arvados docker containers requires at least Ruby 1.9.3."
-    echo "Please install ruby 1.9.3 or higher before executing this script."
-    exit 1
-fi
-
-function usage {
-    echo >&2
-    echo >&2 "usage: $0 [options]"
-    echo >&2
-    echo >&2 "Calling $0 without arguments will build all Arvados docker images"
-    echo >&2
-    echo >&2 "$0 options:"
-    echo >&2 "  -h, --help   Print this help text"
-    echo >&2 "  clean        Clear all build information"
-    echo >&2 "  realclean    clean and remove all Arvados Docker images except arvados/debian"
-    echo >&2 "  deepclean    realclean and remove arvados/debian, crosbymichael/skydns and "
-    echo >&2 "               crosbymichael/skydns Docker images"
-    echo >&2
-}
-
-if [ "$1" = '-h' ] || [ "$1" = '--help' ]; then
-  usage
-  exit 1
-fi
-
-build_tools/build.rb
-
-if [[ "$?" == "0" ]]; then
-    DOCKER=`which docker.io`
-
-    if [[ "$DOCKER" == "" ]]; then
-      DOCKER=`which docker`
-    fi
-
-    DOCKER=$DOCKER /usr/bin/make -f build_tools/Makefile $*
-fi
diff --git a/docker/build_tools/Makefile b/docker/build_tools/Makefile
deleted file mode 100644
index 8a757d0..0000000
--- a/docker/build_tools/Makefile
+++ /dev/null
@@ -1,281 +0,0 @@
-# This is the 'shell hack'. Call make with DUMP=1 to see the effect.
-ifdef DUMP
-OLD_SHELL := $(SHELL)
-SHELL = $(warning [$@])$(OLD_SHELL) -x
-endif
-
-all: skydns-image skydock-image api-image compute-image doc-image workbench-image keep-image keep-proxy-image sso-image shell-image
-
-IMAGE_FILES := $(shell ls *-image 2>/dev/null |grep -v -E 'debian-arvados-image|skydns-image|skydock-image')
-GENERATED_DIRS := $(shell ls */generated 2>/dev/null)
-
-# `make clean' removes the files generated in the build directory
-# but does not remove any docker images generated in previous builds
-clean:
-	@echo "make clean"
-	- at rm -rf build
-	+@[ "$(IMAGE_FILES)" = "" ] || rm -f $(IMAGE_FILES) 2>/dev/null
-	+@[ "$(GENERATED_DIRS)" = "" ] || rm -rf */generated 2>/dev/null
-
-DEBIAN_IMAGE := $(shell $(DOCKER) images -q arvados/debian |head -n1)
-
-REALCLEAN_CONTAINERS := $(shell $(DOCKER) ps -a |grep -e arvados -e api_server -e keep_server -e keep_proxy_server -e doc_server -e workbench_server |cut -f 1 -d' ')
-# Generate a list of docker images tagged as arvados/*
-# but exclude those tagged as arvados/build
-ADI_TEMPFILE := $(shell mktemp)
-ARVADOS_DOCKER_IMAGES := $(shell $(DOCKER) images -q arvados/* |sort > $(ADI_TEMPFILE))
-ABDI_TEMPFILE := $(shell mktemp)
-ARVADOS_BUILD_DOCKER_IMAGES := $(shell $(DOCKER) images -q arvados/build |sort > $(ABDI_TEMPFILE))
-REALCLEAN_IMAGES := $(shell comm -3 $(ADI_TEMPFILE) $(ABDI_TEMPFILE) |grep -v $(DEBIAN_IMAGE) 2>/dev/null)
-DEEPCLEAN_IMAGES := $(shell comm -3 $(ADI_TEMPFILE) $(ABDI_TEMPFILE))
-SKYDNS_CONTAINERS := $(shell $(DOCKER) ps -a |grep -e crosbymichael/skydns -e crosbymichael/skydock |cut -f 1 -d' ')
-SKYDNS_IMAGES := $(shell $(DOCKER) images -q crosbymichael/skyd*)
-
-# `make realclean' will also remove the Arvados docker images (but not the
-# arvados/debian image) and force subsequent makes to build the entire chain
-# from the ground up
-realclean: clean
-	@echo "make realclean"
-	+@[ "`$(DOCKER) ps -q`" = '' ] || $(DOCKER) stop `$(DOCKER) ps -q`
-	+@[ "$(REALCLEAN_CONTAINERS)" = '' ] || $(DOCKER) rm $(REALCLEAN_CONTAINERS)
-	+@[ "$(REALCLEAN_IMAGES)" = '' ] || $(DOCKER) rmi $(REALCLEAN_IMAGES)
-
-# `make deepclean' will remove all Arvados docker images and the skydns/skydock
-# images and force subsequent makes to build the entire chain from the ground up
-deepclean: clean
-	@echo "make deepclean"
-	- at rm -f debian-arvados-image 2>/dev/null
-	- at rm -f skydns-image skydock-image 2>/dev/null
-	+@[ "`$(DOCKER) ps -q`" = '' ] || $(DOCKER) stop `$(DOCKER) ps -q`
-	+@[ "$(REALCLEAN_CONTAINERS)" = '' ] || $(DOCKER) rm $(REALCLEAN_CONTAINERS)
-	+@[ "$(DEEPCLEAN_IMAGES)" = '' ] || $(DOCKER) rmi $(DEEPCLEAN_IMAGES)
-	+@[ "$(SKYDNS_CONTAINERS)" = '' ] || $(DOCKER) rm $(SKYDNS_CONTAINERS)
-	+@[ "$(SKYDNS_IMAGES)" = '' ] || $(DOCKER) rmi $(SKYDNS_IMAGES)
-
-# ============================================================
-# Dependencies for */generated files which are prerequisites
-# for building docker images.
-
-CONFIG_RB = build_tools/config.rb
-
-BUILD = build/.buildstamp
-
-BASE_DEPS = base/Dockerfile config.yml $(BASE_GENERATED)
-
-SLURM_DEPS = slurm/Dockerfile config.yml $(SLURM_GENERATED)
-
-JOBS_DEPS = jobs/Dockerfile
-
-ARV_WEB_DEPS = arv-web/Dockerfile arv-web/apache2_foreground.sh arv-web/apache2_vhost
-
-JAVA_BWA_SAMTOOLS_DEPS = java-bwa-samtools/Dockerfile
-
-API_DEPS = api/* config.yml $(API_GENERATED)
-
-SHELL_DEPS = shell/* config.yml $(SHELL_GENERATED)
-
-COMPUTE_DEPS = compute/* config.yml $(COMPUTE_GENERATED)
-
-DOC_DEPS = doc/Dockerfile $(DOC_GENERATED)
-
-WORKBENCH_DEPS = workbench/Dockerfile \
-                 config.yml \
-                 $(WORKBENCH_GENERATED)
-
-KEEP_DEPS = keep/Dockerfile config.yml $(KEEP_GENERATED)
-
-KEEP_PROXY_DEPS = keepproxy/Dockerfile config.yml $(KEEP_PROXY_GENERATED)
-
-SSO_DEPS = config.yml $(SSO_GENERATED)
-
-BCBIO_NEXTGEN_DEPS = bcbio-nextgen/Dockerfile
-
-BASE_GENERATED = base/generated/arvados.tar.gz
-
-COMPUTE_GENERATED_IN   = compute/*.in
-COMPUTE_GENERATED      = compute/generated/*
-
-KEEP_GENERATED_IN      = keep/*.in
-KEEP_GENERATED         = keep/generated/*
-
-KEEP_PROXY_GENERATED_IN      = keepproxy/*.in
-KEEP_PROXY_GENERATED         = keepproxy/generated/*
-
-API_GENERATED_IN       = api/*.in
-API_GENERATED          = api/generated/*
-
-SHELL_GENERATED_IN     = shell/*.in
-SHELL_GENERATED        = shell/generated/*
-
-SLURM_GENERATED_IN     = slurm/*.in
-SLURM_GENERATED        = slurm/generated/*
-
-WORKBENCH_GENERATED_IN = workbench/*.in
-WORKBENCH_GENERATED    = workbench/generated/*
-
-SSO_GENERATED_IN       = sso/*.in
-SSO_GENERATED          = sso/generated/*
-
-DOC_GENERATED_IN       = doc/*.in
-DOC_GENERATED          = doc/generated/*
-
-KEEP_DEPS += keep/generated/bin/keepproxy
-KEEP_DEPS += keep/generated/bin/keepstore
-keep/generated/bin/%: $(wildcard build/services/%/*.go)
-	mkdir -p keep/generated/src/git.curoverse.com
-	ln -sfn ../../../../.. keep/generated/src/git.curoverse.com/arvados.git
-	GOPATH=$(shell pwd)/keep/generated go get $(@:keep/generated/bin/%=git.curoverse.com/arvados.git/services/%)
-
-KEEP_PROXY_DEPS += keepproxy/generated/bin/keepproxy
-keepproxy/generated/bin/%: $(wildcard build/services/%/*.go)
-	mkdir -p keepproxy/generated/src/git.curoverse.com
-	ln -sfn ../../../../.. keepproxy/generated/src/git.curoverse.com/arvados.git
-	GOPATH=$(shell pwd)/keepproxy/generated go get $(@:keepproxy/generated/bin/%=git.curoverse.com/arvados.git/services/%)
-
-$(BUILD):
-	mkdir -p build
-	rsync -rlp --exclude=docker/ --exclude='**/log/*' --exclude='**/tmp/*' \
-		--chmod=Da+rx,Fa+rX ../ build/
-	find build/ -name \*.gem -delete
-	cd build/services/fuse/ && python setup.py build
-	cd build/sdk/python/ && python setup.py build
-	cd build/sdk/cli && gem build arvados-cli.gemspec
-	cd build/sdk/ruby && gem build arvados.gemspec
-	touch build/.buildstamp
-
-$(SLURM_GENERATED): $(BUILD)
-	$(CONFIG_RB) slurm
-	mkdir -p slurm/generated
-
-$(BASE_GENERATED): $(BUILD)
-	$(CONFIG_RB) base
-	mkdir -p base/generated
-	tar -czf base/generated/arvados.tar.gz -C build .
-
-$(API_GENERATED): $(API_GENERATED_IN)
-	$(CONFIG_RB) api
-
-$(SHELL_GENERATED): $(SHELL_GENERATED_IN)
-	$(CONFIG_RB) shell
-
-$(WORKBENCH_GENERATED): $(WORKBENCH_GENERATED_IN)
-	$(CONFIG_RB) workbench
-
-$(COMPUTE_GENERATED): $(COMPUTE_GENERATED_IN)
-	$(CONFIG_RB) compute
-
-$(SSO_GENERATED): $(SSO_GENERATED_IN)
-	$(CONFIG_RB) sso
-
-$(DOC_GENERATED): $(DOC_GENERATED_IN)
-	$(CONFIG_RB) doc
-
-$(KEEP_GENERATED): $(KEEP_GENERATED_IN)
-	$(CONFIG_RB) keep
-
-$(KEEP_PROXY_GENERATED): $(KEEP_PROXY_GENERATED_IN)
-	$(CONFIG_RB) keepproxy
-
-DOCKER_BUILD = $(DOCKER) build --rm=true
-
-# ============================================================
-# The main Arvados servers: api, doc, workbench, compute
-
-api-image: passenger-image $(BUILD) $(API_DEPS)
-	@echo "Building api-image"
-	mkdir -p api/generated
-	tar -czf api/generated/api.tar.gz -C build/services api
-	$(DOCKER_BUILD) -t arvados/api api
-	date >api-image
-
-shell-image: base-image $(BUILD) $(SHELL_DEPS)
-	@echo "Building shell-image"
-	mkdir -p shell/generated
-	$(DOCKER_BUILD) -t arvados/shell shell
-	date >shell-image
-
-compute-image: slurm-image $(BUILD) $(COMPUTE_DEPS)
-	@echo "Building compute-image"
-	$(DOCKER_BUILD) -t arvados/compute compute
-	date >compute-image
-
-doc-image: base-image $(BUILD) $(DOC_DEPS)
-	@echo "Building doc-image"
-	mkdir -p doc/generated
-	tar -czf doc/generated/doc.tar.gz -C build doc
-	$(DOCKER_BUILD) -t arvados/doc doc
-	date >doc-image
-
-keep-image: debian-arvados-image $(BUILD) $(KEEP_DEPS)
-	@echo "Building keep-image"
-	$(DOCKER_BUILD) -t arvados/keep keep
-	date >keep-image
-
-keep-proxy-image: debian-arvados-image $(BUILD) $(KEEP_PROXY_DEPS)
-	@echo "Building keep-proxy-image"
-	$(DOCKER_BUILD) -t arvados/keepproxy keepproxy
-	date >keep-proxy-image
-
-jobs-image: debian-arvados-image $(BUILD) $(JOBS_DEPS)
-	$(DOCKER_BUILD) --build-arg COMMIT=$(COMMIT) -t arvados/jobs jobs
-	date >jobs-image
-
-java-bwa-samtools-image: jobs-image $(BUILD) $(JAVA_BWA_SAMTOOLS_DEPS)
-	$(DOCKER_BUILD) -t arvados/jobs-java-bwa-samtools java-bwa-samtools
-	date >java-bwa-samtools-image
-
-bcbio-nextgen-image: $(BUILD) $(BASE_GENERATED) $(BCBIO_NEXTGEN_DEPS)
-	rm -rf bcbio-nextgen/generated
-	cp -r base/generated bcbio-nextgen
-	$(DOCKER_BUILD) -t arvados/bcbio-nextgen bcbio-nextgen
-	date >bcbio-nextgen-image
-
-workbench-image: passenger-image $(BUILD) $(WORKBENCH_DEPS)
-	@echo "Building workbench-image"
-	mkdir -p workbench/generated
-	tar -czf workbench/generated/workbench.tar.gz -C build/apps workbench
-	$(DOCKER_BUILD) -t arvados/workbench workbench
-	date >workbench-image
-
-sso-image: passenger-image $(SSO_DEPS)
-	@echo "Building sso-image"
-	$(DOCKER_BUILD) -t arvados/sso sso
-	date >sso-image
-
-arv-web-image: passenger-image $(ARV_WEB_DEPS)
-	$(DOCKER_BUILD) -t arvados/arv-web arv-web
-	date >arv-web-image
-
-# ============================================================
-# The arvados/base image is the base Debian image plus packages
-# that are dependencies for every Arvados service.
-
-passenger-image: base-image
-	@echo "Building passenger-image"
-	$(DOCKER_BUILD) -t arvados/passenger passenger
-	date >passenger-image
-
-slurm-image: base-image $(SLURM_DEPS)
-	@echo "Building slurm-image"
-	$(DOCKER_BUILD) -t arvados/slurm slurm
-	date >slurm-image
-
-base-image: debian-arvados-image $(BASE_DEPS)
-	@echo "Building base-image"
-	$(DOCKER_BUILD) -t arvados/base base
-	date >base-image
-
-debian-arvados-image:
-	@echo "Building debian-arvados-image"
-	./mkimage-debootstrap.sh arvados/debian wheezy http://ftp.us.debian.org/debian/
-	date >debian-arvados-image
-
-skydns-image:
-	@echo "Downloading skydns-image"
-	$(DOCKER) pull crosbymichael/skydns
-	date >skydns-image
-
-skydock-image:
-	@echo "Downloading skydock-image"
-	$(DOCKER) pull crosbymichael/skydock
-	date >skydock-image
diff --git a/docker/build_tools/build.rb b/docker/build_tools/build.rb
deleted file mode 100755
index e3309a9..0000000
--- a/docker/build_tools/build.rb
+++ /dev/null
@@ -1,232 +0,0 @@
-#! /usr/bin/env ruby
-
-require 'optparse'
-require 'tempfile'
-require 'yaml'
-
-def main options
-  if not ip_forwarding_enabled?
-    warn "NOTE: IP forwarding must be enabled in the kernel."
-    warn "Turning IP forwarding on now."
-    sudo %w(/sbin/sysctl net.ipv4.ip_forward=1)
-  end
-
-  # Check that:
-  #   * Docker is installed and can be found in the user's path
-  #   * Docker can be run as a non-root user
-  #      - TODO: put the user in the docker group if necessary
-  #      - TODO: mount cgroup automatically
-  #      - TODO: start the docker service if not started
-
-  docker_path = %x(which docker.io).chomp
-
-  if docker_path.empty?
-    docker_path = %x(which docker).chomp
-  end
-
-  if docker_path.empty?
-    warn "Docker not found."
-    warn ""
-    warn "Please make sure that Docker has been installed and"
-    warn "can be found in your PATH."
-    warn ""
-    warn "Installation instructions for a variety of platforms can be found at"
-    warn "http://docs.docker.io/en/latest/installation/"
-    exit 1
-  elsif not docker_ok? docker_path
-    warn "WARNING: docker could not be run."
-    warn "Please make sure that:"
-    warn "  * You have permission to read and write /var/run/docker.sock"
-    warn "  * a 'cgroup' volume is mounted on your machine"
-    warn "  * the docker daemon is running"
-    exit 2
-  end
-
-  # Check that debootstrap is installed.
-  if not debootstrap_ok?
-    warn "Installing debootstrap."
-    sudo '/usr/bin/apt-get', 'install', 'debootstrap'
-  end
-
-  # Generate a config.yml if it does not exist or is empty
-  if not File.size? 'config.yml'
-    print "Generating config.yml.\n"
-    # print "Arvados needs to know the email address of the administrative user,\n"
-    # print "so that when that user logs in they are automatically made an admin.\n"
-    # print "This should be an email address associated with a Google account.\n"
-    # print "\n"
-    # admin_email_address = ""
-    # until is_valid_email? admin_email_address
-    #   print "Enter your Google ID email address here: "
-    #   admin_email_address = gets.strip
-    #   if not is_valid_email? admin_email_address
-    #     print "That doesn't look like a valid email address. Please try again.\n"
-    #   end
-    # end
-
-    # print "Arvados needs to know the shell login name for the administrative user.\n"
-    # print "This will also be used as the name for your git repository.\n"
-    # print "\n"
-    # user_name = ""
-    # until is_valid_user_name? user_name
-    #   print "Enter a shell login name here: "
-    #   user_name = gets.strip
-    #   if not is_valid_user_name? user_name
-    #     print "That doesn't look like a valid shell login name. Please try again.\n"
-    #   end
-    # end
-
-    File.open 'config.yml', 'w' do |config_out|
-      config_out.write "# If a _PW or _SECRET variable is set to an empty string, a password\n"
-      config_out.write "# will be chosen randomly at build time. This is the\n"
-      config_out.write "# recommended setting.\n\n"
-      config = YAML.load_file 'config.yml.example'
-      #config['API_AUTO_ADMIN_USER'] = admin_email_address
-      #config['ARVADOS_USER_NAME'] = user_name
-      config['API_HOSTNAME'] = generate_api_hostname
-      config['API_WORKBENCH_ADDRESS'] = 'false'
-      config.each_key do |var|
-        config_out.write "#{var}: #{config[var]}\n"
-      end
-    end
-  end
-
-  # If all prerequisites are met, go ahead and build.
-  if ip_forwarding_enabled? and
-      docker_ok? docker_path and
-      debootstrap_ok? and
-      File.exists? 'config.yml'
-    exit 0
-  else
-    exit 6
-  end
-end
-
-# sudo
-#   Execute the arg list 'cmd' under sudo.
-#   cmd can be passed either as a series of arguments or as a
-#   single argument consisting of a list, e.g.:
-#     sudo 'apt-get', 'update'
-#     sudo(['/usr/bin/gpasswd', '-a', ENV['USER'], 'docker'])
-#     sudo %w(/usr/bin/apt-get install lxc-docker)
-#
-def sudo(*cmd)
-  # user can pass a single list in as an argument
-  # to allow usage like: sudo %w(apt-get install foo)
-  warn "You may need to enter your password here."
-  if cmd.length == 1 and cmd[0].class == Array
-    cmd = cmd[0]
-  end
-  system '/usr/bin/sudo', *cmd
-end
-
-# is_valid_email?
-#   Returns true if its arg looks like a valid email address.
-#   This is a very very loose sanity check.
-#
-def is_valid_email? str
-  str.match /^\S+@\S+\.\S+$/
-end
-
-# is_valid_user_name?
-#   Returns true if its arg looks like a valid unix username.
-#   This is a very very loose sanity check.
-#
-def is_valid_user_name? str
-  # borrowed from Debian's adduser (version 3.110)
-  str.match /^[_.A-Za-z0-9][-\@_.A-Za-z0-9]*\$?$/
-end
-
-# generate_api_hostname
-#   Generates a 5-character randomly chosen API hostname.
-#
-def generate_api_hostname
-  rand(2**256).to_s(36)[0...5]
-end
-
-# ip_forwarding_enabled?
-#   Returns 'true' if IP forwarding is enabled in the kernel
-#
-def ip_forwarding_enabled?
-  %x(/sbin/sysctl -n net.ipv4.ip_forward) == "1\n"
-end
-
-# debootstrap_ok?
-#   Returns 'true' if debootstrap is installed and working.
-#
-def debootstrap_ok?
-  return system '/usr/sbin/debootstrap --version > /dev/null 2>&1'
-end
-
-# docker_ok?
-#   Returns 'true' if docker can be run as the current user.
-#
-def docker_ok?(docker_path)
-  return system "#{docker_path} images > /dev/null 2>&1"
-end
-
-# install_docker
-#   Determines which Docker package is suitable for this Linux distro
-#   and installs it, resolving any dependencies.
-#   NOTE: not in use yet.
-
-def install_docker
-  linux_distro = %x(lsb_release --id).split.last
-  linux_release = %x(lsb_release --release).split.last
-  linux_version = linux_distro + " " + linux_release
-  kernel_release = `uname -r`
-
-  case linux_distro
-  when 'Ubuntu'
-    if not linux_release.match '^1[234]\.'
-      warn "Arvados requires at least Ubuntu 12.04 (Precise Pangolin)."
-      warn "Your system is Ubuntu #{linux_release}."
-      exit 3
-    end
-    if linux_release.match '^12' and kernel_release.start_with? '3.2'
-      # Ubuntu Precise ships with a 3.2 kernel and must be upgraded.
-      warn "Your kernel #{kernel_release} must be upgraded to run Docker."
-      warn "To do this:"
-      warn "  sudo apt-get update"
-      warn "  sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring"
-      warn "  sudo reboot"
-      exit 4
-    else
-      # install AUFS
-      sudo 'apt-get', 'update'
-      sudo 'apt-get', 'install', "linux-image-extra-#{kernel_release}"
-    end
-
-    # add Docker repository
-    sudo %w(/usr/bin/apt-key adv
-              --keyserver keyserver.ubuntu.com
-              --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9)
-    source_file = Tempfile.new('arv')
-    source_file.write("deb http://get.docker.io/ubuntu docker main\n")
-    source_file.close
-    sudo '/bin/mv', source_file.path, '/etc/apt/sources.list.d/docker.list'
-    sudo %w(/usr/bin/apt-get update)
-    sudo %w(/usr/bin/apt-get install lxc-docker)
-
-    # Set up for non-root access
-    sudo %w(/usr/sbin/groupadd docker)
-    sudo '/usr/bin/gpasswd', '-a', ENV['USER'], 'docker'
-    sudo %w(/usr/sbin/service docker restart)
-  when 'Debian'
-  else
-    warn "Must be running a Debian or Ubuntu release in order to run Docker."
-    exit 5
-  end
-end
-
-
-if __FILE__ == $PROGRAM_NAME
-  options = { :makefile => File.join(File.dirname(__FILE__), 'Makefile') }
-  OptionParser.new do |opts|
-    opts.on('-m', '--makefile MAKEFILE-PATH',
-            'Path to the Makefile used to build Arvados Docker images') do |mk|
-      options[:makefile] = mk
-    end
-  end
-  main options
-end
diff --git a/docker/build_tools/config.rb b/docker/build_tools/config.rb
deleted file mode 100755
index 296bc20..0000000
--- a/docker/build_tools/config.rb
+++ /dev/null
@@ -1,74 +0,0 @@
-#! /usr/bin/env ruby
-
-require 'yaml'
-require 'fileutils'
-require 'digest'
-
-abort 'Error: Ruby >= 1.9.3 required.' if RUBY_VERSION < '1.9.3'
-
-# Initialize config settings from config.yml
-config = YAML.load_file('config.yml')
-
-# ============================================================
-# Add dynamically chosen config settings. These settings should
-# be suitable for any installation.
-
-# Any _PW/_SECRET config settings represent passwords/secrets. If they
-# are blank, choose a password. Make sure the generated password
-# doesn't change if config.yml doesn't change. Otherwise, keys won't
-# match any more if (say) keep's files get regenerated but apiserver's
-# don't.
-config.sort.map do |var,val|
-  if (var.end_with?('_PW') || var.end_with?('_SECRET')) && (config[var].nil? || config[var].empty?)
-    config[var] = Digest::SHA1.hexdigest(`hostname` + var + config.to_yaml)
-  end
-end
-
-# ============================================================
-# For each *.in file in the docker directories, substitute any
-# @@variables@@ found in the file with the appropriate config
-# variable. Support up to 10 levels of nesting.
-#
-# TODO(twp): add the *.in files directory to the source tree, and
-# when expanding them, add them to the "generated" directory with
-# the same tree structure as in the original source. Then all
-# the files can be added to the docker container with a single ADD.
-
-if ARGV[0] and ARGV[0].length > 0
-  globdir = ARGV[0]
-else
-  globdir = '*'
-end
-
-FileUtils.rm_r Dir.glob(globdir + '/generated/*')
-
-File.umask(022)
-Dir.glob(globdir + '/*.in') do |template_file|
-  generated_dir = File.join(File.dirname(template_file), 'generated')
-  Dir.mkdir(generated_dir) unless Dir.exists? generated_dir
-  output_path = File.join(generated_dir, File.basename(template_file, '.in'))
-  output_mode = (File.stat(template_file).mode & 0100) ? 0755 : 0644
-  File.open(output_path, "w", output_mode) do |output|
-    File.open(template_file) do |input|
-      input.each_line do |line|
-
-        # This count is used to short-circuit potential
-        # infinite loops of variable substitution.
-        @count = 0
-        while @count < 10
-          @out = line.gsub!(/@@(.*?)@@/) do |var|
-            if config.key?(Regexp.last_match[1])
-              config[Regexp.last_match[1]]
-            else
-              var.gsub!(/@@/, '@_NOT_FOUND_@')
-            end
-          end
-          break if @out.nil?
-          @count += 1
-        end
-
-        output.write(line)
-      end
-    end
-  end
-end
diff --git a/docker/compute/Dockerfile b/docker/compute/Dockerfile
deleted file mode 100644
index 60b5fa4..0000000
--- a/docker/compute/Dockerfile
+++ /dev/null
@@ -1,29 +0,0 @@
-# Arvados compute node Docker container.
-
-FROM arvados/slurm
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-RUN apt-get update -q
-## 20150915 nico -- fuse.postint has sporatic failures, spliting this up to see if it helps
-RUN apt-get install -qy fuse
-RUN apt-get install -qy supervisor python-pip python-gflags python-google-api-python-client python-virtualenv libattr1-dev libfuse-dev python-dev python-llfuse crunchstat python-arvados-fuse cron dnsmasq
-
-ADD fuse.conf /etc/fuse.conf
-RUN chmod 644 /etc/fuse.conf
-
-RUN /usr/local/rvm/bin/rvm-exec default gem install arvados-cli arvados
-
-# Install Docker from the Arvados package repository (cf. arvados/base)
-RUN apt-get install -qy iptables ca-certificates lxc apt-transport-https docker.io
-
-RUN addgroup --gid 4005 crunch && mkdir /home/crunch && useradd --uid 4005 --gid 4005 crunch && usermod crunch -G fuse,docker && chown crunch:crunch /home/crunch
-
-# Supervisor.
-ADD supervisor.conf /etc/supervisor/conf.d/arvados.conf
-ADD generated/setup.sh /usr/local/bin/setup.sh
-ADD wrapdocker /usr/local/bin/wrapdocker.sh
-ADD munge.sh /usr/local/bin/munge.sh
-
-VOLUME /var/lib/docker
-# Start the supervisor.
-CMD ["/usr/bin/supervisord", "-n"]
diff --git a/docker/compute/fuse.conf b/docker/compute/fuse.conf
deleted file mode 100644
index 4ed21ba..0000000
--- a/docker/compute/fuse.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-# Set the maximum number of FUSE mounts allowed to non-root users.
-# The default is 1000.
-#
-#mount_max = 1000
-
-# Allow non-root users to specify the 'allow_other' or 'allow_root'
-# mount options.
-#
-user_allow_other
-
diff --git a/docker/compute/munge.sh b/docker/compute/munge.sh
deleted file mode 100755
index ef10d01..0000000
--- a/docker/compute/munge.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-rm -rf /var/run/munge
-exec /etc/init.d/munge start
diff --git a/docker/compute/setup.sh.in b/docker/compute/setup.sh.in
deleted file mode 100755
index efb2c41..0000000
--- a/docker/compute/setup.sh.in
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/bash
-
-. /etc/profile.d/rvm.sh
-
-export ARVADOS_API_HOST=api
-export ARVADOS_API_HOST_INSECURE=yes
-export ARVADOS_API_TOKEN=@@API_SUPERUSER_SECRET@@
-export HOME=/root
-
-# Wait for API server to come up.
-while ! arv user current ; do sleep 1 ; done
-
-if ! test -f /root/node.json ; then
-    arv node create --node "{\"hostname\": \"$(hostname)\"}" > /root/node.json
-
-    # Make sure /dev/fuse permissions are correct (the device appears after fuse is loaded)
-    chmod 1660 /dev/fuse && chgrp fuse /dev/fuse
-fi
-
-UUID=`grep \"uuid\" /root/node.json  |cut -f4 -d\"`
-PING_SECRET=`grep \"ping_secret\" /root/node.json  |cut -f4 -d\"`
-
-if ! test -f /etc/cron.d/node_ping ; then
-    echo "*/5 * * * * root /usr/bin/curl -k -d ping_secret=$PING_SECRET https://api/arvados/v1/nodes/$UUID/ping" > /etc/cron.d/node_ping
-fi
-
-/usr/bin/curl -k -d ping_secret=$PING_SECRET https://api/arvados/v1/nodes/$UUID/ping?ping_secret=$PING_SECRET
diff --git a/docker/compute/supervisor.conf b/docker/compute/supervisor.conf
deleted file mode 100644
index b3c715b..0000000
--- a/docker/compute/supervisor.conf
+++ /dev/null
@@ -1,28 +0,0 @@
-[program:munge]
-user=root
-command=/usr/local/bin/munge.sh
-startsecs=0
-
-[program:slurm]
-user=root
-command=/etc/init.d/slurm-llnl start
-startsecs=0
-
-[program:cron]
-user=root
-command=/etc/init.d/cron start
-startsecs=0
-
-[program:setup]
-user=root
-command=/usr/local/bin/setup.sh
-startsecs=0
-
-[program:docker]
-user=root
-command=/usr/local/bin/wrapdocker.sh
-
-[program:dnsmasq]
-user=root
-command=/etc/init.d/dnsmasq start
-startsecs=0
diff --git a/docker/compute/wrapdocker b/docker/compute/wrapdocker
deleted file mode 100755
index cee1302..0000000
--- a/docker/compute/wrapdocker
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/bash
-
-# Borrowed from https://github.com/jpetazzo/dind under Apache2
-# and slightly modified.
-
-# First, make sure that cgroups are mounted correctly.
-CGROUP=/sys/fs/cgroup
-: {LOG:=stdio}
-
-[ -d $CGROUP ] ||
-	mkdir $CGROUP
-
-mountpoint -q $CGROUP ||
-	mount -n -t tmpfs -o uid=0,gid=0,mode=0755 cgroup $CGROUP || {
-		echo "Could not make a tmpfs mount. Did you use -privileged?"
-		exit 1
-	}
-
-if [ -d /sys/kernel/security ] && ! mountpoint -q /sys/kernel/security
-then
-    mount -t securityfs none /sys/kernel/security || {
-        echo "Could not mount /sys/kernel/security."
-        echo "AppArmor detection and -privileged mode might break."
-    }
-fi
-
-# Mount the cgroup hierarchies exactly as they are in the parent system.
-for SUBSYS in $(cut -d: -f2 /proc/1/cgroup)
-do
-        [ -d $CGROUP/$SUBSYS ] || mkdir $CGROUP/$SUBSYS
-        mountpoint -q $CGROUP/$SUBSYS ||
-                mount -n -t cgroup -o $SUBSYS cgroup $CGROUP/$SUBSYS
-
-        # The two following sections address a bug which manifests itself
-        # by a cryptic "lxc-start: no ns_cgroup option specified" when
-        # trying to start containers withina container.
-        # The bug seems to appear when the cgroup hierarchies are not
-        # mounted on the exact same directories in the host, and in the
-        # container.
-
-        # Named, control-less cgroups are mounted with "-o name=foo"
-        # (and appear as such under /proc/<pid>/cgroup) but are usually
-        # mounted on a directory named "foo" (without the "name=" prefix).
-        # Systemd and OpenRC (and possibly others) both create such a
-        # cgroup. To avoid the aforementioned bug, we symlink "foo" to
-        # "name=foo". This shouldn't have any adverse effect.
-        echo $SUBSYS | grep -q ^name= && {
-                NAME=$(echo $SUBSYS | sed s/^name=//)
-                ln -s $SUBSYS $CGROUP/$NAME
-        }
-
-        # Likewise, on at least one system, it has been reported that
-        # systemd would mount the CPU and CPU accounting controllers
-        # (respectively "cpu" and "cpuacct") with "-o cpuacct,cpu"
-        # but on a directory called "cpu,cpuacct" (note the inversion
-        # in the order of the groups). This tries to work around it.
-        [ $SUBSYS = cpuacct,cpu ] && ln -s $SUBSYS $CGROUP/cpu,cpuacct
-done
-
-# Note: as I write those lines, the LXC userland tools cannot setup
-# a "sub-container" properly if the "devices" cgroup is not in its
-# own hierarchy. Let's detect this and issue a warning.
-grep -q :devices: /proc/1/cgroup ||
-	echo "WARNING: the 'devices' cgroup should be in its own hierarchy."
-grep -qw devices /proc/1/cgroup ||
-	echo "WARNING: it looks like the 'devices' cgroup is not mounted."
-
-# Now, close extraneous file descriptors.
-pushd /proc/self/fd >/dev/null
-for FD in *
-do
-	case "$FD" in
-	# Keep stdin/stdout/stderr
-	[012])
-		;;
-	# Nuke everything else
-	*)
-		eval exec "$FD>&-"
-		;;
-	esac
-done
-popd >/dev/null
-
-
-# If a pidfile is still around (for example after a container restart),
-# delete it so that docker can start.
-rm -rf /var/run/docker.pid
-
-exec docker -d
-
diff --git a/docker/config.yml.example b/docker/config.yml.example
deleted file mode 100644
index f40c0fe..0000000
--- a/docker/config.yml.example
+++ /dev/null
@@ -1,91 +0,0 @@
-# Configuration for the Rails databases (database names,
-# usernames and passwords).
-
-# Username for your Arvados user. This will be used as your shell login name
-# as well as the name for your git repository.
-ARVADOS_USER_NAME:
-
-# ARVADOS_DOMAIN: the Internet domain of this installation.
-# ARVADOS_DNS_SERVER: the authoritative nameserver for ARVADOS_DOMAIN.
-ARVADOS_DOMAIN: dev.arvados
-ARVADOS_DNS_SERVER:     # e.g. 192.168.0.1
-
-# ==============================
-# API server settings
-# ==============================
-
-# The API server hostname. Must be a 5-character
-# string unique within this installation. This string
-# will also be used as config.uuid_prefix.
-API_HOSTNAME:           # e.g. qr1hi
-
-# The e-mail address of the user you would like to become marked as an admin
-# user on their first login.
-# In the default configuration, authentication happens through the Arvados SSO
-# server, which uses openid against Google's servers, so in that case this
-# should be an address associated with a Google account.
-API_AUTO_ADMIN_USER:
-
-# The location of the Workbench application where users should be
-# redirected if they point their browsers at the API server, e.g.,
-# https://localhost:9899
-API_WORKBENCH_ADDRESS:
-
-# If a _PW variable is set to an empty string, a password
-# will be chosen randomly at build time. This is the
-# recommended setting.
-ARVADOS_DEV_DB: arvados_development
-ARVADOS_DEV_USER: arvados_dev
-ARVADOS_DEV_PW:
-ARVADOS_TEST_DB: arvados_test
-ARVADOS_TEST_USER: arvados_test
-ARVADOS_TEST_PW:
-ARVADOS_PROD_DB: arvados_production
-ARVADOS_PROD_USER: arvados_prod
-ARVADOS_PROD_PW:
-
-# If a _SECRET variable is set to an empty string, a password
-# will be chosen randomly at build time. This is the
-# recommended setting.
-
-# The signing key shared by Keep at the API server to verify
-# blob permission signatures.
-KEEP_SIGNING_SECRET:
-
-# The value for the Rails config.secret_token setting.
-API_SECRET:
-
-# A "superuser" token with which servers can authenticate to
-# the API server, before an administrative user has been created.
-# Leave this blank to generate a secret randomly at build time (recommended).
-API_SUPERUSER_SECRET:
-
-# More than anything this should be auto-generated, but
-# we don't presently have a good place to store it. So just
-# change it and don't be dumb.
-POSTGRES_ROOT_PW: dummy_pw
-
-# The URL of the SSO server that you want your API server to use. If
-# blank, use the sso docker container.
-OMNIAUTH_URL:
-
-# ==============================
-# Workbench settings
-# ==============================
-WORKBENCH_RAILS_MODE: production
-WORKBENCH_DATA_IMPORT_DIR: /data/arvados-workbench-upload/data
-WORKBENCH_DATA_EXPORT_DIR: /data/arvados-workbench-download/data
-WORKBENCH_VCF_PIPELINE_UUID:
-WORKBENCH_SITE_NAME: Arvados Workbench
-WORKBENCH_INSECURE_HTTPS: true
-WORKBENCH_ACTIVATION_CONTACT_LINK: mailto:arvados at curoverse.com
-WORKBENCH_SECRET:
-
-# ==============================
-# SSO settings
-# ==============================
-SSO_HOSTNAME: sso
-SSO_SECRET:
-SSO_CLIENT_NAME: devsandbox
-SSO_CLIENT_APP_ID: local_docker_installation
-SSO_CLIENT_SECRET:
diff --git a/docker/doc/Dockerfile b/docker/doc/Dockerfile
deleted file mode 100644
index 1492675..0000000
--- a/docker/doc/Dockerfile
+++ /dev/null
@@ -1,29 +0,0 @@
-# Arvados Documentation Docker container.
-
-FROM arvados/base
-maintainer Ward Vandewege <ward at curoverse.com>
-
-# Install packages
-RUN /bin/mkdir -p /usr/src/arvados && \
-    apt-get update -q && \
-    apt-get install -qy curl procps apache2-mpm-worker
-
-ADD generated/doc.tar.gz /usr/src/arvados/
-
-# Build static site
-RUN /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/doc/Gemfile && \
-    /bin/sed -ri 's/^baseurl: .*$/baseurl: /' /usr/src/arvados/doc/_config.yml && \
-    cd /usr/src/arvados/doc && \
-    LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" /usr/local/rvm/bin/rvm-exec default bundle exec rake generate arvados_api_host=api.dev.arvados arvados_workbench_host=workbench.dev.arvados
-
-
-# Configure Apache
-ADD generated/apache2_vhost /etc/apache2/sites-available/doc
-RUN \
-  a2dissite default && \
-  a2ensite doc
-
-ADD apache2_foreground.sh /etc/apache2/foreground.sh
-
-# Start Apache
-CMD ["/etc/apache2/foreground.sh"]
diff --git a/docker/doc/apache2_foreground.sh b/docker/doc/apache2_foreground.sh
deleted file mode 100755
index fc6028e..0000000
--- a/docker/doc/apache2_foreground.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#! /bin/bash
-
-read pid cmd state ppid pgrp session tty_nr tpgid rest < /proc/self/stat
-trap "kill -TERM -$pgrp; exit" EXIT TERM KILL SIGKILL SIGTERM SIGQUIT
-
-source /etc/apache2/envvars
-/usr/sbin/apache2 -D FOREGROUND
diff --git a/docker/doc/apache2_vhost.in b/docker/doc/apache2_vhost.in
deleted file mode 100644
index 76da6d0..0000000
--- a/docker/doc/apache2_vhost.in
+++ /dev/null
@@ -1,11 +0,0 @@
-
-ServerName doc.@@ARVADOS_DOMAIN@@
-
-<VirtualHost *:80>
-  ServerAdmin sysadmin at curoverse.com
-
-  ServerName doc.@@ARVADOS_DOMAIN@@
-
-  DocumentRoot /usr/src/arvados/doc/.site/
-
-</VirtualHost>
diff --git a/docker/install_sdk.sh b/docker/install_sdk.sh
deleted file mode 100755
index 1c07c9d..0000000
--- a/docker/install_sdk.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-#! /bin/sh
-
-# Install prerequisites.
-sudo apt-get install curl libcurl3 libcurl3-gnutls libcurl4-openssl-dev python-pip
-
-# Install RVM.
-curl -sSL https://get.rvm.io | bash -s stable
-source ~/.rvm/scripts/rvm
-rvm install 2.1.0
-
-# Install arvados-cli.
-gem install arvados-cli
-sudo pip install --upgrade httplib2
diff --git a/docker/java-bwa-samtools/Dockerfile b/docker/java-bwa-samtools/Dockerfile
deleted file mode 100644
index 2a73977..0000000
--- a/docker/java-bwa-samtools/Dockerfile
+++ /dev/null
@@ -1,23 +0,0 @@
-FROM arvados/jobs
-MAINTAINER Peter Amstutz <peter.amstutz at curoverse.com>
-
-USER root
-
-RUN apt-get update -q
-RUN apt-get install -qy openjdk-7-jre-headless && \
-    cd /tmp && \
-    curl --location http://cache.arvados.org/sourceforge.net/project/bio-bwa/bwa-0.7.9a.tar.bz2 -o bwa-0.7.9a.tar.bz2 && \
-    tar xjf bwa-0.7.9a.tar.bz2 && \
-    cd bwa-0.7.9a && \
-    make && \
-    (find . -executable -type f -print0 | xargs -0 -I {} mv {} /usr/local/bin) && \
-    rm -r /tmp/bwa-0.7.9a* && \
-    cd /tmp && \
-    curl --location http://cache.arvados.org/sourceforge.net/project/samtools/samtools/0.1.19/samtools-0.1.19.tar.bz2 -o samtools-0.1.19.tar.bz2 && \
-    tar xjf samtools-0.1.19.tar.bz2 && \
-    cd samtools-0.1.19 && \
-    make && \
-    (find . -executable -type f -print0 | xargs -0 -I {} mv {} /usr/local/bin) && \
-    rm -r /tmp/samtools-0.1.19*
-
-USER crunch
diff --git a/docker/keep/Dockerfile b/docker/keep/Dockerfile
deleted file mode 100644
index 08e5175..0000000
--- a/docker/keep/Dockerfile
+++ /dev/null
@@ -1,14 +0,0 @@
-# Based on Debian Wheezy
-FROM arvados/debian:wheezy
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-ADD generated/bin/keepstore /usr/local/bin/
-ADD generated/bin/keepproxy /usr/local/bin/
-ADD generated/run-keep /usr/local/bin/
-
-ADD generated/keep_signing_secret /etc/
-
-RUN mkdir /keep-data
-
-# Start keep
-CMD ["/usr/local/bin/run-keep"]
diff --git a/docker/keep/keep_signing_secret.in b/docker/keep/keep_signing_secret.in
deleted file mode 100644
index e5b39c8..0000000
--- a/docker/keep/keep_signing_secret.in
+++ /dev/null
@@ -1 +0,0 @@
-@@KEEP_SIGNING_SECRET@@
\ No newline at end of file
diff --git a/docker/keep/run-keep.in b/docker/keep/run-keep.in
deleted file mode 100755
index 385f0e6..0000000
--- a/docker/keep/run-keep.in
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-
-pkf="/etc/keep_signing_secret"
-if [ -s "$pkf" ]
-then
-    permission_args="-permission-key-file=$pkf -enforce-permissions"
-else
-    permission_args=""
-fi
-
-exec keepstore $permission_args -listen=":25107" -volume="/keep-data"
diff --git a/docker/keepproxy/Dockerfile b/docker/keepproxy/Dockerfile
deleted file mode 100644
index e8df168..0000000
--- a/docker/keepproxy/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-# Based on Debian Wheezy
-FROM arvados/debian:wheezy
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-RUN apt-get update -q
-RUN apt-get install -qy ca-certificates
-
-ADD generated/bin/keepproxy /usr/local/bin/
-ADD generated/run-keepproxy /usr/local/bin/
-
-# Start keep
-CMD ["/usr/local/bin/run-keepproxy"]
diff --git a/docker/keepproxy/run-keepproxy.in b/docker/keepproxy/run-keepproxy.in
deleted file mode 100755
index 4bd934d..0000000
--- a/docker/keepproxy/run-keepproxy.in
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-export ARVADOS_API_HOST=api
-export ARVADOS_API_HOST_INSECURE=yes
-# This should be an anonymous token, but we don't have a good way
-# to get one while building the images
-export ARVADOS_API_TOKEN=@@API_SUPERUSER_SECRET@@
-
-read pid cmd state ppid pgrp session tty_nr tpgid rest < /proc/self/stat
-trap "kill -TERM -$pgrp; exit" HUP EXIT TERM QUIT
-
-while /bin/true ; do
-    keepproxy -listen=':9100'
-    sleep 1
-done
diff --git a/docker/mkimage-debootstrap.sh b/docker/mkimage-debootstrap.sh
deleted file mode 100755
index 2ad79ef..0000000
--- a/docker/mkimage-debootstrap.sh
+++ /dev/null
@@ -1,240 +0,0 @@
-#!/bin/bash
-set -e
-
-variant='minbase'
-include='iproute,iputils-ping'
-arch='amd64' # intentionally undocumented for now
-skipDetection=
-strictDebootstrap=
-justTar=
-
-usage() {
-	echo >&2
-	
-	echo >&2 "usage: $0 [options] repo suite [mirror]"
-	
-	echo >&2
-	echo >&2 'options: (not recommended)'
-	echo >&2 "  -p set an http_proxy for debootstrap"
-	echo >&2 "  -v $variant # change default debootstrap variant"
-	echo >&2 "  -i $include # change default package includes"
-	echo >&2 "  -d # strict debootstrap (do not apply any docker-specific tweaks)"
-	echo >&2 "  -s # skip version detection and tagging (ie, precise also tagged as 12.04)"
-	echo >&2 "     # note that this will also skip adding universe and/or security/updates to sources.list"
-	echo >&2 "  -t # just create a tarball, especially for dockerbrew (uses repo as tarball name)"
-	
-	echo >&2
-	echo >&2 "   ie: $0 username/debian squeeze"
-	echo >&2 "       $0 username/debian squeeze http://ftp.uk.debian.org/debian/"
-	
-	echo >&2
-	echo >&2 "   ie: $0 username/ubuntu precise"
-	echo >&2 "       $0 username/ubuntu precise http://mirrors.melbourne.co.uk/ubuntu/"
-	
-	echo >&2
-	echo >&2 "   ie: $0 -t precise.tar.bz2 precise"
-	echo >&2 "       $0 -t wheezy.tgz wheezy"
-	echo >&2 "       $0 -t wheezy-uk.tar.xz wheezy http://ftp.uk.debian.org/debian/"
-	
-	echo >&2
-}
-
-# these should match the names found at http://www.debian.org/releases/
-debianStable=wheezy
-debianUnstable=sid
-# this should match the name found at http://releases.ubuntu.com/
-ubuntuLatestLTS=precise
-
-while getopts v:i:a:p:dst name; do
-	case "$name" in
-		p)
-			http_proxy="$OPTARG"
-			;;
-		v)
-			variant="$OPTARG"
-			;;
-		i)
-			include="$OPTARG"
-			;;
-		a)
-			arch="$OPTARG"
-			;;
-		d)
-			strictDebootstrap=1
-			;;
-		s)
-			skipDetection=1
-			;;
-		t)
-			justTar=1
-			;;
-		?)
-			usage
-			exit 0
-			;;
-	esac
-done
-shift $(($OPTIND - 1))
-
-repo="$1"
-suite="$2"
-mirror="${3:-}" # stick to the default debootstrap mirror if one is not provided
-
-if [ ! "$repo" ] || [ ! "$suite" ]; then
-	usage
-	exit 1
-fi
-
-# some rudimentary detection for whether we need to "sudo" our docker calls
-set +e
-docker=`which docker.io`
-if [[ "$docker" == "" ]]; then
-	docker=`which docker`
-fi
-set -e
-
-if $docker version > /dev/null 2>&1; then
-	docker="$docker"
-elif sudo $docker version > /dev/null 2>&1; then
-	docker="sudo $docker"
-elif command -v $docker > /dev/null 2>&1; then
-	docker="$docker"
-else
-	echo >&2 "warning: either docker isn't installed, or your current user cannot run it;"
-	echo >&2 "         this script is not likely to work as expected"
-	sleep 3
-	docker='docker' # give us a command-not-found later
-fi
-
-# make sure we have an absolute path to our final tarball so we can still reference it properly after we change directory
-if [ "$justTar" ]; then
-	if [ ! -d "$(dirname "$repo")" ]; then
-		echo >&2 "error: $(dirname "$repo") does not exist"
-		exit 1
-	fi
-	repo="$(cd "$(dirname "$repo")" && pwd -P)/$(basename "$repo")"
-fi
-
-# will be filled in later, if [ -z "$skipDetection" ]
-lsbDist=''
-
-target="${TMPDIR:-/tmp}/docker-rootfs-debootstrap-$suite-$$-$RANDOM"
-
-cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
-returnTo="$(pwd -P)"
-
-set -x
-
-# bootstrap
-mkdir -p "$target"
-sudo http_proxy=$http_proxy debootstrap --verbose --variant="$variant" --include="$include" --arch="$arch" "$suite" "$target" "$mirror"
-
-cd "$target"
-
-if [ -z "$strictDebootstrap" ]; then
-	# prevent init scripts from running during install/update
-	#  policy-rc.d (for most scripts)
-	echo $'#!/bin/sh\nexit 101' | sudo tee usr/sbin/policy-rc.d > /dev/null
-	sudo chmod +x usr/sbin/policy-rc.d
-	#  initctl (for some pesky upstart scripts)
-	sudo chroot . dpkg-divert --local --rename --add /sbin/initctl
-	sudo ln -sf /bin/true sbin/initctl
-	# see https://github.com/dotcloud/docker/issues/446#issuecomment-16953173
-	
-	# shrink the image, since apt makes us fat (wheezy: ~157.5MB vs ~120MB)
-	sudo chroot . apt-get clean
-	
-	# while we're at it, apt is unnecessarily slow inside containers
-	#  this forces dpkg not to call sync() after package extraction and speeds up install
-	#    the benefit is huge on spinning disks, and the penalty is nonexistent on SSD or decent server virtualization
-	echo 'force-unsafe-io' | sudo tee etc/dpkg/dpkg.cfg.d/02apt-speedup > /dev/null
-	#  we want to effectively run "apt-get clean" after every install to keep images small
-	echo 'DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb || true";};' | sudo tee etc/apt/apt.conf.d/no-cache > /dev/null
-	
-	# helpful undo lines for each the above tweaks (for lack of a better home to keep track of them):
-	#  rm /usr/sbin/policy-rc.d
-	#  rm /sbin/initctl; dpkg-divert --rename --remove /sbin/initctl
-	#  rm /etc/dpkg/dpkg.cfg.d/02apt-speedup
-	#  rm /etc/apt/apt.conf.d/no-cache
-	
-	if [ -z "$skipDetection" ]; then
-		# see also rudimentary platform detection in hack/install.sh
-		lsbDist=''
-		if [ -r etc/lsb-release ]; then
-			lsbDist="$(. etc/lsb-release && echo "$DISTRIB_ID")"
-		fi
-		if [ -z "$lsbDist" ] && [ -r etc/debian_version ]; then
-			lsbDist='Debian'
-		fi
-		
-		case "$lsbDist" in
-			Debian)
-				# add the updates and security repositories
-				if [ "$suite" != "$debianUnstable" -a "$suite" != 'unstable' ]; then
-					# ${suite}-updates only applies to non-unstable
-					sudo sed -i "p; s/ $suite main$/ ${suite}-updates main/" etc/apt/sources.list
-					
-					# same for security updates
-					echo "deb http://security.debian.org/ $suite/updates main" | sudo tee -a etc/apt/sources.list > /dev/null
-				fi
-				;;
-			Ubuntu)
-				# add the universe, updates, and security repositories
-				sudo sed -i "
-					s/ $suite main$/ $suite main universe/; p;
-					s/ $suite main/ ${suite}-updates main/; p;
-					s/ $suite-updates main/ ${suite}-security main/
-				" etc/apt/sources.list
-				;;
-		esac
-	fi
-fi
-
-if [ "$justTar" ]; then
-	# create the tarball file so it has the right permissions (ie, not root)
-	touch "$repo"
-	
-	# fill the tarball
-	sudo tar --numeric-owner -caf "$repo" .
-else
-	# create the image (and tag $repo:$suite)
-	sudo tar --numeric-owner -c . | $docker import - $repo:$suite
-	
-	# test the image
-	[[ "$(/usr/bin/tty || true)" != "not a tty" ]] && RUN_OPTS="-i -t"
-	$docker run $RUN_OPS $repo:$suite echo success
-	
-	if [ -z "$skipDetection" ]; then
-		case "$lsbDist" in
-			Debian)
-				if [ "$suite" = "$debianStable" -o "$suite" = 'stable' ] && [ -r etc/debian_version ]; then
-					# tag latest
-					$docker tag -f $repo:$suite $repo:latest
-					
-					if [ -r etc/debian_version ]; then
-						# tag the specific debian release version (which is only reasonable to tag on debian stable)
-						ver=$(cat etc/debian_version)
-						$docker tag -f $repo:$suite $repo:$ver
-					fi
-				fi
-				;;
-			Ubuntu)
-				if [ "$suite" = "$ubuntuLatestLTS" ]; then
-					# tag latest
-					$docker tag -f $repo:$suite $repo:latest
-				fi
-				if [ -r etc/lsb-release ]; then
-					lsbRelease="$(. etc/lsb-release && echo "$DISTRIB_RELEASE")"
-					if [ "$lsbRelease" ]; then
-						# tag specific Ubuntu version number, if available (12.04, etc.)
-						$docker tag -f $repo:$suite $repo:$lsbRelease
-					fi
-				fi
-				;;
-		esac
-	fi
-fi
-
-# cleanup
-cd "$returnTo"
-sudo rm -rf "$target"
diff --git a/docker/passenger/Dockerfile b/docker/passenger/Dockerfile
deleted file mode 100644
index 77aeb66..0000000
--- a/docker/passenger/Dockerfile
+++ /dev/null
@@ -1,19 +0,0 @@
-# Arvados passenger image
-
-FROM arvados/base
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-# Install packages and build the passenger apache module
-
-RUN apt-get update -q
-RUN apt-get install -qy \
-        apt-utils git curl procps apache2-mpm-worker \
-        libcurl4-openssl-dev apache2-threaded-dev \
-        libapr1-dev libaprutil1-dev
-
-RUN cd /usr/src/arvados/services/api && \
-    /usr/local/rvm/bin/rvm-exec default bundle exec passenger-install-apache2-module --auto --languages ruby
-
-RUN cd /usr/src/arvados/services/api && \
-    /usr/local/rvm/bin/rvm-exec default bundle exec passenger-install-apache2-module --snippet > /etc/apache2/conf.d/passenger
-
diff --git a/docker/postgresql/Dockerfile b/docker/postgresql/Dockerfile
deleted file mode 100644
index a99a886..0000000
--- a/docker/postgresql/Dockerfile
+++ /dev/null
@@ -1,35 +0,0 @@
-# PostgreSQL Docker container for Arvados.
-
-FROM arvados/debian:wheezy
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-# TODO(twp): parameterize variables via autoconf or similar.
-ENV POSTGRES_ROOT_PW   dummy_pw
-
-ENV ARVADOS_DEV_DB     arvados_development
-ENV ARVADOS_DEV_USER   arvados
-ENV ARVADOS_DEV_PW     dummy_pw
-
-ENV ARVADOS_TEST_DB    arvados_test
-ENV ARVADOS_TEST_USER  arvados
-ENV ARVADOS_TEST_PW    dummy_pw
-
-ENV ARVADOS_PROD_DB    arvados_production
-ENV ARVADOS_PROD_USER  arvados
-ENV ARVADOS_PROD_PW    dummy_pw
-
-# Install postgres and apache
-RUN apt-get install -qy procps postgresql postgresql-server-dev-9.1
-
-# Configure databases and users.
-ADD postgresql.conf /etc/postgresql/9.1/main/
-ADD pg_hba.conf     /etc/postgresql/9.1/main/
-
-ADD postgresql_config.sh /tmp/postgresql_config.sh
-RUN /tmp/postgresql_config.sh
-RUN rm /tmp/postgresql_config.sh
-
-# Accept database connections on port 5432 from outside the container.
-EXPOSE 5432
-
-CMD ["/bin/su", "postgres", "-c", "/usr/lib/postgresql/9.1/bin/postgres -D /var/lib/postgresql/9.1/main -c config_file=/etc/postgresql/9.1/main/postgresql.conf"]
diff --git a/docker/postgresql/pg_hba.conf b/docker/postgresql/pg_hba.conf
deleted file mode 100644
index c5486ad..0000000
--- a/docker/postgresql/pg_hba.conf
+++ /dev/null
@@ -1,15 +0,0 @@
-# For full documentation see
-# http://www.postgresql.org/docs/9.1/static/auth-pg-hba-conf.html
-
-# Database administrative login by Unix domain socket
-local   all             postgres                                peer
-
-# TYPE  DATABASE        USER            ADDRESS                 METHOD
-host    all             all             0.0.0.0/0               md5
-
-# "local" is for Unix domain socket connections only
-local   all             all                                     peer
-# IPv4 local connections:
-host    all             all             127.0.0.1/32            md5
-# IPv6 local connections:
-host    all             all             ::1/128                 md5
diff --git a/docker/postgresql/postgresql.conf b/docker/postgresql/postgresql.conf
deleted file mode 100644
index 3da7c1b..0000000
--- a/docker/postgresql/postgresql.conf
+++ /dev/null
@@ -1,20 +0,0 @@
-# For full documentation on run-time settings see
-# http://www.postgresql.org/docs/9.2/static/runtime-config.html
-
-listen_addresses = '*'
-data_directory = '/var/lib/postgresql/9.1/main'		# use data in another directory
-hba_file = '/etc/postgresql/9.1/main/pg_hba.conf'	# host-based authentication file
-ident_file = '/etc/postgresql/9.1/main/pg_ident.conf'	# ident configuration file
-external_pid_file = '/var/run/postgresql/9.1-main.pid'		# write an extra PID file
-port = 5432				# (change requires restart)
-max_connections = 100			# (change requires restart)
-unix_socket_directory = '/var/run/postgresql'		# (change requires restart)
-ssl = true				# (change requires restart)
-shared_buffers = 24MB			# min 128kB
-log_line_prefix = '%t '			# special values:
-datestyle = 'iso, mdy'
-lc_messages = 'C'			# locale for system error message
-lc_monetary = 'C'			# locale for monetary formatting
-lc_numeric = 'C'			# locale for number formatting
-lc_time = 'C'				# locale for time formatting
-default_text_search_config = 'pg_catalog.english'
diff --git a/docker/shell/Dockerfile b/docker/shell/Dockerfile
deleted file mode 100644
index 3e6e3e4..0000000
--- a/docker/shell/Dockerfile
+++ /dev/null
@@ -1,24 +0,0 @@
-# Slurm node Docker container.
-
-FROM arvados/base
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-RUN apt-get update -q
-RUN apt-get install -qy \
-    python-pip python-gflags python-google-api-python-client \
-    python-virtualenv libattr1-dev libfuse-dev python-dev python-llfuse fuse \
-    crunchstat python-arvados-fuse cron vim supervisor openssh-server
-
-ADD fuse.conf /etc/fuse.conf
-RUN chmod 644 /etc/fuse.conf
-
-ADD generated/superuser_token /tmp/superuser_token
-
-RUN /usr/local/rvm/bin/rvm-exec default gem install arvados-cli arvados
-
-# Supervisor.
-ADD supervisor.conf /etc/supervisor/conf.d/arvados.conf
-ADD generated/setup.sh /usr/local/bin/setup.sh
-
-# Start the supervisor.
-CMD ["/usr/bin/supervisord", "-n"]
diff --git a/docker/shell/fuse.conf b/docker/shell/fuse.conf
deleted file mode 100644
index 4ed21ba..0000000
--- a/docker/shell/fuse.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-# Set the maximum number of FUSE mounts allowed to non-root users.
-# The default is 1000.
-#
-#mount_max = 1000
-
-# Allow non-root users to specify the 'allow_other' or 'allow_root'
-# mount options.
-#
-user_allow_other
-
diff --git a/docker/shell/setup.sh.in b/docker/shell/setup.sh.in
deleted file mode 100755
index 03beb4b..0000000
--- a/docker/shell/setup.sh.in
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/bash
-
-USER_NAME="@@ARVADOS_USER_NAME@@"
-
-useradd $USER_NAME -s /bin/bash
-mkdir /home/$USER_NAME/.ssh -p
-
-# Install our token
-mkdir -p /home/$USER_NAME/.config/arvados;
-echo "ARVADOS_API_HOST=api" >> /home/$USER_NAME/.config/arvados/settings.conf
-echo "ARVADOS_API_HOST_INSECURE=yes" >> /home/$USER_NAME/.config/arvados/settings.conf
-echo "ARVADOS_API_TOKEN=$(cat /tmp/superuser_token)" >> /home/$USER_NAME/.config/arvados/settings.conf
-chmod 600 /home/$USER_NAME/.config/arvados/settings.conf
-
-chown $USER_NAME:$USER_NAME /home/$USER_NAME -R
-
-rm -f /tmp/superuser_token
-
-
diff --git a/docker/shell/superuser_token.in b/docker/shell/superuser_token.in
deleted file mode 100644
index 49bb34e..0000000
--- a/docker/shell/superuser_token.in
+++ /dev/null
@@ -1 +0,0 @@
-@@API_SUPERUSER_SECRET@@
diff --git a/docker/shell/supervisor.conf b/docker/shell/supervisor.conf
deleted file mode 100644
index 97ad540..0000000
--- a/docker/shell/supervisor.conf
+++ /dev/null
@@ -1,15 +0,0 @@
-[program:ssh]
-user=root
-command=/etc/init.d/ssh start
-startsecs=0
-
-[program:cron]
-user=root
-command=/etc/init.d/cron start
-startsecs=0
-
-[program:setup]
-user=root
-command=/usr/local/bin/setup.sh
-startsecs=0
-
diff --git a/docker/slurm/Dockerfile b/docker/slurm/Dockerfile
deleted file mode 100644
index 28a3c3b..0000000
--- a/docker/slurm/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-# Slurm node Docker container.
-
-FROM arvados/base
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-RUN apt-get update -q
-RUN apt-get install -qy slurm-llnl munge
-
-ADD munge.key /etc/munge/
-RUN chown munge:munge /etc/munge/munge.key && chmod 600 /etc/munge/munge.key
-ADD generated/slurm.conf /etc/slurm-llnl/
-
diff --git a/docker/slurm/munge.key b/docker/slurm/munge.key
deleted file mode 100644
index 34036a0..0000000
Binary files a/docker/slurm/munge.key and /dev/null differ
diff --git a/docker/slurm/slurm.conf.in b/docker/slurm/slurm.conf.in
deleted file mode 100644
index 7312a0e..0000000
--- a/docker/slurm/slurm.conf.in
+++ /dev/null
@@ -1,60 +0,0 @@
-
-ControlMachine=api
-#SlurmUser=slurmd
-SlurmctldPort=6817
-SlurmdPort=6818
-AuthType=auth/munge
-#JobCredentialPrivateKey=/etc/slurm-llnl/slurm-key.pem
-#JobCredentialPublicCertificate=/etc/slurm-llnl/slurm-cert.pem
-StateSaveLocation=/tmp
-SlurmdSpoolDir=/tmp/slurmd
-SwitchType=switch/none
-MpiDefault=none
-SlurmctldPidFile=/var/run/slurmctld.pid
-SlurmdPidFile=/var/run/slurmd.pid
-ProctrackType=proctrack/pgid
-CacheGroups=0
-ReturnToService=2
-TaskPlugin=task/affinity
-#
-# TIMERS
-SlurmctldTimeout=300
-SlurmdTimeout=300
-InactiveLimit=0
-MinJobAge=300
-KillWait=30
-Waittime=0
-#
-# SCHEDULING
-SchedulerType=sched/backfill
-#SchedulerType=sched/builtin
-SchedulerPort=7321
-#SchedulerRootFilter=
-#SelectType=select/linear
-SelectType=select/cons_res
-SelectTypeParameters=CR_CPU_Memory
-FastSchedule=1
-#
-# LOGGING
-SlurmctldDebug=3
-#SlurmctldLogFile=
-SlurmdDebug=3
-#SlurmdLogFile=
-JobCompType=jobcomp/none
-#JobCompLoc=
-JobAcctGatherType=jobacct_gather/none
-#JobAcctLogfile=
-#JobAcctFrequency=
-#
-# COMPUTE NODES
-NodeName=DEFAULT
-# CPUs=8 State=UNKNOWN RealMemory=6967 Weight=6967
-PartitionName=DEFAULT MaxTime=INFINITE State=UP
-PartitionName=compute Default=YES Shared=yes
-#PartitionName=sysadmin Hidden=YES Shared=yes
-
-NodeName=compute[0-1]
-#NodeName=compute0 RealMemory=6967 Weight=6967
-
-PartitionName=compute Nodes=compute[0-1]
-PartitionName=crypto Nodes=compute[0-1]
diff --git a/docker/slurm/supervisor.conf b/docker/slurm/supervisor.conf
deleted file mode 100644
index 64f86b1..0000000
--- a/docker/slurm/supervisor.conf
+++ /dev/null
@@ -1,7 +0,0 @@
-[program:munge]
-user=root
-command=/etc/init.d/munge start
-
-[program:slurm]
-user=root
-command=/etc/init.d/slurm-llnl start
diff --git a/docker/sso/Dockerfile b/docker/sso/Dockerfile
deleted file mode 100644
index 7d99ac6..0000000
--- a/docker/sso/Dockerfile
+++ /dev/null
@@ -1,32 +0,0 @@
-# Arvados API server Docker container.
-
-FROM arvados/passenger
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-RUN git clone git://github.com/curoverse/sso-devise-omniauth-provider.git /usr/src/sso-provider && \
-    /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/sso-provider/Gemfile
-
-# Install generated config files
-ADD generated/seeds.rb /usr/src/sso-provider/db/seeds.rb
-ADD generated/database.yml /usr/src/sso-provider/config/database.yml
-ADD generated/application.yml /usr/src/sso-provider/config/application.yml
-ADD generated/apache2_vhost /etc/apache2/sites-available/sso-provider
-ADD generated/apache2_vhost /etc/apache2/sites-available/sso-provider
-
-# Configure Apache and Passenger.
-RUN a2dissite default && \
-    a2ensite sso-provider && \
-    a2enmod rewrite && \
-    a2enmod ssl && \
-    cd /usr/src/sso-provider && \
-    cp config/environments/production.rb.example config/environments/production.rb && \
-    RAILS_ENV=production /usr/local/rvm/bin/rvm-exec default bundle exec rake db:setup && \
-    /usr/local/rvm/bin/rvm-exec default bundle exec rake assets:precompile && \
-    chown www-data:www-data log config.ru -R && \
-    chown www-data:www-data db db/production.sqlite3 && \
-    /bin/mkdir /var/run/apache2
-
-ADD apache2_foreground.sh /etc/apache2/foreground.sh
-
-# Start the supervisor.
-CMD ["/etc/apache2/foreground.sh"]
diff --git a/docker/sso/apache2_foreground.sh b/docker/sso/apache2_foreground.sh
deleted file mode 100755
index fc6028e..0000000
--- a/docker/sso/apache2_foreground.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#! /bin/bash
-
-read pid cmd state ppid pgrp session tty_nr tpgid rest < /proc/self/stat
-trap "kill -TERM -$pgrp; exit" EXIT TERM KILL SIGKILL SIGTERM SIGQUIT
-
-source /etc/apache2/envvars
-/usr/sbin/apache2 -D FOREGROUND
diff --git a/docker/sso/apache2_vhost.in b/docker/sso/apache2_vhost.in
deleted file mode 100644
index 465a1e6..0000000
--- a/docker/sso/apache2_vhost.in
+++ /dev/null
@@ -1,50 +0,0 @@
-# VirtualHost definition for the Arvados API server
-
-<VirtualHost *:80>
-  ServerName @@SSO_HOSTNAME@@.@@ARVADOS_DOMAIN@@
-  ServerAdmin sysadmin at curoverse.com
-
-  RedirectPermanent / https://@@SSO_HOSTNAME@@.@@ARVADOS_DOMAIN@@/
-
-  LogLevel warn
-  ErrorLog  ${APACHE_LOG_DIR}/error.log
-  CustomLog ${APACHE_LOG_DIR}/access.log combined
-
-</VirtualHost>
-
-<VirtualHost *:443>
-  ServerName @@SSO_HOSTNAME@@.@@ARVADOS_DOMAIN@@
-  ServerAdmin sysadmin at curoverse.com
-
-  RailsEnv production
-  RackBaseURI /
-  RailsAppSpawnerIdleTime 1200
-
-  # Enable streaming
-  PassengerBufferResponse off
-
-  # Index file and Document Root (where the public files are located)
-  DirectoryIndex index.html
-  DocumentRoot /usr/src/sso-provider/public
-
-  LogLevel warn
-  ErrorLog  ${APACHE_LOG_DIR}/ssl_error.log
-  CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
-
-  <Directory /usr/src/sso-provider/public>
-    Options Indexes FollowSymLinks MultiViews IncludesNoExec
-    AllowOverride None
-    Order allow,deny
-    allow from all
-  </Directory>
-
-  <IfModule mod_ssl.c>
-    SSLEngine on
-    # SSLCertificateChainFile /etc/ssl/certs/startcom.sub.class1.server.ca.pem
-    # SSLCACertificateFile    /etc/ssl/certs/startcom.ca.pem
-    SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
-    SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
-    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
-  </IfModule>
-
-</VirtualHost>
diff --git a/docker/sso/application.yml.in b/docker/sso/application.yml.in
deleted file mode 100644
index 6063851..0000000
--- a/docker/sso/application.yml.in
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# Consult application.default.yml for the full list of configuration
-# settings.
-#
-# The order of precedence is:
-# 1. config/environments/{RAILS_ENV}.rb (deprecated)
-# 2. Section in application.yml corresponding to RAILS_ENV (e.g., development)
-# 3. Section in application.yml called "common"
-# 4. Section in application.default.yml corresponding to RAILS_ENV
-# 5. Section in application.default.yml called "common"
-
-production:
-  allow_account_registration: true
-
-  secret_token: @@SSO_SECRET@@
-  uuid_prefix: 'zzzzz'
-
-  # If true, allow new creation of new accounts in the SSO server's internal
-  # user database.
-  allow_account_registration: true
-
-development:
-  # No development settings 
-
-test:
-  # No test settings 
-
-common:
-  # No common settings 
-
diff --git a/docker/sso/database.yml.in b/docker/sso/database.yml.in
deleted file mode 100644
index 025d62a..0000000
--- a/docker/sso/database.yml.in
+++ /dev/null
@@ -1,22 +0,0 @@
-# SQLite version 3.x
-#   gem install sqlite3-ruby (not necessary on OS X Leopard)
-development:
-  adapter: sqlite3
-  database: db/development.sqlite3
-  pool: 5
-  timeout: 5000
-
-# Warning: The database defined as "test" will be erased and
-# re-generated from your development database when you run "rake".
-# Do not set this db to the same as development or production.
-test:
-  adapter: sqlite3
-  database: db/test.sqlite3
-  pool: 5
-  timeout: 5000
-
-production:
-  adapter: sqlite3
-  database: db/production.sqlite3
-  pool: 5
-  timeout: 5000
diff --git a/docker/sso/seeds.rb.in b/docker/sso/seeds.rb.in
deleted file mode 100644
index b35b939..0000000
--- a/docker/sso/seeds.rb.in
+++ /dev/null
@@ -1,9 +0,0 @@
-
-Client.delete_all
-
-c = Client.new()
-c.name = "@@SSO_CLIENT_NAME@@"
-c.app_id = "@@SSO_CLIENT_APP_ID@@"
-c.app_secret = "@@SSO_CLIENT_SECRET@@"
-c.save!
-
diff --git a/docker/workbench/.gitignore b/docker/workbench/.gitignore
deleted file mode 100644
index bf969c3..0000000
--- a/docker/workbench/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-apache2_vhost
-production.rb
-secret_token.rb
diff --git a/docker/workbench/Dockerfile b/docker/workbench/Dockerfile
deleted file mode 100644
index 148153a..0000000
--- a/docker/workbench/Dockerfile
+++ /dev/null
@@ -1,37 +0,0 @@
-# Arvados Workbench Docker container.
-
-FROM arvados/passenger
-MAINTAINER Ward Vandewege <ward at curoverse.com>
-
-# We need graphviz for the provenance graphs
-RUN apt-get update -q
-RUN apt-get install -qy graphviz
-
-# Update Arvados source
-RUN /bin/mkdir -p /usr/src/arvados/apps
-ADD generated/workbench.tar.gz /usr/src/arvados/apps/
-ADD generated/workbench_rails_env /etc/
-RUN /bin/cp /usr/src/arvados/apps/workbench/config/environments/$(cat /etc/workbench_rails_env).rb.example /usr/src/arvados/apps/workbench/config/environments/$(cat /etc/workbench_rails_env).rb
-ADD generated/application.yml /usr/src/arvados/apps/workbench/config/application.yml
-
-RUN RAILS_ENV=$(cat /etc/workbench_rails_env) && \
-    /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/apps/workbench/Gemfile && \
-    touch /usr/src/arvados/apps/workbench/log/$RAILS_ENV.log && \
-    chmod 666 /usr/src/arvados/apps/workbench/log/$RAILS_ENV.log && \
-    touch /usr/src/arvados/apps/workbench/db/$RAILS_ENV.sqlite3 && \
-    cd /usr/src/arvados/apps/workbench && \
-    /usr/local/rvm/bin/rvm-exec default bundle exec rake assets:precompile && \
-    chown -R www-data:www-data /usr/src/arvados/apps/workbench
-
-# Configure Apache
-ADD generated/apache2_vhost /etc/apache2/sites-available/workbench
-RUN \
-  a2dissite default && \
-  a2ensite workbench && \
-  a2enmod rewrite && \
-  /bin/mkdir /var/run/apache2
-
-ADD apache2_foreground.sh /etc/apache2/foreground.sh
-
-# Start Apache
-CMD ["/etc/apache2/foreground.sh"]
diff --git a/docker/workbench/apache2_foreground.sh b/docker/workbench/apache2_foreground.sh
deleted file mode 100755
index fc6028e..0000000
--- a/docker/workbench/apache2_foreground.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#! /bin/bash
-
-read pid cmd state ppid pgrp session tty_nr tpgid rest < /proc/self/stat
-trap "kill -TERM -$pgrp; exit" EXIT TERM KILL SIGKILL SIGTERM SIGQUIT
-
-source /etc/apache2/envvars
-/usr/sbin/apache2 -D FOREGROUND
diff --git a/docker/workbench/apache2_vhost.in b/docker/workbench/apache2_vhost.in
deleted file mode 100644
index ba9e7f8..0000000
--- a/docker/workbench/apache2_vhost.in
+++ /dev/null
@@ -1,35 +0,0 @@
-
-<VirtualHost *:80>
-
-  ServerName workbench.@@ARVADOS_DOMAIN@@
-  ServerAdmin sysadmin at curoverse.com
-
-  RailsEnv @@WORKBENCH_RAILS_MODE@@
-  RackBaseURI /
-  RailsAppSpawnerIdleTime 1200
-
-  # Index file and Document Root (where the public files are located)
-  DirectoryIndex index.html
-  DocumentRoot /usr/src/arvados/apps/workbench/public
-
-  LogLevel warn
-  ErrorLog  ${APACHE_LOG_DIR}/error.log
-  CustomLog ${APACHE_LOG_DIR}/access.log combined
-
-  <Directory /usr/src/arvados/apps/workbench>
-    Options Indexes FollowSymLinks MultiViews IncludesNoExec
-    AllowOverride None
-    Order allow,deny
-    allow from all
-  </Directory>
-
-  <IfModule mod_ssl.c>
-    SSLEngine off
-    # SSLCertificateChainFile /etc/ssl/certs/startcom.sub.class1.server.ca.pem
-    # SSLCACertificateFile    /etc/ssl/certs/startcom.ca.pem
-    SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
-    SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
-    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
-  </IfModule>
-
-</VirtualHost>
diff --git a/docker/workbench/application.yml.in b/docker/workbench/application.yml.in
deleted file mode 100644
index 5e16928..0000000
--- a/docker/workbench/application.yml.in
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copy this file to application.yml and edit to suit.
-#
-# Consult application.default.yml for the full list of configuration
-# settings.
-#
-# The order of precedence is:
-# 1. config/environments/{RAILS_ENV}.rb (deprecated)
-# 2. Section in application.yml corresponding to RAILS_ENV (e.g., development)
-# 3. Section in application.yml called "common"
-# 4. Section in application.default.yml corresponding to RAILS_ENV
-# 5. Section in application.default.yml called "common"
-
-common:
-  # At minimum, you need a nice long randomly generated secret_token here.
-  secret_token: @@WORKBENCH_SECRET@@
-
-  # You probably also want to point to your API server.
-  arvados_login_base: 'https://api.@@ARVADOS_DOMAIN@@/login'
-  arvados_v1_base: 'https://api.@@ARVADOS_DOMAIN@@/arvados/v1'
-  arvados_insecure_https: @@WORKBENCH_INSECURE_HTTPS@@
-
-  data_import_dir: @@WORKBENCH_DATA_IMPORT_DIR@@
-  data_export_dir: @@WORKBENCH_DATA_EXPORT_DIR@@
-
-  site_name: @@WORKBENCH_SITE_NAME@@
-  activation_contact_link: @@WORKBENCH_ACTIVATION_CONTACT_LINK@@
-
-  arvados_docsite: http://doc.@@ARVADOS_DOMAIN@@
-  force_ssl: false
diff --git a/docker/workbench/production.rb.in b/docker/workbench/production.rb.in
deleted file mode 100644
index bc3bd33..0000000
--- a/docker/workbench/production.rb.in
+++ /dev/null
@@ -1,91 +0,0 @@
-ArvadosWorkbench::Application.configure do
-  # Settings specified here will take precedence over those in config/application.rb
-
-  # Code is not reloaded between requests
-  config.cache_classes = true
-
-  # Full error reports are disabled and caching is turned on
-  config.consider_all_requests_local       = false
-  config.action_controller.perform_caching = true
-
-  # Disable Rails's static asset server (Apache or nginx will already do this)
-  config.serve_static_assets = false
-
-  # Compress JavaScripts and CSS
-  config.assets.compress = true
-
-  # Don't fallback to assets pipeline if a precompiled asset is missed
-  config.assets.compile = false
-
-  # Generate digests for assets URLs
-  config.assets.digest = true
-
-  # Defaults to nil and saved in location specified by config.assets.prefix
-  # config.assets.manifest = YOUR_PATH
-
-  # Specifies the header that your server uses for sending files
-  # config.action_dispatch.x_sendfile_header = "X-Sendfile" # for apache
-  # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for nginx
-
-  # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
-  # config.force_ssl = true
-
-  # See everything in the log (default is :info)
-  # config.log_level = :debug
-
-  # Prepend all log lines with the following tags
-  # config.log_tags = [ :subdomain, :uuid ]
-
-  # Use a different logger for distributed setups
-  # config.logger = ActiveSupport::TaggedLogging.new(SyslogLogger.new)
-
-  # Use a different cache store in production
-  # config.cache_store = :mem_cache_store
-
-  # Enable serving of images, stylesheets, and JavaScripts from an asset server
-  # config.action_controller.asset_host = "http://assets.example.com"
-
-  # Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)
-  # config.assets.precompile += %w( search.js )
-
-  # Disable delivery errors, bad email addresses will be ignored
-  # config.action_mailer.raise_delivery_errors = false
-
-  # Enable threaded mode
-  # config.threadsafe!
-
-  # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
-  # the I18n.default_locale when a translation can not be found)
-  config.i18n.fallbacks = true
-
-  # Send deprecation notices to registered listeners
-  config.active_support.deprecation = :notify
-
-  # Log the query plan for queries taking more than this (works
-  # with SQLite, MySQL, and PostgreSQL)
-  # config.active_record.auto_explain_threshold_in_seconds = 0.5
-
-  # Log timing data for API transactions
-  config.profiling_enabled = false
-
-  config.arvados_login_base = 'https://' + ENV['API_PORT_443_TCP_ADDR'].to_s + '/login'
-  config.arvados_v1_base = 'https://' + ENV['API_PORT_443_TCP_ADDR'].to_s + '/arvados/v1'
-  config.arvados_insecure_https = @@WORKBENCH_INSECURE_HTTPS@@ # true = do not check server certificate
-
-  config.data_import_dir = '@@WORKBENCH_DATA_IMPORT_DIR@@'
-  config.data_export_dir = '@@WORKBENCH_DATA_EXPORT_DIR@@'
-
-  # Authentication stub: hard code pre-approved API tokens.
-  # config.accept_api_token = { rand(2**256).to_s(36) => true }
-  config.accept_api_token = {}
-
-  config.vcf_pipeline_uuid = '@@WORKBENCH_VCF_PIPELINE_UUID@@'
-
-  config.site_name = '@@WORKBENCH_SITE_NAME@@'
-  config.activation_contact_link = '@@WORKBENCH_ACTIVATION_CONTACT_LINK@@'
-  config.arvados_docsite = 'http://doc.arvados.org'
-
-  config.arvados_theme = 'default'
-
-  config.show_user_agreement_inline = false
-end
diff --git a/docker/workbench/secret_token.rb.in b/docker/workbench/secret_token.rb.in
deleted file mode 100644
index 91c1a5c..0000000
--- a/docker/workbench/secret_token.rb.in
+++ /dev/null
@@ -1,7 +0,0 @@
-# Be sure to restart your server when you modify this file.
-
-# Your secret key for verifying the integrity of signed cookies.
-# If you change this key, all old signed cookies will become invalid!
-# Make sure the secret is at least 30 characters and all random,
-# no regular words or you'll be exposed to dictionary attacks.
-ArvadosWorkbench::Application.config.secret_token = '@@WORKBENCH_SECRET@@'
diff --git a/docker/workbench/workbench_rails_env.in b/docker/workbench/workbench_rails_env.in
deleted file mode 100644
index f4f7638..0000000
--- a/docker/workbench/workbench_rails_env.in
+++ /dev/null
@@ -1 +0,0 @@
-@@WORKBENCH_RAILS_MODE@@
\ No newline at end of file

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list