Class: Knifecosmic::CosmicServerPasswordreset
- Inherits:
-
Chef::Knife
- Object
- Chef::Knife
- Knifecosmic::CosmicServerPasswordreset
- Includes:
- Chef::Knife::KnifecosmicBase
- Defined in:
- lib/chef/knife/cosmic_server_passwordreset.rb
Instance Method Summary collapse
- #confirm_action(question) ⇒ Object
- #run ⇒ Object
- #show_object_details(s, connection, rules) ⇒ Object
Methods included from Chef::Knife::KnifecosmicBase
Instance Method Details
#confirm_action(question) ⇒ Object
80 81 82 83 84 85 86 87 88 |
# File 'lib/chef/knife/cosmic_server_passwordreset.rb', line 80 def confirm_action(question) return true if locate_config_value(:yes) result = ui.ask_question(question, :default => "Y" ) if result == "Y" || result == "y" then return true else return false end end |
#run ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/chef/knife/cosmic_server_passwordreset.rb', line 35 def run @name_args.each do |hostname| server = connection.get_server(hostname) if !server then ui.error("Server '#{hostname}' not found") next end rules = connection.list_port_forwarding_rules show_object_details(server, connection, rules) server = connection.server_passwordreset(hostname) password = server['password'] ui.msg("Password: #{password}") end end |
#show_object_details(s, connection, rules) ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/chef/knife/cosmic_server_passwordreset.rb', line 56 def show_object_details(s, connection, rules) return if locate_config_value(:yes) object_fields = [] object_fields << ui.color("Name:", :cyan) object_fields << s['name'].to_s object_fields << ui.color("Public IP:", :cyan) object_fields << (connection.get_server_public_ip(s, rules) || '') object_fields << ui.color("Service:", :cyan) object_fields << s['serviceofferingname'].to_s object_fields << ui.color("Template:", :cyan) object_fields << s['templatename'] object_fields << ui.color("Domain:", :cyan) object_fields << s['domain'] object_fields << ui.color("Zone:", :cyan) object_fields << s['zonename'] object_fields << ui.color("State:", :cyan) object_fields << s['state'] puts "\n" puts ui.list(object_fields, :uneven_columns_across, 2) puts "\n" end |