Browse Source

Maintenance: Closes #3570 - Make deletion of old backup more precise.

svnr-dvnkln 3 years ago
parent
commit
837a9bd45c
2 changed files with 7 additions and 1 deletions
  1. 3 0
      .gitignore
  2. 4 1
      contrib/backup/functions

+ 3 - 0
.gitignore

@@ -13,6 +13,9 @@
 # database (copy from config/database/database.yml, or use `rails bs:init`)
 /config/database.yml
 
+# local backup config file
+/contrib/backup/config
+
 # Third-Party ------------------------------------------------------------------
 # The config files / dev tools listed below are optional
 # and may not be present on most users' machines

+ 4 - 1
contrib/backup/functions

@@ -16,7 +16,10 @@ function get_backup_date () {
 }
 
 function delete_old_backups () {
-  test -d ${BACKUP_DIR} && find ${BACKUP_DIR}/*_zammad_*.gz -type f -mtime +${HOLD_DAYS} -delete
+  # Use -mmin to clean up files as -mtime (days) is too unprecise.
+  #   However, add +60 minutes to allow for the backup script run time, so that
+  #   backups created a few minutes more than a day ago are not already purged.
+  test -d ${BACKUP_DIR} && find ${BACKUP_DIR}/*_zammad_*.gz -type f -mmin +$(((60*24)*${HOLD_DAYS}+60)) -delete
 }
 
 function get_db_credentials () {