61 lines
1.4 KiB
Bash
Executable File
61 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# INSTALL SCRIPT
|
|
# The install script is required for all templates.
|
|
# It is used to install the service on the server.
|
|
# It is called with the path to the server specific env file as an argument.
|
|
|
|
|
|
check_prerequisites() {
|
|
# prerequisites:
|
|
# - bash
|
|
# - curl
|
|
# - wget
|
|
# - docker
|
|
|
|
PREREQUISITES=("bash" "curl" "wget" "jq" "docker")
|
|
|
|
# check if all prerequisites are installed
|
|
for prerequisite in "${PREREQUISITES[@]}"; do
|
|
if ! command -v "${prerequisite}" &> /dev/null; then
|
|
echo "Prerequisite: ${prerequisite} is not installed."
|
|
exit 1
|
|
fi
|
|
done
|
|
}
|
|
|
|
|
|
install_bb64() {
|
|
# install bb64 into EXECUTABLES
|
|
_check_required_env_vars EXECUTABLES
|
|
|
|
ARCH=$(uname -m)
|
|
if [[ "$ARCH" == "x86_64" ]]; then
|
|
BIN=bb64.amd64
|
|
elif [[ "$ARCH" == "aarch64" || "$ARCH" == "arm64" ]]; then
|
|
BIN=bb64.arm64
|
|
else
|
|
echo "Unsupported architecture: $ARCH" >&2
|
|
exit 1
|
|
fi
|
|
|
|
# create the executables directory if it doesn't exist
|
|
mkdir -p ${EXECUTABLES}
|
|
|
|
# download bb64
|
|
if ! curl -fsSL https://gitea.jde.nz/public/bb64/releases/download/latest/bb64.${ARCH} -o ${EXECUTABLES}/bb64; then
|
|
echo "Failed to download bb64 for architecture: $ARCH" >&2
|
|
exit 1
|
|
fi
|
|
chmod +x ${EXECUTABLES}/bb64
|
|
}
|
|
|
|
|
|
check_prerequisites
|
|
|
|
# install bb64
|
|
install_bb64
|
|
|
|
exit 0
|
|
|