module Fog module Terremark class Real require 'fog/terremark/parsers/instantiate_vapp_template' # Instatiate a vapp template # # ==== Parameters # * vdc_id<~Integer> - Id of vdc to instantiate template in # # ==== Returns # * response<~Excon::Response>: # * body<~Hash>: # FIXME # * 'CatalogItems'<~Array> # * 'href'<~String> - linke to item # * 'name'<~String> - name of item # * 'type'<~String> - type of item # * 'description'<~String> - Description of catalog # * 'name'<~String> - Name of catalog def instantiate_vapp_template(name) # FIXME: much cheating to commence vdc_id = default_vdc_id network_id = default_network_id catalog_item = 12 # Ubuntu JeOS 9.10 (64-bit) # case UNRESOLVED: # return "0"; # case RESOLVED: # return "1"; # case OFF: # return "2"; # case SUSPENDED: # return "3"; # case ON: # return "4"; # default: # # /** # * The vApp is unresolved (one or more file references are unavailable in the cloud) # */ # UNRESOLVED, # /** # * The vApp is resolved (all file references are available in the cloud) but not deployed # */ # RESOLVED, # /** # * The vApp is deployed and powered off # */ # OFF, # /** # * The vApp is deployed and suspended # */ # SUSPENDED, # /** # * The vApp is deployed and powered on # */ # ON; data = <<-DATA 1 3 1 2 4 512 allowInOut true DATA request( :body => data, :expects => 200, :headers => { 'Content-Type' => 'application/vnd.vmware.vcloud.instantiateVAppTemplateParams+xml' }, :method => 'POST', :parser => Fog::Parsers::Terremark::InstantiateVappTemplate.new, :path => "vdc/#{vdc_id}/action/instantiatevAppTemplate" ) end end class Mock def instatiate_vapp_template(vapp_template_id) raise MockNotImplemented.new("Contributions welcome!") end end end end