module RsyncConfig::UserManagement::ClassMethods

Public Instance Methods

parse_secrets_file(content) click to toggle source
# File lib/rsync_config/user_management.rb, line 11
def parse_secrets_file(content)
  raise 'Cannot process nil' if content.nil?

  Treetop.load File.join(__dir__, 'parser/secrets_file')
  parser = RsyncSecretsFileParser.new
  p = parser.parse content

  unless p.nil?
    return p.to_hash
  else
    raise RuntimeError, parser.failure_reason
  end
end