X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/d13a369065b4e72047c8c267d6ceaa5c84d50c3d..0eb72b526bf8bbb011551ecf019f604e17a534f1:/tools/arvbox/lib/arvbox/docker/common.sh?ds=sidebyside diff --git a/tools/arvbox/lib/arvbox/docker/common.sh b/tools/arvbox/lib/arvbox/docker/common.sh index 230a189a9a..688ca83577 100644 --- a/tools/arvbox/lib/arvbox/docker/common.sh +++ b/tools/arvbox/lib/arvbox/docker/common.sh @@ -1,3 +1,7 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + export PATH=${PATH}:/usr/local/go/bin:/var/lib/gems/bin export GEM_HOME=/var/lib/gems @@ -40,7 +44,12 @@ run_bundler() { frozen="" fi if ! test -x bundle ; then - gem install --no-document bundler + bundlergem=$(ls -r $GEM_HOME/cache/bundler-*.gem 2>/dev/null | head -n1 || true) + if test -n "$bundlergem" ; then + flock /var/lib/gems/gems.lock gem install --local --no-document $bundlergem + else + flock /var/lib/gems/gems.lock gem install --no-document bundler + fi fi if ! flock /var/lib/gems/gems.lock bundle install --path $GEM_HOME --local --no-deployment $frozen "$@" ; then flock /var/lib/gems/gems.lock bundle install --path $GEM_HOME --no-deployment $frozen "$@" @@ -49,7 +58,7 @@ run_bundler() { pip_install() { pushd /var/lib/pip - for p in $(ls http*.tar.gz) $(ls http*.whl) $(ls http*.zip) ; do + for p in $(ls http*.tar.gz) $(ls http*.tar.bz2) $(ls http*.whl) $(ls http*.zip) ; do if test -f $p ; then ln -sf $p $(echo $p | sed 's/.*%2F\(.*\)/\1/') fi