29 lines
875 B
Bash
29 lines
875 B
Bash
#!/usr/bin/env bash
|
|
# Apply Kontra Nix additions on .13 and rebuild. Run as: sudo bash deploy-apply.sh --from /var/www/kontra_day/deploy
|
|
set -euo pipefail
|
|
|
|
DEPLOY_DIR="${1:-/var/www/kontra_day/deploy}"
|
|
CFG=/etc/nixos/configuration.nix
|
|
BAK=$CFG.bak-kontra-$(date +%Y%m%d-%H%M%S)
|
|
|
|
echo "== backup configuration.nix -> $BAK"
|
|
cp -a "$CFG" "$BAK"
|
|
|
|
echo "== patch configuration.nix"
|
|
python3 "$DEPLOY_DIR/patch-nix.py" "$CFG"
|
|
|
|
echo "== Nix syntax check"
|
|
if ! nix-instantiate --parse "$CFG" >/dev/null; then
|
|
echo "!! Nix syntax FAILED — restoring backup"
|
|
cp -a "$BAK" "$CFG"
|
|
exit 1
|
|
fi
|
|
echo "OK"
|
|
|
|
echo "== nixos-rebuild switch (may take minutes)"
|
|
nixos-rebuild switch --show-trace 2>&1 | tail -40
|
|
|
|
echo "== status"
|
|
systemctl --no-pager --full status kontra.service 2>/dev/null | head -12
|
|
systemctl --no-pager list-timers kontra-pull.timer 2>/dev/null | head -4
|
|
echo "ALL DONE" |