From 12bd78103153fce845eed1566918083b52e814df Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Mon, 23 May 2016 10:17:07 -0500 Subject: Fix backups if registry is disabled --- lib/backup/manager.rb | 13 +++++++++++-- lib/tasks/gitlab/backup.rake | 20 ++++++++++++++------ 2 files changed, 25 insertions(+), 8 deletions(-) (limited to 'lib') diff --git a/lib/backup/manager.rb b/lib/backup/manager.rb index 7d0608f09da..5a727f5be5b 100644 --- a/lib/backup/manager.rb +++ b/lib/backup/manager.rb @@ -1,5 +1,8 @@ module Backup class Manager + ARCHIVES_TO_BACKUP = %w{uploads builds artifacts lfs registry} + FOLDERS_TO_BACKUP = %w{repositories db} + def pack # Make sure there is a connection ActiveRecord::Base.connection.reconnect! @@ -157,11 +160,17 @@ module Backup end def archives_to_backup - %w{uploads builds artifacts lfs registry}.map{ |name| (name + ".tar.gz") unless skipped?(name) }.compact + (ARCHIVES_TO_BACKUP - disabled_features).map{ |name| (name + ".tar.gz") unless skipped?(name) }.compact end def folders_to_backup - %w{repositories db}.reject{ |name| skipped?(name) } + (FOLDERS_TO_BACKUP - disabled_features).reject{ |name| skipped?(name) } + end + + def disabled_features + features = [] + features << 'registry' unless Gitlab.config.registry.enabled + features end def settings diff --git a/lib/tasks/gitlab/backup.rake b/lib/tasks/gitlab/backup.rake index d97d974ec20..596eaca6d0d 100644 --- a/lib/tasks/gitlab/backup.rake +++ b/lib/tasks/gitlab/backup.rake @@ -179,18 +179,26 @@ namespace :gitlab do task create: :environment do $progress.puts "Dumping container registry images ... ".blue - if ENV["SKIP"] && ENV["SKIP"].include?("registry") - $progress.puts "[SKIPPED]".cyan + if Gitlab.config.registry.enabled + if ENV["SKIP"] && ENV["SKIP"].include?("registry") + $progress.puts "[SKIPPED]".cyan + else + Backup::Registry.new.dump + $progress.puts "done".green + end else - Backup::Registry.new.dump - $progress.puts "done".green + $progress.puts "[DISABLED]".cyan end end task restore: :environment do $progress.puts "Restoring container registry images ... ".blue - Backup::Registry.new.restore - $progress.puts "done".green + if Gitlab.config.registry.enabled + Backup::Registry.new.restore + $progress.puts "done".green + else + $progress.puts "[DISABLED]".cyan + end end end -- cgit v1.2.1