Commit 5f4fea17ad42d24f069d19d36853b7ea61ee66c8

Authored by Angus MacArthur
1 parent 9c82bca5

Correction to restore expected current directory

Showing 1 changed file with 14 additions and 9 deletions   Show diff stats
lib/tasks/gitlab/backup.rake
... ... @@ -91,15 +91,20 @@ namespace :gitlab do
91 91 ENV["VERSION"] = "#{settings[:db_version]}" if settings[:db_version].to_i > 0
92 92  
93 93 # backups directory is not always sub of Rails root and able to execute the git rev-parse below
94   - Dir.chdir(Rails.root)
95   -
96   - # restoring mismatching backups can lead to unexpected problems
97   - if settings[:gitlab_version] != %x{git rev-parse HEAD}.gsub(/\n/,"")
98   - puts "GitLab version mismatch:".red
99   - puts " Your current HEAD differs from the HEAD in the backup!".red
100   - puts " Please switch to the following revision and try again:".red
101   - puts " revision: #{settings[:gitlab_version]}".red
102   - exit 1
  94 + begin
  95 + Dir.chdir(Rails.root)
  96 +
  97 + # restoring mismatching backups can lead to unexpected problems
  98 + if settings[:gitlab_version] != %x{git rev-parse HEAD}.gsub(/\n/, "")
  99 + puts "GitLab version mismatch:".red
  100 + puts " Your current HEAD differs from the HEAD in the backup!".red
  101 + puts " Please switch to the following revision and try again:".red
  102 + puts " revision: #{settings[:gitlab_version]}".red
  103 + exit 1
  104 + end
  105 + ensure
  106 + # chdir back to original intended dir
  107 + Dir.chdir(Gitlab.config.backup.path)
103 108 end
104 109  
105 110 Rake::Task["gitlab:backup:db:restore"].invoke
... ...