diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml new file mode 100644 index 0000000..afcce8a --- /dev/null +++ b/.gitea/workflows/ci.yml @@ -0,0 +1,18 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + +jobs: + typecheck: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + - run: corepack enable + - run: pnpm install --frozen-lockfile + - run: pnpm typecheck diff --git a/scripts/backup-db.sh b/scripts/backup-db.sh new file mode 100755 index 0000000..9a5d8f6 --- /dev/null +++ b/scripts/backup-db.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +# Daily pg_dump of the stocklist Postgres container, run by the +# stock-app-backup systemd timer. Keeps the last 14 days of backups. +set -euo pipefail + +BACKUP_DIR="$HOME/backups/stocklist-postgres" +mkdir -p "$BACKUP_DIR" + +TIMESTAMP=$(date +%Y%m%d-%H%M%S) +OUT_FILE="$BACKUP_DIR/stocklist-$TIMESTAMP.sql.gz" + +docker exec stocklist-postgres pg_dump -U stocklist stocklist | gzip > "$OUT_FILE" + +find "$BACKUP_DIR" -name '*.sql.gz' -mtime +14 -delete + +echo "Backed up stocklist database to $OUT_FILE"