Sha256: c775bf828633a6c9b24de5c9c1df0686cf29c1d479bb9623b52446d696af79aa
Contents?: true
Size: 1.18 KB
Versions: 2
Compression:
Stored size: 1.18 KB
Contents
require 'fog/vcloud_director/models/compute/disk' module Fog module VcloudDirector class Compute class Disks < Collection model Fog::VcloudDirector::Compute::Disk attribute :vm def create(size) item_list unless @disks data = Fog::VcloudDirector::Generators::Compute::Disks.new(@disks) data.add_hard_disk(size) response = service.put_disks(vm.id, data.disks) service.process_task(response.body) end def get_by_id(item_id) item = item_list.find{ |i| i[:id] == item_id} item.merge!(:all_disks => @disks, :vm => vm) if item item end def item_list @disks = service.get_vm_disks(vm.id).body items = @disks[:disks] items.each do |disk| disk[:all_disks] = @disks disk[:vm] = vm end items end # Returns only disk drives (OVF resource type 17) and not controllers, # etc. See <https://blogs.vmware.com/vapp/2009/11/virtual-hardware-in-ovf-part-1.html> def storage_only select {|d| d.resource_type == 17} end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fog-vcloud-director-0.3.1 | lib/fog/vcloud_director/models/compute/disks.rb |
fog-vcloud-director-0.3.0 | lib/fog/vcloud_director/models/compute/disks.rb |