Apply thread allocations patch to Ruby 2.7

This makes us to compile Ruby 2.7 manually
and apply relevant patch.
This commit is contained in:
Kamil Trzciński 2021-01-22 12:02:46 +01:00
parent 28db6ad94c
commit d25cb10067
4 changed files with 78 additions and 26 deletions

View file

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
set -e
IFS=$'\n\t'
@ -228,29 +228,38 @@ function print_pgbouncer_args() {
printf -- "--build-arg PGBOUNCER_DOWNLOAD_SHA256=%s " "$PGBOUNCER_DOWNLOAD_SHA256"
}
function parse_arguments() {
read base
read base_version
function print_ruby_args() {
case "$1" in
2.6.*)
CUSTOM_IMAGE_NAME=debian
CUSTOM_IMAGE_VERSION=stretch
RUBY_VERSION="2.6.6"
RUBY_DOWNLOAD_SHA256="5db187882b7ac34016cd48d7032e197f07e4968f406b0690e20193b9b424841f"
;;
# Lock Ruby to Debian version to pin OpenSSL version
case "$base" in
ruby)
case "$base_version" in
2.6.*)
base_version="$base_version-stretch"
;;
*)
base_version="$base_version-buster"
;;
esac
2.7.*)
CUSTOM_IMAGE_NAME=debian
CUSTOM_IMAGE_VERSION=buster
RUBY_VERSION="2.7.2"
RUBY_DOWNLOAD_SHA256="1b95ab193cc8f5b5e59d2686cb3d5dcf1ddf2a86cb6950e0b4bdaae5040ec0d6"
;;
*) echo "Unknown ruby version $1"; exit 1;
esac
printf -- "-f Dockerfile.custom " "$base"
printf -- "--build-arg CUSTOM_IMAGE_NAME=%s " "$base"
printf -- "--build-arg CUSTOM_IMAGE_VERSION=%s " "$base_version"
printf -- "--build-arg CUSTOM_IMAGE_NAME=%s " "$CUSTOM_IMAGE_NAME"
printf -- "--build-arg CUSTOM_IMAGE_VERSION=%s " "$CUSTOM_IMAGE_VERSION"
printf -- "--build-arg RUBY_VERSION=%s " "$RUBY_VERSION"
printf -- "--build-arg RUBY_DOWNLOAD_SHA256=%s " "$RUBY_DOWNLOAD_SHA256"
}
function parse_arguments() {
printf -- "-f Dockerfile.custom "
while read image; do
read version
case "$image" in
ruby) print_ruby_args $version ;;
golang) print_golang_args $version ;;
chrome) print_chrome_args $version ;;
docker) print_docker_args $version ;;