Arvbox uses OS package for Ruby instead of building from source
authorPeter Amstutz <peter.amstutz@curii.com>
Sat, 18 Jan 2020 00:34:16 +0000 (19:34 -0500)
committerPeter Amstutz <peter.amstutz@curii.com>
Sat, 18 Jan 2020 00:36:02 +0000 (19:36 -0500)
refs #16045

Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <peter.amstutz@curii.com>

tools/arvbox/lib/arvbox/docker/Dockerfile.base
tools/arvbox/lib/arvbox/docker/common.sh

index 4310d6e7bb677e7e547dd2fe5364dd0f44885868..717762d87e4bed8805b25ce4ae9a1cf51e1f58e6 100644 (file)
@@ -20,21 +20,22 @@ RUN apt-get update && \
     linkchecker python3-virtualenv python-virtualenv xvfb iceweasel \
     libgnutls28-dev python3-dev vim cadaver cython gnupg dirmngr \
     libsecret-1-dev r-base r-cran-testthat libxml2-dev pandoc \
-    python3-setuptools python3-pip openjdk-8-jdk bsdmainutils net-tools&& \
+    python3-setuptools python3-pip openjdk-8-jdk bsdmainutils net-tools \
+    ruby2.3 ruby-dev bundler && \
     apt-get clean
 
 ENV RUBYVERSION_MINOR 2.3
 ENV RUBYVERSION 2.3.5
 
 # Install Ruby from source
-RUN cd /tmp && \
- curl -f http://cache.ruby-lang.org/pub/ruby/${RUBYVERSION_MINOR}/ruby-${RUBYVERSION}.tar.gz | tar -xzf - && \
- cd ruby-${RUBYVERSION} && \
- ./configure --disable-install-doc && \
- make && \
- make install && \
- cd /tmp && \
- rm -rf ruby-${RUBYVERSION}
+RUN cd /tmp && \
+ curl -f http://cache.ruby-lang.org/pub/ruby/${RUBYVERSION_MINOR}/ruby-${RUBYVERSION}.tar.gz | tar -xzf - && \
+ cd ruby-${RUBYVERSION} && \
+ ./configure --disable-install-doc && \
+ make && \
+ make install && \
+ cd /tmp && \
+ rm -rf ruby-${RUBYVERSION}
 
 ENV GEM_HOME /var/lib/gems
 ENV GEM_PATH /var/lib/gems
index 2feaaeafb6740a415acaa8fde673a997e144202b..15484197eb9554c80fa97b8b3d3682dfada5cbd0 100644 (file)
@@ -62,15 +62,15 @@ run_bundler() {
     else
         frozen=""
     fi
-    if ! test -x /var/lib/gems/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
-        else
-            flock /var/lib/gems/gems.lock gem install --verbose --no-document bundler --version ${bundleversion}
-        fi
-    fi
+    if ! test -x /var/lib/gems/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
+        else
+            flock /var/lib/gems/gems.lock gem install --verbose --no-document bundler --version ${bundleversion}
+        fi
+    fi
     if ! flock /var/lib/gems/gems.lock bundler install --verbose --path $GEM_HOME --local --no-deployment $frozen "$@" ; then
         flock /var/lib/gems/gems.lock bundler install --verbose --path $GEM_HOME --no-deployment $frozen "$@"
     fi