Module: Toolshed::Password

Included in:
Databases::Mysql::Backup, ServerAdministration::SCP, ServerAdministration::SSH
Defined in:
lib/toolshed/password.rb

Overview

Password module looks up password from configuration file if its found

Instance Method Summary collapse

Instance Method Details

#password_from_config(password) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/toolshed/password.rb', line 7

def password_from_config(password)
  return '' if password.nil? || password.empty?

  translated_password = Toolshed.configuration
  return password unless translated_password.is_a?(Hash)

  password_parts = password.split(':')
  password_parts.each do |password_part|
    if translated_password[password_part].nil?
      translated_password = password
      break
    end
    translated_password = translated_password[password_part]
  end
  translated_password
rescue => e
  Toolshed::Logger.instance.fatal e.message
  Toolshed::Logger.instance.fatal e.inspect
  password
end