summaryrefslogtreecommitdiff
path: root/lib/backup/helper.rb
blob: 2c2e35add0e99f0bf4407d5ffd45f49a6275a5b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# frozen_string_literal: true

module Backup
  module Helper
    def access_denied_error(path)
      message = <<~EOS

      ### NOTICE ###
      As part of restore, the task tried to move existing content from #{path}.
      However, it seems that directory contains files/folders that are not owned
      by the user #{Gitlab.config.gitlab.user}. To proceed, please move the files
      or folders inside #{path} to a secure location so that #{path} is empty and
      run restore task again.

      EOS
      raise message
    end

    def resource_busy_error(path)
      message = <<~EOS

      ### NOTICE ###
      As part of restore, the task tried to rename `#{path}` before restoring.
      This could not be completed, perhaps `#{path}` is a mountpoint?

      To complete the restore, please move the contents of `#{path}` to a
      different location and run the restore task again.

      EOS
      raise message
    end

    def gzip_cmd
      @gzip_cmd ||= if ENV['GZIP_RSYNCABLE'] == 'yes'
                      "gzip --rsyncable -c -1"
                    else
                      "gzip -c -1"
                    end
    end
  end
end