#!/usr/bin/env bash set -euo pipefail if [[ "${EUID}" -ne 0 ]]; then echo "ananke-self-update.sh must run as root" >&2 exit 1 fi REPO_URL="${ANANKE_REPO_URL:-ssh://git@scm.bstein.dev:2242/bstein/ananke.git}" BRANCH="${ANANKE_REPO_BRANCH:-main}" REPO_DIR="${ANANKE_REPO_DIR:-/opt/ananke}" mkdir -p "$(dirname "${REPO_DIR}")" if [[ ! -d "${REPO_DIR}/.git" ]]; then echo "[self-update] cloning ${REPO_URL} into ${REPO_DIR}" git clone "${REPO_URL}" "${REPO_DIR}" fi cd "${REPO_DIR}" echo "[self-update] syncing ${BRANCH}" git fetch origin --prune git checkout "${BRANCH}" git reset --hard "origin/${BRANCH}" echo "[self-update] running installer" "${REPO_DIR}/scripts/install.sh"