Sha256: 201ced5fa84e00b1fe6632b90d1c0bbe3f917827afb835dc179f11e0adcf7058
Contents?: true
Size: 1.46 KB
Versions: 37
Compression:
Stored size: 1.46 KB
Contents
module Fog module Compute class Ecloud class Real def get_virtual_machine_assigned_ips(virtual_machine_id) request( :uri => "#{base_path}/virtualmachines/#{virtual_machine_id}/assignedips", :parse => true ) end end class Mock def get_virtual_machine_assigned_ips(virtual_machine_id) server = self.data[:servers][virtual_machine_id.to_i] compute_pool = self.data[:compute_pools][server[:compute_pool_id]] environment_id = compute_pool[:environment_id] environment = self.data[:environments][environment_id] networks = self.data[:networks].values.select{|n| n[:environment_id] == environment_id} networks = networks.map{|n| deep_copy(Fog::Ecloud.slice(n, :environment, :id))} networks.each do |network| address = network[:IpAddresses][:IpAddress].map{|ia| ia[:name]} network[:IpAddresses][:IpAddress] = address.first end body = { :href => "/cloudapi/ecloud/virtualMachines/#{virtual_machine_id}/assignedIps", :type => "application/vnd.tmrk.cloud.network", :Links => { :Link => Fog::Ecloud.keep(environment, :name, :href, :type) }, :Networks => {:Network => (networks.size > 1 ? networks : networks.first)}, } response(:body => body) end end end end end
Version data entries
37 entries across 37 versions & 2 rubygems