Sha256: 652d5bd9f6ee142a066d05ea5ca9614c81e4e44c4ad2d39ed337158bb486924d
Contents?: true
Size: 1.9 KB
Versions: 2
Compression:
Stored size: 1.9 KB
Contents
module VagrantPlugins module ArubaCloud module Action class ListServers def initialize(app, env) @app = app end def call(env ) config = env[:machine].provider_config arubacloud_dc = config.endpoint compute_service = env[:arubacloud_compute] vm_in_dc = compute_service.servers server_fnd = vm_in_dc.select{ |s| (s.id).to_i == (env[:machine].id).to_i } if server_fnd && server_fnd.length == 1 server = server_fnd[0] server.get_server_details env[:machine].ui.info('%-6s %-20s %-8s %-12s %-14s %s' % [arubacloud_dc, server.name, server.id, server.state, Fog::ArubaCloud::Compute::Server::STATE_DES[server.state], server.smart_ipv4] ) end if config.reserved_status == "other" # # output all info relate VM found in current DC , but not found in '.vagrant' directory # ll = env[:machine].name.length ui_ext = Vagrant::UI::Prefixed.new( Vagrant::UI::Colored.new, "-".center(ll) ) if server && server.name config.reserved_list_owned << server.name end server_xs = vm_in_dc.select{ |s| not (config.reserved_list_owned.include? s.name)} server_xs.sort_by(&:name).each do |server| server.get_server_details ui_ext.detail('%-6s %-20s %-8s %-12s %-14s %s' % [arubacloud_dc, server.name, server.id, server.state, Fog::ArubaCloud::Compute::Server::STATE_DES[server.state], server.smart_ipv4] ) end config.reserved_list_owned = [] else if server && server.name config.reserved_list_owned = server.name else config.reserver_list_owned = "" end end @app.call(env) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
vagrant-arubacloud-0.0.6 | lib/vagrant-arubacloud/action/list_servers.rb |
vagrant-arubacloud-0.0.5 | lib/vagrant-arubacloud/action/list_servers.rb |