Files
radicle-explorer/scripts/install-binaries
T

56 lines
1.8 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
REPO_ROOT=$(git rev-parse --show-toplevel 2>/dev/null || echo "$PWD")
RELEASE=$(cat "$REPO_ROOT/tests/support/heartwood-release")
HTTPD_RELEASE=$(cat "$REPO_ROOT/tests/support/radicle-httpd-release")
BINARY_PATH=$REPO_ROOT/tests/tmp/bin
OS=$(uname)
install() {
if test -d "$BINARY_PATH/$1/$2"; then
echo ✅ "Folder $BINARY_PATH/$1/$2 exists already skipping download."
else
mkdir -p "$BINARY_PATH/$1/$2"
case "$OS" in
Darwin)
echo Downloading "$1" v"$2" from "https://files.radicle.xyz/releases$3/$2/radicle-aarch64-apple-darwin.tar.xz into /tests/tmp/bin/$1/$2"
curl --fail -s "https://files.radicle.xyz/releases$3/$2/radicle-aarch64-apple-darwin.tar.xz" | tar -xJ --strip-components=2 -C "$BINARY_PATH/$1/$2" "radicle-$2-aarch64-apple-darwin/bin/" || (echo "Download failed" && exit 1)
;;
Linux)
echo Downloading "$1" v"$2" from "https://files.radicle.xyz/releases$3/$2/radicle-x86_64-unknown-linux-musl.tar.xz into /tests/tmp/bin/$1/$2"
curl --fail -s "https://files.radicle.xyz/releases$3/$2/radicle-x86_64-unknown-linux-musl.tar.xz" | tar -xJ --strip-components=2 -C "$BINARY_PATH/$1/$2" "radicle-$2-x86_64-unknown-linux-musl/bin/" || (echo "Download failed" && exit 1)
;;
*)
echo "There are no precompiled binaries for your OS: $OS, compile $1 manually and make sure it's in PATH." && exit 1
;;
esac
fi
}
show_usage() {
echo
echo "Installs binaries required for running e2e test suite."
echo
echo "USAGE:"
echo " install-binaries [-h]"
echo
echo "OPTIONS:"
echo " -h --help Print this Help."
echo
}
while [ $# -ne 0 ]; do
case "$1" in
--help | -h)
show_usage
exit
;;
esac
done
install "heartwood" "$RELEASE" ""
install "httpd" "$HTTPD_RELEASE" "/radicle-httpd"
echo