X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/f88624b9408ea31c25e128269305aff4c7dba2ce..3aaefcb3c76ff470b475d950398d01255e87712a:/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 185467cf7d..eb53e19049 100644 --- a/tools/arvbox/lib/arvbox/docker/common.sh +++ b/tools/arvbox/lib/arvbox/docker/common.sh @@ -3,12 +3,13 @@ # SPDX-License-Identifier: AGPL-3.0 export DEBIAN_FRONTEND=noninteractive -export PATH=${PATH}:/usr/local/go/bin:/var/lib/gems/bin -export GEM_HOME=/var/lib/gems +export GEM_HOME=/var/lib/arvados/lib/ruby/gems/2.5.0 +export PATH=${PATH}:/usr/local/go/bin:$GEM_HOME/bin:/var/lib/arvados/bin export npm_config_cache=/var/lib/npm 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 defaultdev=$(/sbin/ip route|awk '/default/ { print $5 }') dockerip=$(/sbin/ip route | grep default | awk '{ print $3 }') @@ -19,10 +20,10 @@ else localip=$containerip fi -root_cert=/var/lib/arvados/root-cert.pem -root_cert_key=/var/lib/arvados/root-cert.key -server_cert=/var/lib/arvados/server-cert-${localip}.pem -server_cert_key=/var/lib/arvados/server-cert-${localip}.key +root_cert=$ARVADOS_CONTAINER_PATH/root-cert.pem +root_cert_key=$ARVADOS_CONTAINER_PATH/root-cert.key +server_cert=$ARVADOS_CONTAINER_PATH/server-cert-${localip}.pem +server_cert_key=$ARVADOS_CONTAINER_PATH/server-cert-${localip}.key declare -A services services=( @@ -37,6 +38,7 @@ services=( [arv-git-httpd]=9001 [keep-web]=9003 [keep-web-ssl]=9002 + [keep-web-dl-ssl]=9004 [keepproxy]=25100 [keepproxy-ssl]=25101 [keepstore0]=25107 @@ -62,22 +64,24 @@ run_bundler() { # The 'gem install bundler line below' is cf. # https://bundler.io/blog/2019/05/14/solutions-for-cant-find-gem-bundler-with-executable-bundle.html, # until we get bundler 2.7.10/3.0.0 or higher - gem install bundler --no-document -v "$(grep -A 1 "BUNDLED WITH" Gemfile.lock | tail -n 1|tr -d ' ')" + flock $GEM_HOME/gems.lock gem install bundler --no-document -v "$(grep -A 1 "BUNDLED WITH" Gemfile.lock | tail -n 1|tr -d ' ')" frozen=--frozen else frozen="" fi - # if ! test -x /var/lib/gems/bin/bundler ; then + # if ! test -x $GEM_HOME/bin/bundler ; then # bundleversion=2.0.2 # bundlergem=$(ls -r $GEM_HOME/cache/bundler-${bundleversion}.gem 2>/dev/null | head -n1 || true) # if test -n "$bundlergem" ; then - # flock /var/lib/gems/gems.lock gem install --verbose --local --no-document $bundlergem + # flock $GEM_HOME/gems.lock gem install --verbose --local --no-document $bundlergem # else - # flock /var/lib/gems/gems.lock gem install --verbose --no-document bundler --version ${bundleversion} + # flock $GEM_HOME/gems.lock gem install --verbose --no-document bundler --version ${bundleversion} # fi # fi - if ! flock /var/lib/gems/gems.lock bundler install --verbose --local --no-deployment $frozen "$@" ; then - flock /var/lib/gems/gems.lock bundler install --verbose --no-deployment $frozen "$@" + # Make sure to put the gem binaries in the right place + flock /var/lib/arvados/lib/ruby/gems/2.5.0/gems.lock bundler config bin $GEM_HOME/bin + if ! flock $GEM_HOME/gems.lock bundler install --verbose --local --no-deployment $frozen "$@" ; then + flock $GEM_HOME/gems.lock bundler install --verbose --no-deployment $frozen "$@" fi }