Sha256: 50acd13e5c46e75d442758bafab61bc322248b06dd3fde9e7d99f63709346332

Contents?: true

Size: 1.22 KB

Versions: 4

Compression:

Stored size: 1.22 KB

Contents

module Fog
  module Ovirt
    class Compute
      class V4
        class Real
          def list_template_volumes(template_id)
            template = client.system_service.templates_service.template_service(template_id).get
            attachments = client.follow_link(template.disk_attachments)
            attachments.map do |attachment|
              attachment_disk = client.follow_link(attachment.disk)
              attachment = client.follow_link(attachment)
              bootable = attachment.bootable
              interface = attachment.interface
              attachment_disk.bootable = bootable if attachment_disk.bootable.nil?
              attachment_disk.interface = interface if attachment_disk.interface.nil?
              attachment_disk.storage_domain = attachment_disk.storage_domains[0].id if attachment_disk.storage_domains[0].present?
              ovirt_attrs attachment_disk
            end
          end
        end
        class Mock
          def list_template_volumes(_template_id)
            xml = read_xml "volumes.xml"
            Nokogiri::XML(xml).xpath("/disks/disk").map do |vol|
              ovirt_attrs OvirtSDK4::Reader.read(vol.to_s)
            end
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
fog-ovirt-2.0.2 lib/fog/ovirt/requests/compute/v4/list_template_volumes.rb
fog-ovirt-2.0.1 lib/fog/ovirt/requests/compute/v4/list_template_volumes.rb
fog-ovirt-2.0.0 lib/fog/ovirt/requests/compute/v4/list_template_volumes.rb
fog-ovirt-1.2.5 lib/fog/ovirt/requests/compute/v4/list_template_volumes.rb