summaryrefslogtreecommitdiff
path: root/lib/backup
diff options
context:
space:
mode:
authorAhmad Hassan <ahmad.hassan612@gmail.com>2018-05-06 21:42:39 +0200
committerAhmad Hassan <ahmad.hassan612@gmail.com>2018-05-15 16:43:04 +0300
commit0734da16f631cc9f842bd5c0de08cc2b306738e5 (patch)
tree66caed00539b72d69c3c33fa6776fed73e4bf226 /lib/backup
parent845726212584fd9413e1fa70fb3896342f824434 (diff)
downloadgitlab-ce-0734da16f631cc9f842bd5c0de08cc2b306738e5.tar.gz
Wrap create_from_bundle in a begin rescue block
Diffstat (limited to 'lib/backup')
-rw-r--r--lib/backup/repository.rb24
1 files changed, 19 insertions, 5 deletions
diff --git a/lib/backup/repository.rb b/lib/backup/repository.rb
index 4fc1dded344..67e317c35bc 100644
--- a/lib/backup/repository.rb
+++ b/lib/backup/repository.rb
@@ -92,15 +92,29 @@ module Backup
Project.find_each(batch_size: 1000) do |project|
path_to_project_bundle = path_to_bundle(project)
- project.repository.create_from_bundle path_to_project_bundle unless project.repository_exists?
- progress.puts "[DONE] restoring #{project.name} repository".color(:green)
+ if File.exist?(path_to_project_bundle)
+ begin
+ project.repository.create_from_bundle path_to_project_bundle unless project.repository_exists?
+ progress.puts "[DONE] restoring #{project.name} repository".color(:green)
+ rescue StandardError => e
+ progress.puts "[Failed] restoring #{project.name} repository".color(:red)
+ progress.puts "Error: #{e}".color(:red)
+ end
+ else
+ progress.puts "[Failed] bundle file #{path_to_project_bundle} does not exist"
+ end
wiki = ProjectWiki.new(project)
path_to_wiki_bundle = path_to_bundle(wiki)
- if File.exists?(path_to_wiki_bundle)
- project.repository.create_from_bundle(path_to_wiki_bundle)
- progress.puts "[DONE] restoring #{project.name} wiki".color(:green)
+ if File.exist?(path_to_wiki_bundle)
+ begin
+ project.repository.create_from_bundle(path_to_wiki_bundle)
+ progress.puts "[DONE] restoring #{project.name} wiki".color(:green)
+ rescue StandardError => e
+ progress.puts "[Failed] restoring #{project.name} wiki".color(:red)
+ progress.puts "Error #{e}".color(:red)
+ end
end
end
end