Files
sqlite-backup-s3/scripts/deleteold.sh
T
vasyansk 5646ecd6dd
docker-build / Build image (push) Failing after 6s
fix cron after first run + add hc
2026-09-01 11:00:36 +07:00

29 lines
811 B
Bash

#!/bin/bash
set -u
# Seconds since epoch for current time
DATE_NOW=$(date +%s)
DEST="${MINIO_PATH%/}/"
/scripts/minio_uploader.sh list "$DEST" | grep "sqlite_" | while read -r LINE
do
# `rclone ls` prints "<size> <path>"
BACKUP_FILENAME=$(echo "$LINE" | awk '{ print $2 }')
BACKUP_DATE=$(echo "$BACKUP_FILENAME" | awk 'BEGIN { FS = "[_-]" } ; { printf "%s-%s-%s",$2,$3,$4 }')
if [[ $BACKUP_DATE =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]
then
BACKUP_DATE_SECS=$(date -d "$BACKUP_DATE" +%s)
DAYS_DIFF=$(( (DATE_NOW - BACKUP_DATE_SECS) / (60*60*24) ))
if [ "$DAYS_DIFF" -gt "$DELETE_AFTER" ]
then
echo "File $BACKUP_FILENAME is $DAYS_DIFF days old (greater than $DELETE_AFTER days). Deleting it."
/scripts/minio_uploader.sh delete "${DEST}${BACKUP_FILENAME}"
fi
fi
done