[arvados] created: 2.7.0-5393-gb4ebaa2edb

git repository hosting git at public.arvados.org
Mon Nov 27 20:26:48 UTC 2023


        at  b4ebaa2edbd67c695ea23f89e74c946b7f4eb221 (commit)


commit b4ebaa2edbd67c695ea23f89e74c946b7f4eb221
Author: Tom Clegg <tom at curii.com>
Date:   Wed Nov 22 13:56:24 2023 -0500

    20846: Update Ruby install instructions.
    
    * Remove "install from source" method.
    * Change recommendation from "RVM" to "OS package if exists".
    * Add missing dependencies in RVM method.
    * Change example version from "2.7" (which currently selects 2.7.2) to "2.7.7"
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/doc/_includes/_install_ruby_and_bundler.liquid b/doc/_includes/_install_ruby_and_bundler.liquid
index f933082498..67e56d5117 100644
--- a/doc/_includes/_install_ruby_and_bundler.liquid
+++ b/doc/_includes/_install_ruby_and_bundler.liquid
@@ -4,23 +4,18 @@ Copyright (C) The Arvados Authors. All rights reserved.
 SPDX-License-Identifier: CC-BY-SA-3.0
 {% endcomment %}
 
-Ruby 2.6 or newer is required.
+Ruby 2.7 or newer is required.
 
 * "Option 1: Install from packages":#packages
 * "Option 2: Install with RVM":#rvm
