Sha256: 6acf94c83b8df8e120d30af28c5018141f00b3b8243154e752b257ccb402b97e

Contents?: true

Size: 770 Bytes

Versions: 3

Compression:

Stored size: 770 Bytes

Contents

module Fog
  module Compute
    class VcloudDirector
      class CatalogItem < Model
        identity  :id

        attribute :name
        attribute :type
        attribute :href
        attribute :description, :aliases => :Description
        attribute :vapp_template_id

        
        def vapp_template
          requires :id
          service.vapp_templates.get(self.vapp_template_id)
        end
        
        
        def instantiate(vapp_name, options={})
          response = service.instantiate_vapp_template(vapp_name, vapp_template_id, options)
          service.process_task(response.body[:Tasks][:Task])
          response.body[:href].split('/').last # returns the vapp_id if it was instantiated successfully .
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fog-vcloud-director-0.2.2 lib/fog/vcloud_director/models/compute/catalog_item.rb
fog-vcloud-director-0.2.1 lib/fog/vcloud_director/models/compute/catalog_item.rb
fog-vcloud-director-0.2.0 lib/fog/vcloud_director/models/compute/catalog_item.rb