Commit 55ffea16 by Tatsuhiko Miyagawa Committed by Mislav Marohnić

Skip mirror if the URL is cache.ruby-lang.org (Fastly) and there's no custom mirror set

parent 0df17d18
......@@ -327,7 +327,9 @@ fetch_tarball() {
package_url="${package_url%%#*}"
if [ -n "$RUBY_BUILD_MIRROR_URL" ]; then
mirror_url="${RUBY_BUILD_MIRROR_URL}/$checksum"
if [[ -z "$RUBY_BUILD_DEFAULT_MIRROR" || $package_url != */cache.ruby-lang.org/* ]]; then
mirror_url="${RUBY_BUILD_MIRROR_URL}/$checksum"
fi
fi
fi
......@@ -1190,8 +1192,10 @@ fi
if [ -z "$RUBY_BUILD_MIRROR_URL" ]; then
RUBY_BUILD_MIRROR_URL="https://dqw8nmjcqpjn7.cloudfront.net"
RUBY_BUILD_DEFAULT_MIRROR=1
else
RUBY_BUILD_MIRROR_URL="${RUBY_BUILD_MIRROR_URL%/}"
RUBY_BUILD_DEFAULT_MIRROR=
fi
if [ -n "$RUBY_BUILD_SKIP_MIRROR" ]; then
......
......@@ -101,3 +101,21 @@ export RUBY_BUILD_MIRROR_URL=http://mirror.example.com
unstub curl
unstub shasum
}
@test "package URL with ruby-lang CDN with default mirror URL will bypasses mirror" {
export RUBY_BUILD_MIRROR_URL=
local checksum="ba988b1bb4250dee0b9dd3d4d722f9c64b2bacfc805d1b6eba7426bda72dd3c5"
stub shasum true "echo $checksum"
stub curl "-q -o * -*S* https://cache.ruby-lang.org/* : cp $FIXTURE_ROOT/\${5##*/} \$3"
run_inline_definition <<DEF
install_package "package-1.0.0" "https://cache.ruby-lang.org/packages/package-1.0.0.tar.gz#ba988b1bb4250dee0b9dd3d4d722f9c64b2bacfc805d1b6eba7426bda72dd3c5" copy
DEF
assert_success
assert [ -x "${INSTALL_ROOT}/bin/package" ]
unstub curl
unstub shasum
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment