module HammerCLIForeman::Api::BasicAuth
Public Instance Methods
authenticate(request, args)
click to toggle source
Calls superclass method
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 4 def authenticate(request, args) if HammerCLI.interactive? get_user get_password end super end
clear()
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 48 def clear set_credentials(nil, nil) end
error(ex)
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 12 def error(ex) return unless ex.is_a?(RestClient::Unauthorized) clear default_message = _('Invalid username or password.') message = begin response_msg = JSON.parse(ex.response.body)['error'] response_msg.is_a?(Hash) ? response_msg['message'] : response_msg rescue end return UnauthorizedError.new(default_message) unless message UnauthorizedError.new("#{message}\n#{default_message}") end
password(ask = nil)
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 39 def password(ask = nil) @password ||= ask && get_password end
set_credentials(user, password)
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 43 def set_credentials(user, password) @user = user @password = password end
status()
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 27 def status unless @user.nil? || @password.nil? _("Using configured credentials for user '%s'.") % @user else _('Credentials are not configured.') end end
user(ask = nil)
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 35 def user(ask = nil) @user ||= ask && get_user end
Private Instance Methods
ask_user(prompt, silent = false)
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 62 def ask_user(prompt, silent = false) if silent HammerCLI.interactive_output.ask(prompt) { |q| q.echo = false } else HammerCLI.interactive_output.ask(prompt) end end
get_password()
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 58 def get_password @password ||= ask_user(_("[Foreman] Password for %{user}:%{wsp}") % { user: @user, wsp: ' ' }, true) end
get_user()
click to toggle source
# File lib/hammer_cli_foreman/api/basic_auth.rb, line 54 def get_user @user ||= ask_user(_('[Foreman] Username:%s') % ' ') end