Add a way to pin RubyGems and pin to 3.2

This commit is contained in:
Lin Jen-Shin 2022-06-21 22:59:02 +08:00
parent 44254ea95d
commit a00159f06f
5 changed files with 25 additions and 2 deletions

View file

@ -14,6 +14,7 @@ JEMALLOC_DOWNLOAD_SHA256="2db82d1e7119df3e71b7640219b6dfe84789bc0537983c3b7ac4f7
JEMALLOC_DOWNLOAD_URL="https://github.com/jemalloc/jemalloc/releases/download/${JEMALLOC_VERSION}/jemalloc-${JEMALLOC_VERSION}.tar.bz2"
BUNDLER_VERSION=${3:-""}
RUBYGEMS_VERSION=${4:-""}
# Install needed packages
apt-get update
@ -65,6 +66,9 @@ make install -j $(nproc)
# Install specific version of bundler if provided
if [[ "$BUNDLER_VERSION" != "" ]]; then gem install bundler -v $BUNDLER_VERSION; fi
# Install specific version of RubyGems if provided
if [[ "$RUBYGEMS_VERSION" != "" ]]; then gem update --system $RUBYGEMS_VERSION; fi
# Cleanup
cd /
rm -rf /usr/src/ruby /usr/src/jemalloc

View file

@ -243,6 +243,20 @@ function print_bundler_args() {
printf -- "--build-arg BUNDLER_VERSION=%s " "$BUNDLER_VERSION"
}
function print_rubygems_args() {
case "$1" in
3.1)
RUBYGEMS_VERSION=3.1.6
;;
3.2)
RUBYGEMS_VERSION=3.2.33
;;
*) echo "Unknown rubygems version $1"; exit 1;
esac
printf -- "--build-arg RUBYGEMS_VERSION=%s " "$RUBYGEMS_VERSION"
}
function print_gcloud_args() {
case "$1" in
383)
@ -302,6 +316,7 @@ function parse_arguments() {
DEBIAN) CUSTOM_IMAGE_VERSION=$version ;;
RUBY) print_ruby_args $version ;;
BUNDLER) print_bundler_args $version ;;
RUBYGEMS) print_rubygems_args $version ;;
GOLANG) print_golang_args $version ;;
CHROME) print_chrome_args $version ;;
DOCKER) print_docker_args $version ;;

View file

@ -1,5 +1,5 @@
PATH_TOOLS=(DEBIAN RUBY GOLANG NODE POSTGRESQL)
TAG_TOOLS=(BUNDLER GIT LFS CHROME YARN GRAPHICSMAGICK PGBOUNCER BAZELISK DOCKER BUILDX GCLOUD KUBECTL)
TAG_TOOLS=(BUNDLER RUBYGEMS GIT LFS CHROME YARN GRAPHICSMAGICK PGBOUNCER BAZELISK DOCKER BUILDX GCLOUD KUBECTL)
function get_image_path() {
local path