graalvm-ce: check if version is latest on update.sh

This commit is contained in:
Thiago Kenji Okada 2021-10-19 19:45:19 -03:00 committed by Profpatsch
parent 8abb6e72c9
commit b5560cfc5e

View file

@ -9,19 +9,32 @@ info() { echo "[INFO] $*"; }
echo_file() { echo "$@" >> hashes.nix; }
verlte() {
[ "$1" = "$(echo -e "$1\n$2" | sort -V | head -n1)" ]
}
readonly old_version="$(cat version)"
if [[ -z "${1:-}" ]]; then
readonly gh_version="$(curl -s https://api.github.com/repos/graalvm/graalvm-ce-builds/releases/latest | jq --raw-output .tag_name)"
readonly version="${gh_version//vm-/}"
readonly gh_version="$(curl -s https://api.github.com/repos/graalvm/graalvm-ce-builds/releases/latest | jq --raw-output .tag_name)"
readonly new_version="${gh_version//vm-/}"
else
readonly version="$1"
readonly new_version="$1"
fi
if verlte "$new_version" "$old_version"; then
info "graalvm-ce $old_version is up-to-date. Exiting..."
exit 0
else
info "graalvm-ce $old_version is out-of-date. Updating..."
fi
readonly urls=(
"https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${version}/graalvm-ce-java@platform@-${version}.tar.gz"
"https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${version}/native-image-installable-svm-java@platform@-${version}.jar"
"https://github.com/oracle/truffleruby/releases/download/vm-${version}/ruby-installable-svm-java@platform@-${version}.jar"
"https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${version}/wasm-installable-svm-java@platform@-${version}.jar"
"https://github.com/graalvm/graalpython/releases/download/vm-${version}/python-installable-svm-java@platform@-${version}.jar"
"https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${new_version}/graalvm-ce-java@platform@-${new_version}.tar.gz"
"https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${new_version}/native-image-installable-svm-java@platform@-${new_version}.jar"
"https://github.com/oracle/truffleruby/releases/download/vm-${new_version}/ruby-installable-svm-java@platform@-${new_version}.jar"
"https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${new_version}/wasm-installable-svm-java@platform@-${new_version}.jar"
"https://github.com/graalvm/graalpython/releases/download/vm-${new_version}/python-installable-svm-java@platform@-${new_version}.jar"
)
readonly platforms=(
@ -32,7 +45,7 @@ readonly platforms=(
info "Deleting old hashes.nix file..."
rm -f hashes.nix
info "Generating hashes.nix file for 'graalvm-ce' v$version. This will take a while..."
info "Generating hashes.nix file for 'graalvm-ce' $new_version. This will take a while..."
echo_file "# Generated by $0 script"
echo_file "{ javaVersionPlatform, ... }:"
@ -54,6 +67,6 @@ done
echo_file "]"
info "Updating 'version' file..."
echo "$version" > version
echo "$new_version" > version
info "Done!"