Fail harder in the backup script
This change also shows the output of failed Git commands during the backup.
This commit is contained in:
parent
8b1da505e0
commit
02bf992f37
4 changed files with 23 additions and 6 deletions
|
@ -10,6 +10,7 @@ v 7.4.0
|
|||
- Support for backup uploads to remote storage
|
||||
- Prevent notes polling when there are not notes
|
||||
- API: filter project issues by milestone (Julien Bianchi)
|
||||
- Fail harder in the backup script
|
||||
|
||||
v 7.3.2
|
||||
- Fix creating new file via web editor
|
||||
|
|
|
@ -21,6 +21,7 @@ module Backup
|
|||
system('pg_dump', config['database'], out: db_file_name)
|
||||
end
|
||||
report_success(success)
|
||||
abort 'Backup failed' unless success
|
||||
end
|
||||
|
||||
def restore
|
||||
|
@ -37,6 +38,7 @@ module Backup
|
|||
system('psql', config['database'], '-f', db_file_name)
|
||||
end
|
||||
report_success(success)
|
||||
abort 'Restore failed' unless success
|
||||
end
|
||||
|
||||
protected
|
||||
|
|
|
@ -23,6 +23,7 @@ module Backup
|
|||
puts "done".green
|
||||
else
|
||||
puts "failed".red
|
||||
abort 'Backup failed'
|
||||
end
|
||||
|
||||
upload(tar_file)
|
||||
|
@ -44,6 +45,7 @@ module Backup
|
|||
puts "done".green
|
||||
else
|
||||
puts "failed".red
|
||||
abort 'Backup failed'
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -53,6 +55,7 @@ module Backup
|
|||
puts "done".green
|
||||
else
|
||||
puts "failed".red
|
||||
abort 'Backup failed'
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -15,10 +15,15 @@ module Backup
|
|||
|
||||
if project.empty_repo?
|
||||
puts "[SKIPPED]".cyan
|
||||
elsif system(*%W(git --git-dir=#{path_to_repo(project)} bundle create #{path_to_bundle(project)} --all), silent)
|
||||
puts "[DONE]".green
|
||||
else
|
||||
puts "[FAILED]".red
|
||||
output, status = Gitlab::Popen.popen(%W(git --git-dir=#{path_to_repo(project)} bundle create #{path_to_bundle(project)} --all))
|
||||
if status.zero?
|
||||
puts "[DONE]".green
|
||||
else
|
||||
puts "[FAILED]".red
|
||||
puts output
|
||||
abort 'Backup failed'
|
||||
end
|
||||
end
|
||||
|
||||
wiki = ProjectWiki.new(project)
|
||||
|
@ -27,10 +32,14 @@ module Backup
|
|||
print " * #{wiki.path_with_namespace} ... "
|
||||
if wiki.empty?
|
||||
puts " [SKIPPED]".cyan
|
||||
elsif system(*%W(git --git-dir=#{path_to_repo(wiki)} bundle create #{path_to_bundle(wiki)} --all), silent)
|
||||
puts " [DONE]".green
|
||||
else
|
||||
puts " [FAILED]".red
|
||||
output, status = Gitlab::Popen.popen(%W(git --git-dir=#{path_to_repo(wiki)} bundle create #{path_to_bundle(wiki)} --all))
|
||||
if status.zero?
|
||||
puts " [DONE]".green
|
||||
else
|
||||
puts " [FAILED]".red
|
||||
abort 'Backup failed'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -54,6 +63,7 @@ module Backup
|
|||
puts "[DONE]".green
|
||||
else
|
||||
puts "[FAILED]".red
|
||||
abort 'Restore failed'
|
||||
end
|
||||
|
||||
wiki = ProjectWiki.new(project)
|
||||
|
@ -64,6 +74,7 @@ module Backup
|
|||
puts " [DONE]".green
|
||||
else
|
||||
puts " [FAILED]".red
|
||||
abort 'Restore failed'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue