mirror of
https://github.com/fradelg/docker-mysql-cron-backup.git
synced 2024-11-01 00:21:46 +01:00
Delete strategy moved to new file, as could custom
This commit is contained in:
parent
3011a8770a
commit
6b6656c540
3 changed files with 18 additions and 9 deletions
|
@ -32,10 +32,10 @@ ENV CRON_TIME="0 3 * * sun" \
|
|||
TIMEOUT="10s" \
|
||||
MYSQLDUMP_OPTS="--quick"
|
||||
|
||||
COPY ["run.sh", "backup.sh", "restore.sh", "/"]
|
||||
COPY ["run.sh", "backup.sh", "restore.sh", "/delete.sh", "/"]
|
||||
RUN mkdir /backup && \
|
||||
chmod 777 /backup && \
|
||||
chmod 755 /run.sh /backup.sh /restore.sh && \
|
||||
chmod 755 /run.sh /backup.sh /restore.sh /delete.sh && \
|
||||
touch /mysql_backup.log && \
|
||||
chmod 666 /mysql_backup.log
|
||||
|
||||
|
|
|
@ -46,13 +46,8 @@ do
|
|||
cd /backup || exit && ln -s "$BASENAME" "$(basename "$LATEST")"
|
||||
if [ -n "$MAX_BACKUPS" ]
|
||||
then
|
||||
while [ "$(find /backup -maxdepth 1 -name "*.$db.sql$EXT" -type f | wc -l)" -gt "$MAX_BACKUPS" ]
|
||||
do
|
||||
TARGET=$(find /backup -maxdepth 1 -name "*.$db.sql$EXT" -type f | sort | head -n 1)
|
||||
echo "==> Max number of ($MAX_BACKUPS) backups reached. Deleting ${TARGET} ..."
|
||||
rm -rf "${TARGET}"
|
||||
echo "==> Backup ${TARGET} deleted"
|
||||
done
|
||||
# Execute the delete script, delete older backup or other custom delete script
|
||||
/delete.sh $db $EXT
|
||||
fi
|
||||
else
|
||||
rm -rf "$FILENAME"
|
||||
|
|
14
delete.sh
Executable file
14
delete.sh
Executable file
|
@ -0,0 +1,14 @@
|
|||
#!/bin/bash
|
||||
|
||||
db=$1
|
||||
EXT=$2
|
||||
|
||||
# This file could be customized to create custom delete strategy
|
||||
|
||||
while [ "$(find /backup -maxdepth 1 -name "*.$db.sql$EXT" -type f | wc -l)" -gt "$MAX_BACKUPS" ]
|
||||
do
|
||||
TARGET=$(find /backup -maxdepth 1 -name "*.$db.sql$EXT" -type f | sort | head -n 1)
|
||||
echo "==> Max number of ($MAX_BACKUPS) backups reached. Deleting ${TARGET} ..."
|
||||
rm -rf "${TARGET}"
|
||||
echo "==> Backup ${TARGET} deleted"
|
||||
done
|
Loading…
Reference in a new issue