From 8290360abd998b58fb04c45ee7abf26fa2da26c4 Mon Sep 17 00:00:00 2001 From: arsam Date: Fri, 18 Sep 2026 23:23:48 +0330 Subject: [PATCH] Import source: app/scripts/systemd-backup.sh Import the existing local project snapshot. This commit organizes existing files; it does not represent newly developed functionality. --- app/scripts/systemd-backup.sh | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 app/scripts/systemd-backup.sh diff --git a/app/scripts/systemd-backup.sh b/app/scripts/systemd-backup.sh new file mode 100644 index 0000000..3634c9c --- /dev/null +++ b/app/scripts/systemd-backup.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +set -euo pipefail + +BACKUP_DIR="${BACKUP_DIR:-/var/backups/teknav}" +RETENTION_DAYS="${BACKUP_RETENTION_DAYS:-14}" +STAMP="$(date -u +%Y%m%d-%H%M%S)" +OUT="${BACKUP_DIR}/teknav-${STAMP}.sql.gz" + +mkdir -p "${BACKUP_DIR}" +chmod 750 "${BACKUP_DIR}" + +pg_dump "${DATABASE_URL}" | gzip -9 > "${OUT}" +chmod 640 "${OUT}" + +find "${BACKUP_DIR}" -type f -name 'teknav-*.sql.gz' -mtime "+${RETENTION_DAYS}" -delete +echo "[teknav-backup] wrote ${OUT}"