Class: Chef::Knife::CloudstackPublicipList
- Inherits:
-
Chef::Knife
- Object
- Chef::Knife
- Chef::Knife::CloudstackPublicipList
- Includes:
- CloudstackBase
- Defined in:
- lib/chef/knife/cloudstack_publicip_list.rb
Instance Method Summary collapse
Methods included from CloudstackBase
#connection, included, #locate_config_value, #msg_pair, #validate!
Instance Method Details
#run ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/chef/knife/cloudstack_publicip_list.rb', line 29 def run $stdout.sync = true validate! publicip_list = [ ui.color('ID', :bold), ui.color('ipaddress', :bold), ui.color('isSourceNAT', :bold), ui.color('isStaticNAT', :bold), ui.color('VirtualMachineDisplayName', :bold) ] response = connection.list_public_ip_addresses['listpublicipaddressesresponse'] if publicips = response['publicipaddress'] publicips.each do |publicip| publicip_list << publicip['id'].to_s publicip_list << publicip['ipaddress'].to_s publicip_list << publicip['issourcenat'].to_s publicip_list << publicip['isstaticnat'].to_s publicip_list << publicip['virtualmachinedisplayname'].to_s end end puts ui.list(publicip_list, :columns_across, 5) end |