Compare commits
2 Commits
feat/kit-e
...
fix/hourly
| Author | SHA1 | Date | |
|---|---|---|---|
| bf29551a31 | |||
| a8c9c2252f |
@@ -18,12 +18,14 @@ spec:
|
|||||||
- sh
|
- sh
|
||||||
- -c
|
- -c
|
||||||
- |
|
- |
|
||||||
|
set -e
|
||||||
BACKUP_DIR=/data/backups
|
BACKUP_DIR=/data/backups
|
||||||
mkdir -p $BACKUP_DIR
|
mkdir -p $BACKUP_DIR
|
||||||
DATE=$(date +%Y%m%d_%H%M%S)
|
DATE=$(date +%Y%m%d_%H%M%S)
|
||||||
# Backup SQLite database using .backup for consistency
|
DST="$BACKUP_DIR/oil_calculator_${DATE}.db"
|
||||||
sqlite3 /data/oil_calculator.db ".backup '$BACKUP_DIR/oil_calculator_${DATE}.db'"
|
# Consistent snapshot via Python's sqlite3 .backup API (sqlite3 CLI not in image)
|
||||||
echo "Backup done: $BACKUP_DIR/oil_calculator_${DATE}.db ($(du -h $BACKUP_DIR/oil_calculator_${DATE}.db | cut -f1))"
|
python3 -c "import sqlite3; s=sqlite3.connect('/data/oil_calculator.db'); d=sqlite3.connect('$DST'); s.backup(d); d.close(); s.close()"
|
||||||
|
echo "Backup done: $DST ($(du -h $DST | cut -f1))"
|
||||||
# Keep last 48 backups (2 days of hourly)
|
# Keep last 48 backups (2 days of hourly)
|
||||||
ls -t $BACKUP_DIR/oil_calculator_*.db | tail -n +49 | xargs rm -f 2>/dev/null
|
ls -t $BACKUP_DIR/oil_calculator_*.db | tail -n +49 | xargs rm -f 2>/dev/null
|
||||||
echo "Backups retained: $(ls $BACKUP_DIR/oil_calculator_*.db | wc -l)"
|
echo "Backups retained: $(ls $BACKUP_DIR/oil_calculator_*.db | wc -l)"
|
||||||
|
|||||||
Reference in New Issue
Block a user