-* "Option 3: Install from source":#fromsource
 
 h2(#packages). Option 1: Install from packages
 
-{% include 'notebox_begin' %}
-Future versions of Arvados may require a newer version of Ruby than is packaged with your OS.  Using OS packages simplifies initial install, but may complicate upgrades that rely on a newer Ruby.  If this is a concern, we recommend using "RVM":#rvm.
-{% include 'notebox_end' %}
-
 h3. Alma/CentOS/Red Hat/Rocky
 
-The Ruby version shipped with version 7 of these distributions is too old.  Use "RVM":#rvm to install a newer version of Ruby (we recommend installing version 2.7 or newer).
+Version 7 of these distributions does not provide a new enough Ruby version.  Use "RVM":#rvm to install Ruby 2.7 or newer.
 
-Ruby 2.7 is available in a module with version 8 of these distributions. You can install it by running:
+Version 8 of these distributions provides Ruby 2.7. You can install it by running:
 
 <notextile>
 <pre><code># <span class="userinput">dnf module enable ruby:2.7</span>
@@ -29,7 +24,7 @@ Ruby 2.7 is available in a module with version 8 of these distributions. You can
 
 h3. Debian and Ubuntu
 
-Debian 10 (buster) and Ubuntu 18.04 (bionic) ship with Ruby 2.5, which is too old for Arvados. Use "RVM":#rvm to install a newer version of Ruby (we recommend installing version 2.7 or newer).
+Debian 10 (buster) and Ubuntu 18.04 (bionic) ship with Ruby 2.5, which is too old for Arvados. Use "RVM":#rvm to install Ruby 2.7 or newer.
 
 Debian 11 (bullseye) and Ubuntu 20.04 (focal) and later ship with Ruby 2.7 or newer, which is sufficient for Arvados.
 
@@ -39,28 +34,42 @@ Debian 11 (bullseye) and Ubuntu 20.04 (focal) and later ship with Ruby 2.7 or ne
 
 h2(#rvm). Option 2: Install with RVM
 
+{% include 'notebox_begin_warning' %}
+We do not recommend using RVM unless the Ruby version provided by your OS distribution is older than 2.7.
+{% include 'notebox_end' %}
+
 h3. Install gpg and curl
 
-h4. Alma/CentOS/Red Hat/Rocky
+h4. Alma/CentOS/Red Hat 7
+
+<pre>
+yum install gpg curl which findutils procps
+</pre>
+
+{% comment %}
+To build ruby 3.2.2 on CentOS 7, add: "yum --enablerepo=powertools install libyaml-devel"
+{% endcomment %}
+
+h4. Alma/CentOS/Red Hat/Rocky 8+
 
 <pre>
-dnf install gpg curl which
+dnf install gpg curl which findutils procps
 </pre>
 
 h4. Debian and Ubuntu
 
 <pre>
-apt-get --no-install-recommends install gpg curl
+apt-get --no-install-recommends install gpg curl ca-certificates dirmngr procps
 </pre>
 
 h3. Install RVM, Ruby and Bundler
 
 <notextile>
-<pre><code># <span class="userinput">gpg --keyserver pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
-\curl -sSL https://get.rvm.io | bash -s stable --ruby=2.7
+<pre><code><span class="userinput">gpg --keyserver pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
+\curl -sSL https://get.rvm.io | bash -s stable --ruby=2.7.7
 </span></code></pre></notextile>
 
-This command installs the latest Ruby 2.7.x release, as well as the @gem@ and @bundle@ commands.
+This command installs the Ruby 2.7.7 release, as well as the @gem@ and @bundle@ commands.
 
 To use Ruby installed from RVM, load it in an open shell like this:
 
@@ -73,41 +82,3 @@ Alternately you can use @rvm-exec@ (the first parameter is the ruby version to u
 <notextile>
 <pre><code><span class="userinput">rvm-exec default ruby -v
 </span></code></pre></notextile>
-
-h2(#fromsource). Option 3: Install from source
-
-Install prerequisites for Debian 10, Ubuntu 18.04 and Ubuntu 20.04:
-
-<notextile>
-<pre><code><span class="userinput">sudo apt-get install \
-    bison build-essential gettext libcurl4 \
-    libcurl4-openssl-dev libpcre3-dev libreadline-dev \
-    libssl-dev libxslt1.1 zlib1g-dev
-</span></code></pre></notextile>
-
-Install prerequisites for Alma/CentOS/Red Hat/Rocky:
-
-<notextile>
-<pre><code><span class="userinput">sudo dnf install \
-    libyaml-devel glibc-headers autoconf gcc-c++ glibc-devel \
-    patch readline-devel zlib-devel libffi-devel openssl-devel \
-    make automake libtool bison sqlite-devel tar
-</span></code></pre></notextile>
-
-Build and install Ruby:
-
-<notextile>
-<pre><code><span class="userinput">mkdir -p ~/src
-cd ~/src
-curl -f https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.gz | tar xz
-cd ruby-3.2.2
-./configure --disable-install-static-library --enable-shared --disable-install-doc
-make -j8
-sudo make install
-
-# Make sure the post install script can find the gem and ruby executables
-sudo ln -s /usr/local/bin/gem /usr/bin/gem
-sudo ln -s /usr/local/bin/ruby /usr/bin/ruby
-# Install bundler
-sudo -i gem install bundler --no-document</span>
-</code></pre></notextile>

commit a77d65e098bc014d05c4c16cc14c5baa00afdd68
Author: Tom Clegg <tom at curii.com>
Date:   Tue Nov 21 10:17:57 2023 -0500

    20846: Update setuptools, accommodate debian12 needs.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/build/package-build-dockerfiles/debian12/Dockerfile b/build/package-build-dockerfiles/debian12/Dockerfile
index 65e76303b4..86d038b80b 100644
--- a/build/package-build-dockerfiles/debian12/Dockerfile
+++ b/build/package-build-dockerfiles/debian12/Dockerfile
@@ -40,7 +40,7 @@ ENV DEBIAN_FRONTEND noninteractive
 
 SHELL ["/bin/bash", "-c"]
 # Install dependencies.
-RUN /usr/bin/apt-get update && /usr/bin/apt-get install -q -y python3 python3-setuptools python3-pip libcurl4-gnutls-dev curl git procps libattr1-dev libfuse-dev libgnutls28-dev libpq-dev unzip python3-venv python3-dev libpam-dev equivs
+RUN /usr/bin/apt-get update && /usr/bin/apt-get install -q -y python3 python3-setuptools python3-pip libcurl4-gnutls-dev curl git procps libattr1-dev libfuse-dev libgnutls28-dev libpq-dev unzip python3-venv python3-virtualenv python3-dev libpam-dev equivs
 
 # Install RVM
 ADD generated/mpapis.asc /tmp/
diff --git a/build/run-library.sh b/build/run-library.sh
index e3c0e251bf..448f652c27 100755
--- a/build/run-library.sh
+++ b/build/run-library.sh
@@ -784,10 +784,17 @@ fpm_build_virtualenv_worker () {
 
   rm -rf dist/*
 
-  # Get the latest setuptools
-  if ! $pip install $DASHQ_UNLESS_DEBUG $CACHE_FLAG -U 'setuptools<45'; then
+  # Get the latest setuptools.
+  #
+  # Note "pip3 install setuptools" fails on debian12 ("error:
+  # externally-managed-environment") even if that requirement is
+  # already satisfied, so we parse "pip3 list" output instead to check
+  # whether we need to do anything.
+  if [[ "$($pip list | grep -P -o '^setuptools\s+\K[0-9]+')" -ge 66 ]]; then
+    : # OK, already installed
+  elif ! $pip install $DASHQ_UNLESS_DEBUG $CACHE_FLAG -U 'setuptools>=66'; then
     echo "Error, unable to upgrade setuptools with"
-    echo "  $pip install $DASHQ_UNLESS_DEBUG $CACHE_FLAG -U 'setuptools<45'"
+    echo "  $pip install $DASHQ_UNLESS_DEBUG $CACHE_FLAG -U 'setuptools>=66'"
     exit 1
   fi
   # filter a useless warning (when building the cwltest package) from the stderr output

commit d8ebcd2b1487505572aa38b61f1da77b71abaeaf
Author: Tom Clegg <tom at curii.com>
Date:   Mon Nov 20 17:25:12 2023 -0500

    20846: Don't use pip to install virtualenv, just rely on OS pkg.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/build/package-build-dockerfiles/debian12/Dockerfile b/build/package-build-dockerfiles/debian12/Dockerfile
index b68b522634..65e76303b4 100644
--- a/build/package-build-dockerfiles/debian12/Dockerfile
+++ b/build/package-build-dockerfiles/debian12/Dockerfile
@@ -42,9 +42,6 @@ SHELL ["/bin/bash", "-c"]
 # Install dependencies.
 RUN /usr/bin/apt-get update && /usr/bin/apt-get install -q -y python3 python3-setuptools python3-pip libcurl4-gnutls-dev curl git procps libattr1-dev libfuse-dev libgnutls28-dev libpq-dev unzip python3-venv python3-dev libpam-dev equivs
 
-# Install virtualenv
-RUN /usr/bin/pip3 install 'virtualenv<20'
-
 # Install RVM
 ADD generated/mpapis.asc /tmp/
 ADD generated/pkuczynski.asc /tmp/

commit c0ad736a479c1bf33da59a1c9a4d9aeb446f9f16
Author: Tom Clegg <tom at curii.com>
Date:   Mon Nov 20 16:47:28 2023 -0500

    20846: Skip workbench package build.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/build/run-build-packages-one-target.sh b/build/run-build-packages-one-target.sh
index 29370279c6..1ba06fd368 100755
--- a/build/run-build-packages-one-target.sh
+++ b/build/run-build-packages-one-target.sh
@@ -221,7 +221,6 @@ if test -z "$packages" ; then
         arvados-src
         arvados-sync-groups
         arvados-sync-users
-        arvados-workbench
         arvados-workbench2
         arvados-ws
         crunch-dispatch-local
@@ -249,16 +248,13 @@ FINAL_EXITCODE=0
 
 package_fails=""
 
-mkdir -p "$WORKSPACE/apps/workbench/vendor/cache-$TARGET"
 mkdir -p "$WORKSPACE/services/api/vendor/cache-$TARGET"
 
 docker_volume_args=(
     -v "$JENKINS_DIR:/jenkins"
     -v "$WORKSPACE:/arvados"
     -v /arvados/services/api/vendor/bundle
-    -v /arvados/apps/workbench/vendor/bundle
     -v "$WORKSPACE/services/api/vendor/cache-$TARGET:/arvados/services/api/vendor/cache"
-    -v "$WORKSPACE/apps/workbench/vendor/cache-$TARGET:/arvados/apps/workbench/vendor/cache"
 )
 
 if [[ -n "$test_packages" ]]; then
diff --git a/build/run-build-packages.sh b/build/run-build-packages.sh
index 1132827355..050979dc76 100755
--- a/build/run-build-packages.sh
+++ b/build/run-build-packages.sh
@@ -309,8 +309,6 @@ debug_echo -e "\nRails packages\n"
 
 # The rails api server package
 handle_api_server "$ARCH"
-# The rails workbench package
-handle_workbench "$ARCH"
 
 # clean up temporary GOPATH
 rm -rf "$GOPATH"

commit a589414542d59a410c14a2241c05cd0d71bd8840
Author: Tom Clegg <tom at curii.com>
Date:   Mon Nov 20 16:06:08 2023 -0500

    20846: Add debian12 package target.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/build/package-build-dockerfiles/Makefile b/build/package-build-dockerfiles/Makefile
index ac5242bc28..cfc8ccd358 100644
--- a/build/package-build-dockerfiles/Makefile
+++ b/build/package-build-dockerfiles/Makefile
@@ -3,32 +3,43 @@
 # SPDX-License-Identifier: AGPL-3.0
 
 SHELL := '/bin/bash'
-all: centos7/generated debian10/generated debian11/generated rocky8/generated ubuntu1804/generated ubuntu2004/generated ubuntu2204/generated
 
+all: centos7/generated
 centos7/generated: common-generated-all
 	test -d centos7/generated || mkdir centos7/generated
 	cp -f -rlt centos7/generated common-generated/*
 
+all: debian10/generated
 debian10/generated: common-generated-all
 	test -d debian10/generated || mkdir debian10/generated
 	cp -f -rlt debian10/generated common-generated/*
 
+all: debian11/generated
 debian11/generated: common-generated-all
 	test -d debian11/generated || mkdir debian11/generated
 	cp -f -rlt debian11/generated common-generated/*
 
+all: debian12/generated
+debian12/generated: common-generated-all
+	test -d debian12/generated || mkdir debian12/generated
+	cp -f -rlt debian12/generated common-generated/*
+
+all: rocky8/generated
 rocky8/generated: common-generated-all
 	test -d rocky8/generated || mkdir rocky8/generated
 	cp -f -rlt rocky8/generated common-generated/*
 
+all: ubuntu1804/generated
 ubuntu1804/generated: common-generated-all
 	test -d ubuntu1804/generated || mkdir ubuntu1804/generated
 	cp -f -rlt ubuntu1804/generated common-generated/*
 
+all: ubuntu2004/generated
 ubuntu2004/generated: common-generated-all
 	test -d ubuntu2004/generated || mkdir ubuntu2004/generated
 	cp -f -rlt ubuntu2004/generated common-generated/*
 
+all: ubuntu2204/generated
 ubuntu2204/generated: common-generated-all
 	test -d ubuntu2204/generated || mkdir ubuntu2204/generated
 	cp -f -rlt ubuntu2204/generated common-generated/*
diff --git a/build/package-build-dockerfiles/debian12/Dockerfile b/build/package-build-dockerfiles/debian12/Dockerfile
new file mode 100644
index 0000000000..b68b522634
--- /dev/null
+++ b/build/package-build-dockerfiles/debian12/Dockerfile
@@ -0,0 +1,78 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
+ARG HOSTTYPE
+ARG BRANCH
+ARG GOVERSION
+
+## dont use debian:12 here since the word 'bookworm' is used for rvm precompiled binaries
+FROM debian:bookworm as build_x86_64
+# Install go
+ONBUILD ARG GOVERSION
+ONBUILD ADD generated/go${GOVERSION}.linux-amd64.tar.gz /usr/local/
+ONBUILD RUN ln -s /usr/local/go/bin/go /usr/local/bin/
+# Install nodejs and npm
+ONBUILD ADD generated/node-v10.23.1-linux-x64.tar.xz /usr/local/
+ONBUILD RUN ln -s /usr/local/node-v10.23.1-linux-x64/bin/* /usr/local/bin/
+# On x86, we want some cross-compilation support for arm64
+# Add gcc-aarch64-linux-gnu to compile go binaries for arm64
+ONBUILD RUN /usr/bin/apt-get update && /usr/bin/apt-get install -q -y gcc-aarch64-linux-gnu
+# We also need libpam compiled for arm64
+ONBUILD RUN /usr/bin/dpkg --add-architecture arm64
+ONBUILD RUN /usr/bin/apt-get update && /usr/bin/apt-get install -o APT::Immediate-Configure=0 -q -y libpam0g-dev:arm64 libfuse-dev:arm64
+
+FROM debian:bookworm as build_aarch64
+# Install go
+ONBUILD ARG GOVERSION
+ONBUILD ADD generated/go${GOVERSION}.linux-arm64.tar.gz /usr/local/
+ONBUILD RUN ln -s /usr/local/go/bin/go /usr/local/bin/
+# Install nodejs and npm
+ONBUILD ADD generated/node-v10.23.1-linux-arm64.tar.xz /usr/local/
+ONBUILD RUN ln -s /usr/local/node-v10.23.1-linux-arm64/bin/* /usr/local/bin/
+
+FROM build_${HOSTTYPE}
+RUN echo HOSTTYPE ${HOSTTYPE}
+
+MAINTAINER Arvados Package Maintainers <packaging at arvados.org>
+
+ENV DEBIAN_FRONTEND noninteractive
+
+SHELL ["/bin/bash", "-c"]
+# Install dependencies.
+RUN /usr/bin/apt-get update && /usr/bin/apt-get install -q -y python3 python3-setuptools python3-pip libcurl4-gnutls-dev curl git procps libattr1-dev libfuse-dev libgnutls28-dev libpq-dev unzip python3-venv python3-dev libpam-dev equivs
+
+# Install virtualenv
+RUN /usr/bin/pip3 install 'virtualenv<20'
+
+# Install RVM
+ADD generated/mpapis.asc /tmp/
+ADD generated/pkuczynski.asc /tmp/
+RUN gpg --import --no-tty /tmp/mpapis.asc && \
+    gpg --import --no-tty /tmp/pkuczynski.asc && \
+    curl -L https://get.rvm.io | bash -s stable && \
+    /usr/local/rvm/bin/rvm install 3.2.2 -j $(grep -c processor /proc/cpuinfo) --disable-binary && \
+    /usr/local/rvm/bin/rvm alias create default ruby-3.2.2 && \
+    echo "gem: --no-document" >> ~/.gemrc && \
+    /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
+
+RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
+# Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/
+ENV MAKE "make --jobs 8"
+
+# Preseed the go module cache and the ruby gems, using the currently checked
+# out branch of the source tree. This avoids potential compatibility issues
+# between the version of Ruby and certain gems.
+RUN git clone --depth 1 git://git.arvados.org/arvados.git /tmp/arvados && \
+    cd /tmp/arvados && \
+    if [[ -n "${BRANCH}" ]]; then git checkout ${BRANCH}; fi && \
+    cd /tmp/arvados/services/api && \
+    /usr/local/rvm/bin/rvm-exec default bundle install && \
+    cd /tmp/arvados/apps/workbench && \
+    /usr/local/rvm/bin/rvm-exec default bundle install && \
+    cd /tmp/arvados && \
+    go mod download
+
+ENV WORKSPACE /arvados
+CMD ["/usr/local/rvm/bin/rvm-exec", "default", "bash", "/jenkins/run-build-packages.sh", "--target", "debian12"]
diff --git a/build/package-test-dockerfiles/Makefile b/build/package-test-dockerfiles/Makefile
index 8b04fb1480..f5287c53ea 100644
--- a/build/package-test-dockerfiles/Makefile
+++ b/build/package-test-dockerfiles/Makefile
@@ -2,32 +2,42 @@
 #
 # SPDX-License-Identifier: AGPL-3.0
 
-all: centos7/generated debian10/generated debian11/generated rocky8/generated ubuntu1804/generated ubuntu2004/generated ubuntu2204/generated
-
+all: centos7/generated
 centos7/generated: common-generated-all
 	test -d centos7/generated || mkdir centos7/generated
 	cp -f -rlt centos7/generated common-generated/*
 
+all: debian10/generated
 debian10/generated: common-generated-all
 	test -d debian10/generated || mkdir debian10/generated
 	cp -f -rlt debian10/generated common-generated/*
 
+all: debian11/generated
 debian11/generated: common-generated-all
 	test -d debian11/generated || mkdir debian11/generated
 	cp -f -rlt debian11/generated common-generated/*
 
+all: debian12/generated
+debian12/generated: common-generated-all
+	test -d debian12/generated || mkdir debian12/generated
+	cp -f -rlt debian12/generated common-generated/*
+
+all: rocky8/generated
 rocky8/generated: common-generated-all
 	test -d rocky8/generated || mkdir rocky8/generated
 	cp -f -rlt rocky8/generated common-generated/*
 
+all: ubuntu1804/generated
 ubuntu1804/generated: common-generated-all
 	test -d ubuntu1804/generated || mkdir ubuntu1804/generated
 	cp -f -rlt ubuntu1804/generated common-generated/*
 
+all: ubuntu2004/generated
 ubuntu2004/generated: common-generated-all
 	test -d ubuntu2004/generated || mkdir ubuntu2004/generated
 	cp -f -rlt ubuntu2004/generated common-generated/*
 
+all: ubuntu2204/generated
 ubuntu2204/generated: common-generated-all
 	test -d ubuntu2204/generated || mkdir ubuntu2204/generated
 	cp -f -rlt ubuntu2204/generated common-generated/*
diff --git a/build/package-test-dockerfiles/debian12/Dockerfile b/build/package-test-dockerfiles/debian12/Dockerfile
new file mode 100644
index 0000000000..4cdc41d73b
--- /dev/null
+++ b/build/package-test-dockerfiles/debian12/Dockerfile
@@ -0,0 +1,28 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
+FROM debian:bookworm
+MAINTAINER Arvados Package Maintainers <packaging at arvados.org>
+
+ENV DEBIAN_FRONTEND noninteractive
+
+# Install dependencies
+RUN apt-get update && \
+    apt-get -y install --no-install-recommends curl ca-certificates gpg procps gpg-agent
+
+# Install RVM
+ADD generated/mpapis.asc /tmp/
+ADD generated/pkuczynski.asc /tmp/
+RUN gpg --import --no-tty /tmp/mpapis.asc && \
+    gpg --import --no-tty /tmp/pkuczynski.asc && \
+    curl -L https://get.rvm.io | bash -s stable && \
+    /usr/local/rvm/bin/rvm install 3.2.2 -j $(grep -c processor /proc/cpuinfo) --disable-binary && \
+    /usr/local/rvm/bin/rvm alias create default ruby-3.2.2 && \
+    echo "gem: --no-document" >> /etc/gemrc && \
+    /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19
+
+# udev daemon can't start in a container, so don't try.
+RUN mkdir -p /etc/udev/disabled
+
+RUN echo "deb file:///arvados/packages/debian12/ /" >>/etc/apt/sources.list
diff --git a/build/package-testing/test-packages-debian12.sh b/build/package-testing/test-packages-debian12.sh
new file mode 120000
index 0000000000..54ce94c357
--- /dev/null
+++ b/build/package-testing/test-packages-debian12.sh
@@ -0,0 +1 @@
+deb-common-test-packages.sh
\ No newline at end of file

commit 981de3b943cb6da04145fb9e7f1ffcba171c9300
Author: Tom Clegg <tom at curii.com>
Date:   Mon Nov 20 15:51:37 2023 -0500

    20846: Fix shell command in env var.
    
    With Ruby 3, something uses the MAKE var without the expected
    shell-eval, so the number-of-processors trick stopped working.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>
    
        make --jobs \$\(grep -c processor /proc/cpuinfo\) DESTDIR\=
        sitearchdir\=./.gem.20231120-15-fa6sx6 sitelibdir\=./.gem.20231120-15-fa6sx6
        clean
        make: invalid option -- 'c'
        Usage: make [options] [target] ...
        Options:
          -b, -m                      Ignored for compatibility.
          [...]

diff --git a/build/package-build-dockerfiles/ubuntu2204/Dockerfile b/build/package-build-dockerfiles/ubuntu2204/Dockerfile
index 7692f0fdb5..b6c0a14ea9 100644
--- a/build/package-build-dockerfiles/ubuntu2204/Dockerfile
+++ b/build/package-build-dockerfiles/ubuntu2204/Dockerfile
@@ -59,7 +59,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
 
 RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
 # Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/
-ENV MAKE "make --jobs $(grep -c processor /proc/cpuinfo)"
+ENV MAKE "make --jobs 8"
 
 # Preseed the go module cache and the ruby gems, using the currently checked
 # out branch of the source tree. This avoids potential compatibility issues

commit 58f3ef79e9c3b4fb45d5d516c519df16ef6b9147
Author: Tom Clegg <tom at curii.com>
Date:   Mon Nov 20 15:32:55 2023 -0500

    20846: Update fpm for Ruby 3 compatibility.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/build/package-build-dockerfiles/centos7/Dockerfile b/build/package-build-dockerfiles/centos7/Dockerfile
index f0ae5df3f7..8adbcfefe2 100644
--- a/build/package-build-dockerfiles/centos7/Dockerfile
+++ b/build/package-build-dockerfiles/centos7/Dockerfile
@@ -44,7 +44,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
     /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
-    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
 
 # Install Bash 4.4.12 // see https://dev.arvados.org/issues/15612
 RUN cd /usr/local/src \
diff --git a/build/package-build-dockerfiles/debian10/Dockerfile b/build/package-build-dockerfiles/debian10/Dockerfile
index bc4a8beca4..de4e90a0a8 100644
--- a/build/package-build-dockerfiles/debian10/Dockerfile
+++ b/build/package-build-dockerfiles/debian10/Dockerfile
@@ -49,7 +49,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
     /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
-    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
 
 RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
 # Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/
diff --git a/build/package-build-dockerfiles/debian11/Dockerfile b/build/package-build-dockerfiles/debian11/Dockerfile
index ddbe1114f3..b3aced99c5 100644
--- a/build/package-build-dockerfiles/debian11/Dockerfile
+++ b/build/package-build-dockerfiles/debian11/Dockerfile
@@ -55,7 +55,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
     /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
-    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
 
 RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
 # Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/
diff --git a/build/package-build-dockerfiles/rocky8/Dockerfile b/build/package-build-dockerfiles/rocky8/Dockerfile
index 138a10b15c..1b35f60a31 100644
--- a/build/package-build-dockerfiles/rocky8/Dockerfile
+++ b/build/package-build-dockerfiles/rocky8/Dockerfile
@@ -74,7 +74,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
     /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
-    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
 
 RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
 # Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/
diff --git a/build/package-build-dockerfiles/ubuntu1804/Dockerfile b/build/package-build-dockerfiles/ubuntu1804/Dockerfile
index 80a98aada8..f34b5c55ad 100644
--- a/build/package-build-dockerfiles/ubuntu1804/Dockerfile
+++ b/build/package-build-dockerfiles/ubuntu1804/Dockerfile
@@ -48,7 +48,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
     /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
-    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
 
 RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
 # Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/
diff --git a/build/package-build-dockerfiles/ubuntu2004/Dockerfile b/build/package-build-dockerfiles/ubuntu2004/Dockerfile
index da45077a42..97fd49130e 100644
--- a/build/package-build-dockerfiles/ubuntu2004/Dockerfile
+++ b/build/package-build-dockerfiles/ubuntu2004/Dockerfile
@@ -59,7 +59,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
     /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
-    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
 
 RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
 # Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/
diff --git a/build/package-build-dockerfiles/ubuntu2204/Dockerfile b/build/package-build-dockerfiles/ubuntu2204/Dockerfile
index 3f30ab079b..7692f0fdb5 100644
--- a/build/package-build-dockerfiles/ubuntu2204/Dockerfile
+++ b/build/package-build-dockerfiles/ubuntu2204/Dockerfile
@@ -55,7 +55,7 @@ RUN gpg --import --no-tty /tmp/mpapis.asc && \
     /usr/local/rvm/bin/rvm alias create default ruby-3.2.2 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
-    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
+    /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.15.1
 
 RUN /usr/local/rvm/bin/rvm-exec default bundle config --global jobs $(let a=$(grep -c processor /proc/cpuinfo )-1; echo $a)
 # Cf. https://build.betterup.com/one-weird-trick-that-will-speed-up-your-bundle-install/

commit 55c7210c26217c345a6a6758524a9f321ffa85f3
Author: Tom Clegg <tom at curii.com>
Date:   Mon Nov 20 15:31:35 2023 -0500

    20846: Use Ruby 3.2.2 for ubuntu2204 packages.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/build/package-build-dockerfiles/ubuntu2204/Dockerfile b/build/package-build-dockerfiles/ubuntu2204/Dockerfile
index f38949b6b2..3f30ab079b 100644
--- a/build/package-build-dockerfiles/ubuntu2204/Dockerfile
+++ b/build/package-build-dockerfiles/ubuntu2204/Dockerfile
@@ -51,10 +51,8 @@ ADD generated/pkuczynski.asc /tmp/
 RUN gpg --import --no-tty /tmp/mpapis.asc && \
     gpg --import --no-tty /tmp/pkuczynski.asc && \
     curl -L https://get.rvm.io | bash -s stable && \
-    # Use custom 1.1 openssl -- see: https://github.com/rvm/rvm/issues/5209#issuecomment-1114159447
-    /usr/local/rvm/bin/rvm pkg install openssl && \
-    /usr/local/rvm/bin/rvm install 2.7 --with-openssl-dir=/usr/local/rvm/usr -j $(grep -c processor /proc/cpuinfo) && \
-    /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
+    /usr/local/rvm/bin/rvm install 3.2.2 -j $(grep -c processor /proc/cpuinfo) && \
+    /usr/local/rvm/bin/rvm alias create default ruby-3.2.2 && \
     echo "gem: --no-document" >> ~/.gemrc && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19 && \
     /usr/local/rvm/bin/rvm-exec default gem install fpm --version 1.10.2
diff --git a/build/package-test-dockerfiles/ubuntu2204/Dockerfile b/build/package-test-dockerfiles/ubuntu2204/Dockerfile
index 29535b2148..4926a6573f 100644
--- a/build/package-test-dockerfiles/ubuntu2204/Dockerfile
+++ b/build/package-test-dockerfiles/ubuntu2204/Dockerfile
@@ -17,10 +17,8 @@ ADD generated/pkuczynski.asc /tmp/
 RUN gpg --import --no-tty /tmp/mpapis.asc && \
     gpg --import --no-tty /tmp/pkuczynski.asc && \
     curl -L https://get.rvm.io | bash -s stable && \
-    # Use custom 1.1 openssl -- see: https://github.com/rvm/rvm/issues/5209#issuecomment-1114159447
-    /usr/local/rvm/bin/rvm pkg install openssl && \
-    /usr/local/rvm/bin/rvm install 2.7 --with-openssl-dir=/usr/local/rvm/usr -j $(grep -c processor /proc/cpuinfo) && \
-    /usr/local/rvm/bin/rvm alias create default ruby-2.7 && \
+    /usr/local/rvm/bin/rvm install 3.2.2 -j $(grep -c processor /proc/cpuinfo) && \
+    /usr/local/rvm/bin/rvm alias create default ruby-3.2.2 && \
     /usr/local/rvm/bin/rvm-exec default gem install bundler --version 2.2.19
 
 # udev daemon can't start in a container, so don't try.

commit 28b6afc1e8ccf652c7a8fd43e22a8ac788febd85
Merge: 9dc967877c 0489e69dae
Author: Tom Clegg <tom at curii.com>
Date:   Mon Nov 20 15:29:05 2023 -0500

    20846: Merge branch '19213-ubuntu2204-support' into 20846-ubuntu2204
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --cc build/package-build-dockerfiles/Makefile
index 416e746d20,9b3f772de7..ac5242bc28
--- a/build/package-build-dockerfiles/Makefile
+++ b/build/package-build-dockerfiles/Makefile
@@@ -3,7 -3,7 +3,7 @@@
  # SPDX-License-Identifier: AGPL-3.0
  
  SHELL := '/bin/bash'
- all: centos7/generated debian10/generated debian11/generated rocky8/generated ubuntu1804/generated ubuntu2004/generated
 -all: centos7/generated debian10/generated debian11/generated ubuntu1804/generated ubuntu2004/generated ubuntu2204/generated
++all: centos7/generated debian10/generated debian11/generated rocky8/generated ubuntu1804/generated ubuntu2004/generated ubuntu2204/generated
  
  centos7/generated: common-generated-all
  	test -d centos7/generated || mkdir centos7/generated
diff --cc build/package-test-dockerfiles/Makefile
index 96a80055ac,2164c7246e..8b04fb1480
--- a/build/package-test-dockerfiles/Makefile
+++ b/build/package-test-dockerfiles/Makefile
@@@ -2,7 -2,7 +2,7 @@@
  #
  # SPDX-License-Identifier: AGPL-3.0
  
- all: centos7/generated debian10/generated debian11/generated rocky8/generated ubuntu1804/generated ubuntu2004/generated
 -all: centos7/generated debian10/generated debian11/generated ubuntu1804/generated ubuntu2004/generated ubuntu2204/generated
++all: centos7/generated debian10/generated debian11/generated rocky8/generated ubuntu1804/generated ubuntu2004/generated ubuntu2204/generated
  
  centos7/generated: common-generated-all
  	test -d centos7/generated || mkdir centos7/generated

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list