From 450e2cd879d2e819f084dd3940cf19a9521c2611 Mon Sep 17 00:00:00 2001 From: Achilleas Pipinellis Date: Tue, 23 May 2017 10:20:54 +0200 Subject: Add missing regex to backup manager https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10901/diffs introduced a new naming scheme for backups, but the code which cleans up old backups wasn't updated accordingly. In order to maintain backward compatibility, we need to account for 3 naming schemes. --- lib/backup/manager.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/backup/manager.rb b/lib/backup/manager.rb index 330cd963626..e8e0e2f07d4 100644 --- a/lib/backup/manager.rb +++ b/lib/backup/manager.rb @@ -84,7 +84,12 @@ module Backup Dir.chdir(backup_path) do backup_file_list.each do |file| - next unless file =~ /(\d+)(?:_\d{4}_\d{2}_\d{2})?_gitlab_backup\.tar/ + + # For backward compatibility, there are 3 names the backups can have: + # - 1495527122_gitlab_backup.tar + # - 1495527068_2017_05_23_gitlab_backup.tar + # - 1495527097_2017_05_23_9.3.0-pre_gitlab_backup.tar + next unless file =~ /(\d+)(?:_\d{4}_\d{2}_\d{2}(_\d+\.\d+\.\d+.*)?)?_gitlab_backup\.tar$/ timestamp = $1.to_i -- cgit v1.2.1