X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/0892f09aed1cfdef038c90afdb8c8a9031c994a0..09cbdc3074b3f1e69c9c537875146f6da0a6ed8f:/tools/arvbox/lib/arvbox/docker/common.sh diff --git a/tools/arvbox/lib/arvbox/docker/common.sh b/tools/arvbox/lib/arvbox/docker/common.sh index f391376f39..ba81426f0b 100644 --- a/tools/arvbox/lib/arvbox/docker/common.sh +++ b/tools/arvbox/lib/arvbox/docker/common.sh @@ -12,6 +12,8 @@ export npm_config_cache_min=Infinity export R_LIBS=/var/lib/Rlibs export HOME=$(getent passwd arvbox | cut -d: -f6) export ARVADOS_CONTAINER_PATH=/var/lib/arvados-arvbox +export GEM_HOME=$HOME/.gem +GEMLOCK=$HOME/gems.lock defaultdev=$(/sbin/ip route|awk '/default/ { print $5 }') dockerip=$(/sbin/ip route | grep default | awk '{ print $3 }') @@ -35,7 +37,6 @@ services=( [api]=8004 [controller]=8003 [controller-ssl]=8000 - [composer]=4200 [arv-git-httpd-ssl]=9000 [arv-git-httpd]=9001 [keep-web]=9003 @@ -62,8 +63,7 @@ else fi run_bundler() { - GEMLOCK=/var/lib/arvados/lib/ruby/gems/gems.lock - flock $GEMLOCK /var/lib/arvados/bin/gem install --no-document bundler:$BUNDLER_VERSION + flock $GEMLOCK /var/lib/arvados/bin/gem install --no-document --user bundler:$BUNDLER_VERSION if test -f Gemfile.lock ; then frozen=--frozen else @@ -74,6 +74,11 @@ run_bundler() { # If present, use the one associated with rails workbench or API BUNDLER=$PWD/bin/bundle fi + + if test -z "$(flock $GEMLOCK /var/lib/arvados/bin/gem list | grep 'arvados[[:blank:]].*[0-9.]*dev')" ; then + (cd /usr/src/arvados/sdk/ruby && \ + /var/lib/arvados/bin/gem build arvados.gemspec && flock $GEMLOCK /var/lib/arvados/bin/gem install $(ls -1 *.gem | sort -r | head -n1)) + fi if ! flock $GEMLOCK $BUNDLER install --verbose --local --no-deployment $frozen "$@" ; then flock $GEMLOCK $BUNDLER install --verbose --no-deployment $frozen "$@" fi