From fba386bcea1c003760fa23daff1ecabc14a476ca Mon Sep 17 00:00:00 2001 From: Tom Clegg Date: Tue, 8 Feb 2022 14:09:16 -0500 Subject: [PATCH] 17492: Clean up bundler version check/install. Apparently gem installs bundler in $HOME, not in $GEM_HOME like we expected. The broken code continued working as long as it was using a pre-existing run-tests temp dir that also installed a version of bundler in $GEM_HOME because bundler was listed in a Gemfile.lock. Arvados-DCO-1.1-Signed-off-by: Tom Clegg --- build/run-tests.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/build/run-tests.sh b/build/run-tests.sh index 9cd38784b9..f716cb35f2 100755 --- a/build/run-tests.sh +++ b/build/run-tests.sh @@ -544,13 +544,12 @@ setup_ruby_environment() { echo "Will install dependencies to $(gem env gemdir)" echo "Will install bundler and arvados gems to $tmpdir_gem_home" echo "Gem search path is GEM_PATH=$GEM_PATH" - bundle="$tmpdir_gem_home/bin/bundle" + bundle="bundle" ( export HOME=$GEMHOME - bundlers="$(gem list --details bundler)" versions=(2.2.19) for v in ${versions[@]}; do - if ! echo "$bundlers" | fgrep -q "($v)"; then + if ! gem list --installed --version "${v}" bundler >/dev/null; then gem install --no-document --user $(for v in ${versions[@]}; do echo bundler:${v}; done) break fi -- 2.30.2