Skip to content

Commit f1c547e

Browse files
authored
Merge pull request #37 from Shopify/rwstauner/truffleruby-ea
Update truffleruby gftc definitions
2 parents 7845cb1 + 04a1a36 commit f1c547e

File tree

2 files changed

+11
-115
lines changed

2 files changed

+11
-115
lines changed

rubies/truffleruby+graalvm-gftc-dev

Lines changed: 0 additions & 65 deletions
This file was deleted.

rubies/truffleruby-gftc-dev

Lines changed: 11 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,65 +1,26 @@
1-
http_get_stdout () {
2-
local f="$(mktemp "ruby-build.http.XXXXXX")"
3-
http get "$1" "$f"
4-
cat "$f"
5-
rm -f "$f"
6-
}
7-
8-
sort_release_urls () {
9-
# With release names like /^(jdk-)?24.1.0-dev-20240207_2228$/
10-
# strip everything up to the last dash so we can use the date as the sort field.
11-
sed 's/\(.\{1,\}-\([0-9_]\{1,\}\)\)$/\2;\1/' | sort -rn | sed 's/.\{1,\};//'
12-
}
13-
14-
find_asset_url () {
15-
local repo="$1" filename="$2"
16-
local releases_prefix="https://github.com/${repo}/releases"
17-
local assets_urls assets_url path
18-
local sort_release_urls=sort_release_urls
19-
type -t $sort_release_urls >/dev/null || sort_release_urls=cat
20-
21-
# The releases page hides assets behind an "expanded_assets" url
22-
# so we gather those, sort them according to "sort_release_urls" and store
23-
# them in an array to loop over next.
24-
IFS=$'\n' read -d '' -r -a assets_urls < <(http_get_stdout "$releases_prefix" | grep -oE "$releases_prefix/expanded_assets/[^\"]+" | $sort_release_urls)
25-
26-
# For each release look in the assets output for a download link to the specified filename.
27-
for assets_url in "${assets_urls[@]}"; do
28-
path="$(http_get_stdout "$assets_url" | grep -m1 -oE "/$repo/releases/download/[^/]+/$filename")"
29-
if [[ -n "$path" ]]; then
30-
echo "https://github.com/$path"
31-
return 0
32-
fi
33-
done
34-
35-
echo "Failed to find $repo release containing $filename" >&2
36-
return 1
37-
}
38-
39-
truffleruby_asset_url () {
40-
find_asset_url "graalvm/oracle-graalvm-dev-builds" "$1"
41-
}
42-
431
platform="$(uname -s)-$(uname -m)"
442
case $platform in
453
Linux-x86_64)
46-
truffleruby_url="$(truffleruby_asset_url "truffleruby-dev-linux-amd64.tar.gz")" || return $?
47-
install_package "truffleruby-gftc-dev" "$truffleruby_url" truffleruby
4+
url="https://raw.githubusercontent.com/graalvm/graal-languages-ea-builds/main/truffleruby/versions/latest-native-linux-amd64.url"
485
;;
496
Linux-aarch64)
50-
truffleruby_url="$(truffleruby_asset_url "truffleruby-dev-linux-aarch64.tar.gz")" || return $?
51-
install_package "truffleruby-gftc-dev" "$truffleruby_url" truffleruby
7+
url="https://raw.githubusercontent.com/graalvm/graal-languages-ea-builds/main/truffleruby/versions/latest-native-linux-aarch64.url"
528
;;
539
Darwin-x86_64)
54-
truffleruby_url="$(truffleruby_asset_url "truffleruby-dev-macos-amd64.tar.gz")" || return $?
55-
install_package "truffleruby-gftc-dev" "$truffleruby_url" truffleruby
10+
url="https://raw.githubusercontent.com/graalvm/graal-languages-ea-builds/main/truffleruby/versions/latest-native-darwin-amd64.url"
5611
;;
5712
Darwin-arm64)
58-
truffleruby_url="$(truffleruby_asset_url "truffleruby-dev-macos-aarch64.tar.gz")" || return $?
59-
install_package "truffleruby-gftc-dev" "$truffleruby_url" truffleruby
13+
url="https://raw.githubusercontent.com/graalvm/graal-languages-ea-builds/main/truffleruby/versions/latest-native-darwin-aarch64.url"
6014
;;
6115
*)
6216
colorize 1 "Unsupported platform: $platform"
6317
return 1
6418
;;
6519
esac
20+
21+
pushd "$BUILD_PATH" >/dev/null
22+
http get $url url.txt
23+
url=$(<url.txt)
24+
popd
25+
26+
install_package "truffleruby+graalvm-dev" "$url" truffleruby

0 commit comments

Comments
 (0)