#!/usr/bin/env sh set -eu if [ "$(id -u)" -ne 0 ]; then echo "Run as root: sudo sh /opt/importarr/repo-upgrade.sh" >&2 exit 1 fi ENV_FILE=${IMPORTARR_ENV_FILE:-/etc/importarr/importarr.env} if [ -f "$ENV_FILE" ]; then # shellcheck disable=SC1090 . "$ENV_FILE" fi PREFIX=${IMPORTARR_PREFIX:-/opt/importarr} REPO_DIR=${IMPORTARR_REPO_DIR:-$(pwd)} SERVICE=${IMPORTARR_SERVICE:-importarr.service} VENV=${IMPORTARR_VENV:-$PREFIX/venv} if [ ! -d "$REPO_DIR/.git" ]; then echo "Importarr repo not found at $REPO_DIR" >&2 exit 1 fi cd "$REPO_DIR" if [ -n "$(git status --porcelain)" ]; then echo "Refusing to upgrade: $REPO_DIR has uncommitted changes." >&2 git status --short >&2 exit 1 fi git fetch --prune origin git pull --ff-only "$VENV/bin/pip" install --upgrade "$REPO_DIR" install -m 0644 "$REPO_DIR/deploy/importarr.service" /etc/systemd/system/importarr.service systemctl daemon-reload GIT_SHA="$(git rev-parse --short=12 HEAD 2>/dev/null || printf development)" BUILD_DATE="$(date -u +%Y-%m-%dT%H:%M:%SZ)" cat > "$PREFIX/build.env" <