Přidán skript export-daily.sh

This commit is contained in:
2026-01-05 17:20:34 +01:00
parent 53583b7fb5
commit e574b298b5

27
export-daily.sh Normal file
View File

@@ -0,0 +1,27 @@
#!/bin/bash
DATE=$(date +%Y-%m-%d)
LOG="/app/data/logs/export.log"
mkdir -p /app/data/logs /app/data/archive
echo "[$(date)] Starting export..." >>"$LOG"
PGPASSWORD=${CLOUDRON_POSTGRESQL_PASSWORD} psql \
-h ${CLOUDRON_POSTGRESQL_HOST} \
-p ${CLOUDRON_POSTGRESQL_PORT} \
-U ${CLOUDRON_POSTGRESQL_USERNAME} \
-d ${CLOUDRON_POSTGRESQL_DATABASE} \
-c "COPY (
SELECT id, created_at, text, uri, url, account_id
FROM statuses
WHERE local = true
AND deleted_at IS NULL
AND created_at > NOW() - INTERVAL '2 days'
ORDER BY created_at DESC
) TO STDOUT WITH CSV HEADER" >/app/data/posts-latest.csv
cp /app/data/posts-latest.csv "/app/data/archive/posts-$DATE.csv"
find /app/data/archive -name "posts-*.csv" -mtime +7 -delete
LINES=$(wc -l </app/data/posts-latest.csv)
echo "[$(date)] Exported $LINES posts" >>"$LOG"