diff --git a/.circleci/config.yml b/.circleci/config.yml index 3729cb80..142bd0cb 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -66,6 +66,7 @@ jobs: working_directory: ~/repo environment: LEIN_ROOT: "true" + GRAALVM_VERSION: "21.2.0" GRAALVM_HOME: /root/repo/graalvm-ce-java11-21.2.0 BABASHKA_PLATFORM: linux # used in release script BABASHKA_TEST_ENV: native @@ -127,6 +128,7 @@ jobs: working_directory: ~/repo environment: LEIN_ROOT: "true" + GRAALVM_VERSION: "21.2.0" GRAALVM_HOME: /root/repo/graalvm-ce-java11-21.2.0 BABASHKA_PLATFORM: linux # used in release script BABASHKA_TEST_ENV: native @@ -203,6 +205,7 @@ jobs: working_directory: ~/repo environment: LEIN_ROOT: "true" + GRAALVM_VERSION: "21.2.0" GRAALVM_HOME: /root/repo/graalvm-ce-java11-21.2.0 BABASHKA_PLATFORM: linux # used in release script BABASHKA_ARCH: aarch64 @@ -274,6 +277,7 @@ jobs: working_directory: ~/repo environment: LEIN_ROOT: "true" + GRAALVM_VERSION: "21.2.0" GRAALVM_HOME: /root/repo/graalvm-ce-java11-21.2.0 BABASHKA_PLATFORM: linux # used in release script BABASHKA_ARCH: aarch64 @@ -344,6 +348,7 @@ jobs: xcode: "12.0.0" environment: MACOSX_DEPLOYMENT_TARGET: 10.13 # 10.12 is EOL + GRAALVM_VERSION: "21.2.0" GRAALVM_HOME: /Users/distiller/graalvm-ce-java11-21.2.0/Contents/Home BABASHKA_PLATFORM: macos # used in release script BABASHKA_TEST_ENV: native @@ -371,11 +376,7 @@ jobs: name: Download GraalVM command: | cd ~ - ls -la - if ! [ -d graalvm-ce-java11-21.2.0 ]; then - curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-darwin-amd64-21.2.0.tar.gz - tar xzf graalvm-ce-java11-darwin-amd64-21.2.0.tar.gz - fi + script/download-graalvm - run: name: Build binary command: | diff --git a/script/download-graalvm b/script/download-graalvm index 290167c4..0443e4b0 100755 --- a/script/download-graalvm +++ b/script/download-graalvm @@ -1,9 +1,37 @@ #!/usr/bin/env bash +set -euo pipefail + GRAALVM_VERSION="${GRAALVM_VERSION:-21.2.0}" +case "$BABASHKA_PLATFORM" in + macos) + GRAALVM_PLATFORM="darwin" + ;; + linux) + GRAALVM_PLATFORM="linux" + ;; + *) + echo "Invalid platform $BABASHKA_PLATFORM!" >&2 + exit 1 + ;; +esac + +case "$BABASHKA_ARCH" in + amd64) + GRAALVM_ARCH="amd64" + ;; + aarch64) + GRAALVM_ARCH="aarch64" + ;; + *) + echo "Invalid arch $BABASHKA_ARCH!" >&2 + exit 1 + ;; +esac + if ! [ -d "graalvm-ce-java11-$GRAALVM_VERSION" ]; then - echo "Downloading GraalVM $GRAALVM_VERSION on '$PWD'..." - curl -O -sL "https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-$GRAALVM_VERSION/graalvm-ce-java11-linux-amd64-$GRAALVM_VERSION.tar.gz" - tar xzf graalvm-ce-java11-linux-amd64-$GRAALVM_VERSION.tar.gz + echo "Downloading GraalVM $GRAALVM_PLATFORM-$GRAALVM_ARCH-$GRAALVM_VERSION on '$PWD'..." + curl -O -sL "https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-$GRAALVM_VERSION/graalvm-ce-java11-$GRAALVM_PLATFORM-$GRAALVM_ARCH-$GRAALVM_VERSION.tar.gz" + tar xzf graalvm-ce-java11-$GRAALVM_PLATFORM-$GRAALVM_ARCH-$GRAALVM_VERSION.tar.gz fi