1
0
mirror of https://github.com/xzeldon/vwdump.git synced 2025-06-27 23:48:15 +03:00

Quality of life improvements (#17)

- Removed quotation marks with mounting volumes in docker-compose section.
- Replaced INFO prefix with each echo with a timestamp.
  - Subsequently, echoes that have a timestamp at the end have been adjusted to remove them.
- When deleting, it first checks if there are files to delete.
  - An appropriate echo will be shown in both circumstances.
This commit is contained in:
jmqm 2021-07-17 14:39:17 -05:00 committed by GitHub
parent 0fb7abc0c1
commit 8573420236
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 22 additions and 13 deletions

View File

@ -26,10 +26,10 @@ services:
image: jmqm/vaultwarden_backup:latest
container_name: vaultwarden_backup
volumes:
- "/vaultwarden_data_directory:/data:ro" # Read-only
- "/backup_directory:/backups"
- /vaultwarden_data_directory:/data:ro # Read-only
- /backup_directory:/backups
- "/etc/localtime:/etc/localtime:ro" # Container uses date from host.
- /etc/localtime:/etc/localtime:ro # Container uses date from host.
environment:
- DELETE_AFTER=30
- CRON_TIME=* */24 * * * # Runs at 12:00 AM.

View File

@ -13,4 +13,4 @@ BACKUP_SENDS=sends # directory
# Create an archive of the files and directories.
cd /data && tar -Jcf $BACKUP_LOCATION $BACKUP_DB $BACKUP_RSA $BACKUP_CONFIG $BACKUP_ATTACHMENTS $BACKUP_SENDS 2>/dev/null && cd /
echo "[INFO] Created a new backup on $(date +"%F %r")."
echo "[$(date +"%F %r")] Created a new backup."

View File

@ -6,8 +6,17 @@ sleep 1m
# Go to the backups directory.
cd /backups
# Delete tar.xz archives older than x days.
find . -iname "*.tar.xz" -type f -mtime +$DELETE_AFTER -exec rm -f {} \;
# Find all tar.xz archives older than x days and store them in a variable.
TO_DELETE=$(find . -iname "*.tar.xz" -type f -mtime +$DELETE_AFTER)
# Echo that script ran.
echo "[INFO] Deleted files older than $DELETE_AFTER days."
# Check if TO_DELETE is empty.
if [ ! -z "$TO_DELETE" ]; then
# Delete tar.xz archives older than x days.
find . -iname "*.tar.xz" -type f -mtime +$DELETE_AFTER -exec rm -f {} \;
# Echo that archives were deleted.
echo "[$(date +"%F %r")] Deleted archives older than $DELETE_AFTER days."
else
# Echo that there are no archives to delete.
echo "[$(date +"%F %r")] No archives older than $DELETE_AFTER days to delete."
fi

View File

@ -6,7 +6,7 @@ LOGS_FILE="/app/log/backup.log"
# If passed "manual", run backup script once ($1 = First argument passed).
if [ "$1" = "manual" ]; then
echo "[INFO] Running one-time, started at $(date +"%F %r")."
echo "[$(date +"%F %r")] Running one-time."
$BACKUP_CMD
exit 0
fi
@ -15,16 +15,16 @@ fi
if [ "$(id -u)" -eq 0 ]; then
# Clear cron jobs.
echo "" | crontab -
echo "[INFO] Cron jobs cleared."
echo "[$(date +"%F %r")] Cron jobs cleared."
# Add backup script to cron jobs.
(crontab -l 2>/dev/null; echo "$CRON_TIME $BACKUP_CMD >> $LOGS_FILE 2>&1") | crontab -
echo "[INFO] Added backup script to cron jobs."
echo "[$(date +"%F %r")] Added backup script to cron jobs."
# Add delete script to cron jobs if DELETE_AFTER is not null and is greater than 0.
if [ -n "$DELETE_AFTER" ] && [ "$DELETE_AFTER" -gt 0 ]; then
(crontab -l 2>/dev/null; echo "$CRON_TIME $DELETE_CMD >> $LOGS_FILE 2>&1") | crontab -
echo "[INFO] Added delete script to cron jobs."
echo "[$(date +"%F %r")] Added delete script to cron jobs."
fi
fi
@ -39,5 +39,5 @@ if [ "$(id -u)" -eq 0 ]; then
exec su-exec app:app "$0" "$@"
fi
echo "[INFO] Running automatically (${CRON_TIME}), started at $(date +"%F %r")." > "$LOGS_FILE"
echo "[$(date +"%F %r")] Running automatically (${CRON_TIME})." > "$LOGS_FILE"
tail -F "$LOGS_FILE" # Keeps terminal open and writes logs.