# File lib/deltacloud/drivers/opennebula/opennebula_driver.rb, line 126 def create_instance(credentials, image_id, opts=nil) occi_client = new_client(credentials) hwp_id = opts[:hwp_id] || 'small' if not opts[:name] opts[:name] = "#{Time.now.to_i.to_s}#{rand(9)}" end instancexml = ERB.new(OCCI_VM).result(binding) instancefile = "|echo '#{instancexml}'" xmlvm = occi_client.post_vms(instancefile) convert_instance(xmlvm.to_s(), credentials) end
# File lib/deltacloud/drivers/opennebula/opennebula_driver.rb, line 154 def destroy_instance(credentials, id) occi_action(credentials, id, 'DONE') end
Images
# File lib/deltacloud/drivers/opennebula/opennebula_driver.rb, line 72 def images(credentials, opts=nil) occi_client = new_client(credentials) images = [] imagesxml = occi_client.get_images storage = REXML::Document.new(imagesxml) storage.root.elements.each do |d| id = d.attributes['href'].split("/").last diskxml = occi_client.get_image(id) images << convert_image(diskxml.to_s(), credentials) end images end
# File lib/deltacloud/drivers/opennebula/opennebula_driver.rb, line 106 def instances(credentials, opts=nil) occi_client = new_client(credentials) instances = [] instancesxml = occi_client.get_vms computes = REXML::Document.new(instancesxml) computes.root.elements.each do |d| vm_id = d.attributes['href'].split("/").last computexml = occi_client.get_vm(vm_id) instances << convert_instance(computexml.to_s(), credentials) end instances = filter_on( instances, :id, opts ) instances = filter_on( instances, :state, opts ) instances end
# File lib/deltacloud/drivers/opennebula/opennebula_driver.rb, line 60 def realms(credentials, opts=nil) return REALMS if ( opts.nil? ) results = REALMS results = filter_on( results, :id, opts ) results end
Generated with the Darkfish Rdoc Generator 2.