class Astrails::Safe::Gpg

Protected Instance Methods

active?() click to toggle source
# File lib/astrails/safe/gpg.rb, line 24
def active?
  raise RuntimeError, "can't use both gpg password and pubkey" if key && password

  !!(password || key)
end
extension() click to toggle source
# File lib/astrails/safe/gpg.rb, line 20
def extension
  ".gpg"
end
pipe() click to toggle source
# File lib/astrails/safe/gpg.rb, line 11
def pipe
  command = @config[:gpg, :command] || 'gpg'
  if key
    "|#{command} #{@config[:gpg, :options]} -e -r #{key}"
  elsif password
    "|#{command} #{@config[:gpg, :options]} -c --passphrase-file #{gpg_password_file(password)}"
  end
end
post_process() click to toggle source
# File lib/astrails/safe/gpg.rb, line 7
def post_process
  @backup.compressed = true
end

Private Instance Methods

gpg_password_file(pass) click to toggle source
# File lib/astrails/safe/gpg.rb, line 40
def gpg_password_file(pass)
  return "TEMP_GENERATED_FILENAME" if $DRY_RUN
  Astrails::Safe::TmpFile.create("gpg-pass") { |file| file.write(pass) }
end
key() click to toggle source
# File lib/astrails/safe/gpg.rb, line 36
def key
  @key ||= @config[:gpg, :key]
end
password() click to toggle source
# File lib/astrails/safe/gpg.rb, line 32
def password
  @password ||= @config[:gpg, :password]
end