Files
2026-10-04 20:12:06 +08:00

15 lines
623 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
if [[ $EUID != 0 ]]; then exec sudo -- bash "$0" "$@"; fi
root=/var/lib/framely
previous=$(cat "$root/previous-release")
[[ $previous == releases/* && $previous != *..* && -d $root/$previous ]] || { echo 'No previous release.' >&2; exit 1; }
current=$(readlink "$root/current")
systemctl stop framely-session.service framely.service
ln -s "$previous" "$root/current.rollback"
mv -Tf "$root/current.rollback" "$root/current"
printf '%s\n' "$current" > "$root/previous-release"
systemctl start framely.service
systemctl start --no-block framely-session.service
echo "Restored $previous"