You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@libcloud.apache.org by to...@apache.org on 2012/04/19 06:01:07 UTC

svn commit: r1327809 [2/2] - in /libcloud/trunk: ./ libcloud/compute/ libcloud/compute/drivers/ test/compute/ test/compute/fixtures/vcloud_1_5/

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,295 @@
+<VApp deployed="true" status="4" name="testNode" id="urn:vcloud:vapp:8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a" type="application/vnd.vmware.vcloud.vApp+xml"
+      href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a" xsi:schemaLocation="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingData http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2.22.0/CIM_VirtualSystemSettingData.xsd http://schemas.dmtf.org/ovf/envelope/1 http://schemas.dmtf.org/ovf/envelope/1/dsp8023_1.1.0.xsd http://schemas.dmtf.org/ovf/environment/1 http://schemas.dmtf.org/ovf/envelope/1/dsp8027_1.1.0.xsd http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2.22.0/CIM_ResourceAllocationSettingData.xsd" xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSyst
 emSettingData" xmlns:ovfenv="http://schemas.dmtf.org/ovf/environment/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+   <Link rel="power:powerOff" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/power/action/powerOff"/>
+   <Link rel="power:reboot" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/power/action/reboot"/>
+   <Link rel="power:reset" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/power/action/reset"/>
+   <Link rel="power:shutdown" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/power/action/shutdown"/>
+   <Link rel="power:suspend" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/power/action/suspend"/>
+   <Link rel="deploy" type="application/vnd.vmware.vcloud.deployVAppParams+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/action/deploy"/>
+   <Link rel="undeploy" type="application/vnd.vmware.vcloud.undeployVAppParams+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/action/undeploy"/>
+   <Link rel="down" type="application/vnd.vmware.vcloud.vAppNetwork+xml" name="vCloud - Default" href="https://vm-vcloud/api/network/da178ef6-b21b-4f19-816e-798a294d2b22"/>
+   <Link rel="down" type="application/vnd.vmware.vcloud.controlAccess+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/controlAccess/"/>
+   <Link rel="controlAccess" type="application/vnd.vmware.vcloud.controlAccess+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/action/controlAccess"/>
+   <Link rel="up" type="application/vnd.vmware.vcloud.vdc+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0"/>
+   <Link rel="edit" type="application/vnd.vmware.vcloud.vApp+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a"/>
+   <Link rel="down" type="application/vnd.vmware.vcloud.owner+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/owner"/>
+   <Link rel="down" type="application/vnd.vmware.vcloud.metadata+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/metadata"/>
+   <Description/>
+   <LeaseSettingsSection type="application/vnd.vmware.vcloud.leaseSettingsSection+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/leaseSettingsSection/" ovf:required="false">
+      <ovf:Info>Lease settings section</ovf:Info>
+      <Link rel="edit" type="application/vnd.vmware.vcloud.leaseSettingsSection+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/leaseSettingsSection/"/>
+      <DeploymentLeaseInSeconds>0</DeploymentLeaseInSeconds>
+      <StorageLeaseInSeconds>0</StorageLeaseInSeconds>
+   </LeaseSettingsSection>
+   <ovf:StartupSection vcloud:href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/startupSection/" vcloud:type="application/vnd.vmware.vcloud.startupSection+xml" xmlns:vcloud="http://www.vmware.com/vcloud/v1.5">
+      <ovf:Info>VApp startup section</ovf:Info>
+      <ovf:Item ovf:stopDelay="0" ovf:stopAction="powerOff" ovf:startDelay="0" ovf:startAction="powerOn" ovf:order="0" ovf:id="mgalet-test2"/>
+      <Link rel="edit" type="application/vnd.vmware.vcloud.startupSection+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/startupSection/"/>
+   </ovf:StartupSection>
+   <ovf:NetworkSection vcloud:href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/networkSection/" vcloud:type="application/vnd.vmware.vcloud.networkSection+xml" xmlns:vcloud="http://www.vmware.com/vcloud/v1.5">
+      <ovf:Info>The list of logical networks</ovf:Info>
+      <ovf:Network ovf:name="vCloud - Default">
+         <ovf:Description/>
+      </ovf:Network>
+   </ovf:NetworkSection>
+   <NetworkConfigSection type="application/vnd.vmware.vcloud.networkConfigSection+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/networkConfigSection/" ovf:required="false">
+      <ovf:Info>The configuration parameters for logical networks</ovf:Info>
+      <Link rel="edit" type="application/vnd.vmware.vcloud.networkConfigSection+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a/networkConfigSection/"/>
+      <NetworkConfig networkName="vCloud - Default">
+         <Link rel="repair" href="https://vm-vcloud/api/admin/network/da178ef6-b21b-4f19-816e-798a294d2b22/action/reset"/>
+         <Description/>
+         <Configuration>
+            <IpScope>
+               <IsInherited>true</IsInherited>
+               <Gateway>65.41.64.1</Gateway>
+               <Netmask>255.255.252.0</Netmask>
+               <Dns1>65.41.42.113</Dns1>
+               <Dns2>65.41.42.114</Dns2>
+               <DnsSuffix>vm.myorg.com</DnsSuffix>
+               <IpRanges>
+                  <IpRange>
+                     <StartAddress>65.41.67.1</StartAddress>
+                     <EndAddress>65.41.67.254</EndAddress>
+                  </IpRange>
+               </IpRanges>
+            </IpScope>
+            <ParentNetwork type="application/vnd.vmware.vcloud.network+xml" name="vCloud - Default" href="https://vm-vcloud/api/network/dca8b667-6c8f-4c3e-be57-7a9425dba4f4"/>
+            <FenceMode>bridged</FenceMode>
+            <RetainNetInfoAcrossDeployments>false</RetainNetInfoAcrossDeployments>
+            <Features>
+               <DhcpService>
+                  <IsEnabled>false</IsEnabled>
+                  <DefaultLeaseTime>3600</DefaultLeaseTime>
+                  <MaxLeaseTime>7200</MaxLeaseTime>
+                  <IpRange>
+                     <StartAddress>65.41.64.2</StartAddress>
+                     <EndAddress>65.41.67.0</EndAddress>
+                  </IpRange>
+               </DhcpService>
+               <FirewallService>
+                  <IsEnabled>true</IsEnabled>
+                  <DefaultAction>drop</DefaultAction>
+                  <LogDefaultAction>false</LogDefaultAction>
+                  <FirewallRule>
+                     <IsEnabled>true</IsEnabled>
+                     <Description>Allow all outgoing traffic</Description>
+                     <Policy>allow</Policy>
+                     <Protocols>
+                        <Any>true</Any>
+                     </Protocols>
+                     <Port>-1</Port>
+                     <DestinationIp>Any</DestinationIp>
+                     <SourcePort>-1</SourcePort>
+                     <SourceIp>Any</SourceIp>
+                     <Direction>out</Direction>
+                     <EnableLogging>false</EnableLogging>
+                  </FirewallRule>
+               </FirewallService>
+               <NatService>
+                  <IsEnabled>true</IsEnabled>
+                  <NatType>ipTranslation</NatType>
+                  <Policy>allowTraffic</Policy>
+                  <NatRule>
+                     <OneToOneVmRule>
+                        <MappingMode>automatic</MappingMode>
+                        <VAppScopedVmId>ScrumVM_Master</VAppScopedVmId>
+                        <VmNicId>0</VmNicId>
+                     </OneToOneVmRule>
+                  </NatRule>
+               </NatService>
+               <StaticRoutingService>
+                  <IsEnabled>false</IsEnabled>
+               </StaticRoutingService>
+            </Features>
+            <SyslogServerSettings/>
+         </Configuration>
+         <IsDeployed>true</IsDeployed>
+      </NetworkConfig>
+   </NetworkConfigSection>
+   <Owner type="application/vnd.vmware.vcloud.owner+xml">
+      <User type="application/vnd.vmware.admin.user+xml" name="mgalet" href="https://vm-vcloud/api/admin/user/a0d29e8e-2b32-4739-ab7d-6a3e795be4db"/>
+   </Owner>
+   <InMaintenanceMode>false</InMaintenanceMode>
+   <Children>
+      <Vm needsCustomization="false" deployed="true" status="4" name="mgalet-test2" id="urn:vcloud:vm:dd75d1d3-5b7b-48f0-aff3-69622ab7e045" type="application/vnd.vmware.vcloud.vm+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045">
+         <Link rel="power:powerOff" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/power/action/powerOff"/>
+         <Link rel="power:reboot" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/power/action/reboot"/>
+         <Link rel="power:reset" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/power/action/reset"/>
+         <Link rel="power:shutdown" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/power/action/shutdown"/>
+         <Link rel="power:suspend" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/power/action/suspend"/>
+         <Link rel="undeploy" type="application/vnd.vmware.vcloud.undeployVAppParams+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/action/undeploy"/>
+         <Link rel="edit" type="application/vnd.vmware.vcloud.vm+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045"/>
+         <Link rel="down" type="application/vnd.vmware.vcloud.metadata+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/metadata"/>
+         <Link rel="screen:thumbnail" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/screen"/>
+         <Link rel="screen:acquireTicket" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/screen/action/acquireTicket"/>
+         <Link rel="media:insertMedia" type="application/vnd.vmware.vcloud.mediaInsertOrEjectParams+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/media/action/insertMedia"/>
+         <Link rel="media:ejectMedia" type="application/vnd.vmware.vcloud.mediaInsertOrEjectParams+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/media/action/ejectMedia"/>
+         <Link rel="installVmwareTools" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/action/installVMwareTools"/>
+         <Link rel="up" type="application/vnd.vmware.vcloud.vApp+xml" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a"/>
+         <Description/>
+         <ovf:VirtualHardwareSection ovf:transport="" vcloud:href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/" vcloud:type="application/vnd.vmware.vcloud.virtualHardwareSection+xml" xmlns:vcloud="http://www.vmware.com/vcloud/v1.5">
+            <ovf:Info>Virtual hardware requirements</ovf:Info>
+            <ovf:System>
+               <vssd:ElementName>Virtual Hardware Family</vssd:ElementName>
+               <vssd:InstanceID>0</vssd:InstanceID>
+               <vssd:VirtualSystemIdentifier>mgalet-test2</vssd:VirtualSystemIdentifier>
+               <vssd:VirtualSystemType>vmx-07</vssd:VirtualSystemType>
+            </ovf:System>
+            <ovf:Item>
+               <rasd:Address>00:50:56:01:00:99</rasd:Address>
+               <rasd:AddressOnParent>0</rasd:AddressOnParent>
+               <rasd:AutomaticAllocation>true</rasd:AutomaticAllocation>
+               <rasd:Connection vcloud:ipAddress="65.41.67.2" vcloud:primaryNetworkConnection="true" vcloud:ipAddressingMode="POOL">vCloud - Default</rasd:Connection>
+               <rasd:Description>PCNet32 ethernet adapter</rasd:Description>
+               <rasd:ElementName>Network adapter 0</rasd:ElementName>
+               <rasd:InstanceID>1</rasd:InstanceID>
+               <rasd:ResourceSubType>PCNet32</rasd:ResourceSubType>
+               <rasd:ResourceType>10</rasd:ResourceType>
+            </ovf:Item>
+            <ovf:Item>
+               <rasd:Address>0</rasd:Address>
+               <rasd:Description>SCSI Controller</rasd:Description>
+               <rasd:ElementName>SCSI Controller 0</rasd:ElementName>
+               <rasd:InstanceID>2</rasd:InstanceID>
+               <rasd:ResourceSubType>lsilogic</rasd:ResourceSubType>
+               <rasd:ResourceType>6</rasd:ResourceType>
+            </ovf:Item>
+            <ovf:Item>
+               <rasd:AddressOnParent>0</rasd:AddressOnParent>
+               <rasd:Description>Hard disk</rasd:Description>
+               <rasd:ElementName>Hard disk 1</rasd:ElementName>
+               <rasd:HostResource vcloud:capacity="61440" vcloud:busSubType="lsilogic" vcloud:busType="6"/>
+               <rasd:InstanceID>2000</rasd:InstanceID>
+               <rasd:Parent>2</rasd:Parent>
+               <rasd:ResourceType>17</rasd:ResourceType>
+            </ovf:Item>
+            <ovf:Item>
+               <rasd:Address>0</rasd:Address>
+               <rasd:Description>IDE Controller</rasd:Description>
+               <rasd:ElementName>IDE Controller 0</rasd:ElementName>
+               <rasd:InstanceID>3</rasd:InstanceID>
+               <rasd:ResourceType>5</rasd:ResourceType>
+            </ovf:Item>
+            <ovf:Item>
+               <rasd:AddressOnParent>0</rasd:AddressOnParent>
+               <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
+               <rasd:Description>CD/DVD Drive</rasd:Description>
+               <rasd:ElementName>CD/DVD Drive 1</rasd:ElementName>
+               <rasd:HostResource/>
+               <rasd:InstanceID>3002</rasd:InstanceID>
+               <rasd:Parent>3</rasd:Parent>
+               <rasd:ResourceType>15</rasd:ResourceType>
+            </ovf:Item>
+            <ovf:Item>
+               <rasd:AddressOnParent>0</rasd:AddressOnParent>
+               <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
+               <rasd:Description>Floppy Drive</rasd:Description>
+               <rasd:ElementName>Floppy Drive 1</rasd:ElementName>
+               <rasd:HostResource/>
+               <rasd:InstanceID>8000</rasd:InstanceID>
+               <rasd:ResourceType>14</rasd:ResourceType>
+            </ovf:Item>
+            <ovf:Item vcloud:href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/cpu" vcloud:type="application/vnd.vmware.vcloud.rasdItem+xml">
+               <rasd:AllocationUnits>hertz * 10^6</rasd:AllocationUnits>
+               <rasd:Description>Number of Virtual CPUs</rasd:Description>
+               <rasd:ElementName>2 virtual CPU(s)</rasd:ElementName>
+               <rasd:InstanceID>4</rasd:InstanceID>
+               <rasd:Reservation>0</rasd:Reservation>
+               <rasd:ResourceType>3</rasd:ResourceType>
+               <rasd:VirtualQuantity>2</rasd:VirtualQuantity>
+               <rasd:Weight>0</rasd:Weight>
+               <Link rel="edit" type="application/vnd.vmware.vcloud.rasdItem+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/cpu"/>
+            </ovf:Item>
+            <ovf:Item vcloud:href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/memory" vcloud:type="application/vnd.vmware.vcloud.rasdItem+xml">
+               <rasd:AllocationUnits>byte * 2^20</rasd:AllocationUnits>
+               <rasd:Description>Memory Size</rasd:Description>
+               <rasd:ElementName>4096 MB of memory</rasd:ElementName>
+               <rasd:InstanceID>5</rasd:InstanceID>
+               <rasd:Reservation>0</rasd:Reservation>
+               <rasd:ResourceType>4</rasd:ResourceType>
+               <rasd:VirtualQuantity>4096</rasd:VirtualQuantity>
+               <rasd:Weight>0</rasd:Weight>
+               <Link rel="edit" type="application/vnd.vmware.vcloud.rasdItem+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/memory"/>
+            </ovf:Item>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.virtualHardwareSection+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/"/>
+            <Link rel="down" type="application/vnd.vmware.vcloud.rasdItem+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/cpu"/>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.rasdItem+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/cpu"/>
+            <Link rel="down" type="application/vnd.vmware.vcloud.rasdItem+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/memory"/>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.rasdItem+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/memory"/>
+            <Link rel="down" type="application/vnd.vmware.vcloud.rasdItemsList+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/disks"/>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.rasdItemsList+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/disks"/>
+            <Link rel="down" type="application/vnd.vmware.vcloud.rasdItemsList+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/media"/>
+            <Link rel="down" type="application/vnd.vmware.vcloud.rasdItemsList+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/networkCards"/>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.rasdItemsList+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/networkCards"/>
+            <Link rel="down" type="application/vnd.vmware.vcloud.rasdItemsList+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/serialPorts"/>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.rasdItemsList+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/virtualHardwareSection/serialPorts"/>
+         </ovf:VirtualHardwareSection>
+         <ovf:OperatingSystemSection ovf:id="80" vcloud:href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/operatingSystemSection/" vcloud:type="application/vnd.vmware.vcloud.operatingSystemSection+xml" vmw:osType="rhel5_64Guest" xmlns:vcloud="http://www.vmware.com/vcloud/v1.5" xmlns:vmw="http://www.vmware.com/schema/ovf">
+            <ovf:Info>Specifies the operating system installed</ovf:Info>
+            <ovf:Description>Red Hat Enterprise Linux 5 (64-bit)</ovf:Description>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.operatingSystemSection+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/operatingSystemSection/"/>
+         </ovf:OperatingSystemSection>
+         <NetworkConnectionSection type="application/vnd.vmware.vcloud.networkConnectionSection+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/networkConnectionSection/" ovf:required="false">
+            <ovf:Info>Specifies the available VM network connections</ovf:Info>
+            <PrimaryNetworkConnectionIndex>0</PrimaryNetworkConnectionIndex>
+            <NetworkConnection network="vCloud - Default" needsCustomization="false">
+               <NetworkConnectionIndex>0</NetworkConnectionIndex>
+               <IpAddress>65.41.67.2</IpAddress>
+               <IsConnected>true</IsConnected>
+               <MACAddress>00:50:56:01:00:99</MACAddress>
+               <IpAddressAllocationMode>POOL</IpAddressAllocationMode>
+            </NetworkConnection>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.networkConnectionSection+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/networkConnectionSection/"/>
+         </NetworkConnectionSection>
+         <GuestCustomizationSection type="application/vnd.vmware.vcloud.guestCustomizationSection+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/guestCustomizationSection/" ovf:required="false">
+            <ovf:Info>Specifies Guest OS Customization Settings</ovf:Info>
+            <Enabled>true</Enabled>
+            <ChangeSid>false</ChangeSid>
+            <VirtualMachineId>dd75d1d3-5b7b-48f0-aff3-69622ab7e045</VirtualMachineId>
+            <JoinDomainEnabled>false</JoinDomainEnabled>
+            <UseOrgSettings>false</UseOrgSettings>
+            <AdminPasswordEnabled>true</AdminPasswordEnabled>
+            <AdminPasswordAuto>true</AdminPasswordAuto>
+            <AdminPassword>sN#9QH9#</AdminPassword>
+            <ResetPasswordRequired>false</ResetPasswordRequired>
+            <ComputerName>mgalet-test2</ComputerName>
+            <Link rel="edit" type="application/vnd.vmware.vcloud.guestCustomizationSection+xml" href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/guestCustomizationSection/"/>
+         </GuestCustomizationSection>
+         <RuntimeInfoSection vcloud:href="https://vm-vcloud/api/vApp/vm-dd75d1d3-5b7b-48f0-aff3-69622ab7e045/runtimeInfoSection" vcloud:type="application/vnd.vmware.vcloud.virtualHardwareSection+xml" xmlns:vcloud="http://www.vmware.com/vcloud/v1.5">
+            <ovf:Info>Specifies Runtime info</ovf:Info>
+            <VMWareTools version="8290"/>
+         </RuntimeInfoSection>
+         <VAppScopedLocalId>ScrumVM_Master</VAppScopedLocalId>
+         <ovfenv:Environment ovfenv:id="" ns8:vCenterId="vm-139" xmlns:ns8="http://www.vmware.com/schema/ovfenv">
+            <ovfenv:PlatformSection>
+               <ovfenv:Kind>VMware ESXi</ovfenv:Kind>
+               <ovfenv:Version>5.0.0</ovfenv:Version>
+               <ovfenv:Vendor>VMware, Inc.</ovfenv:Vendor>
+               <ovfenv:Locale>en</ovfenv:Locale>
+            </ovfenv:PlatformSection>
+            <ovfenv:PropertySection>
+               <ovfenv:Property ovfenv:value="None" ovfenv:key="vCloud_UseSysPrep"/>
+               <ovfenv:Property ovfenv:value="sN#9QH9#" ovfenv:key="vCloud_adminPassword"/>
+               <ovfenv:Property ovfenv:value="1" ovfenv:key="vCloud_bitMask"/>
+               <ovfenv:Property ovfenv:value="static" ovfenv:key="vCloud_bootproto_0"/>
+               <ovfenv:Property ovfenv:value="mgalet-test2" ovfenv:key="vCloud_computerName"/>
+               <ovfenv:Property ovfenv:value="65.41.42.113" ovfenv:key="vCloud_dns1_0"/>
+               <ovfenv:Property ovfenv:value="65.41.42.114" ovfenv:key="vCloud_dns2_0"/>
+               <ovfenv:Property ovfenv:value="65.41.64.1" ovfenv:key="vCloud_gateway_0"/>
+               <ovfenv:Property ovfenv:value="65.41.67.2" ovfenv:key="vCloud_ip_0"/>
+               <ovfenv:Property ovfenv:value="00:50:56:01:00:99" ovfenv:key="vCloud_macaddr_0"/>
+               <ovfenv:Property ovfenv:value="83467e6d-0af8-4af5-8b15-b8d107b16f0d" ovfenv:key="vCloud_markerid"/>
+               <ovfenv:Property ovfenv:value="255.255.252.0" ovfenv:key="vCloud_netmask_0"/>
+               <ovfenv:Property ovfenv:value="1" ovfenv:key="vCloud_numnics"/>
+               <ovfenv:Property ovfenv:value="0" ovfenv:key="vCloud_primaryNic"/>
+               <ovfenv:Property ovfenv:value="117274554" ovfenv:key="vCloud_reconfigToken"/>
+               <ovfenv:Property ovfenv:value="0" ovfenv:key="vCloud_resetPassword"/>
+               <ovfenv:Property ovfenv:value="vm.myorg.com" ovfenv:key="vCloud_suffix_0"/>
+            </ovfenv:PropertySection>
+            <ve:EthernetAdapterSection xmlns:ve="http://www.vmware.com/schema/ovfenv" xmlns="http://schemas.dmtf.org/ovf/environment/1" xmlns:oe="http://schemas.dmtf.org/ovf/environment/1">
+               <ve:Adapter ve:mac="00:50:56:01:00:99" ve:network="VM Network" ve:unitNumber="7"/>
+            </ve:EthernetAdapterSection>
+         </ovfenv:Environment>
+      </Vm>
+   </Children>
+</VApp>
\ No newline at end of file

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_powerOn.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_powerOn.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_powerOn.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_powerOn.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,7 @@
+<Task status="running" startTime="2012-01-11T04:10:34.903-05:00" operationName="vappDeploy" operation="Starting Virtual Application testNode(b0331206-dcc4-4874-b90a-351ff6502124)" expiryTime="2012-04-10T04:10:34.903-04:00" name="task" id="urn:vcloud:task:939d0f80-9f78-42ca-89a9-8a2dda320cac" type="application/vnd.vmware.vcloud.task+xml"
+      href="https://vm-vcloud/api/task/b034df55-fe81-4798-bc81-1f0fd0ead450" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd" xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+    <Link rel="task:cancel" href="https://vm-vcloud/api/task/939d0f80-9f78-42ca-89a9-8a2dda320cac/action/cancel"/>
+    <Owner type="application/vnd.vmware.vcloud.vApp+xml" name="testNode" href="https://vm-vcloud/api/vApp/vapp-b0331206-dcc4-4874-b90a-351ff6502124"/>
+    <User type="application/vnd.vmware.admin.user+xml" name="labmanapi" href="https://vm-vcloud/api/admin/user/46f62cc3-65e0-4417-967a-a538ec6caea3"/>
+    <Organization type="application/vnd.vmware.vcloud.org+xml" name="MyOrg" href="https://vm-vcloud/api/org/96726c78-4ae3-402f-b08b-7a78c6903d2a"/>
+</Task>
\ No newline at end of file

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_reset.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_reset.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_reset.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_reset.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,6 @@
+<Task status="running" startTime="2011-12-20T15:39:53.270-05:00" operationName="vappReset" operation="Reset Virtual Application (0d647cbf-867e-442d-8d2d-d0c2d235fbdf)" expiryTime="2012-03-19T15:39:53.270-04:00" name="task" id="urn:vcloud:task:b034df55-fe81-4798-bc81-1f0fd0ead450" type="application/vnd.vmware.vcloud.task+xml" href="https://vm-vcloud/api/task/b034df55-fe81-4798-bc81-1f0fd0ead450" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd" xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+   <Link rel="task:cancel" href="https://vm-vcloud/api/task/b034df55-fe81-4798-bc81-1f0fd0ead450/action/cancel"/>
+   <Owner type="application/vnd.vmware.vcloud.vApp+xml" name="" href="https://vm-vcloud/api/vApp/vapp-0d647cbf-867e-442d-8d2d-d0c2d235fbdf"/>
+   <User type="application/vnd.vmware.admin.user+xml" name="labmanapi" href="https://vm-vcloud/api/admin/user/46f62cc3-65e0-4417-967a-a538ec6caea3"/>
+   <Organization type="application/vnd.vmware.vcloud.org+xml" name="MyOrg" href="https://vm-vcloud/api/org/96726c78-4ae3-402f-b08b-7a78c6903d2a"/>
+</Task>
\ No newline at end of file

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_access_to_resource_forbidden.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_access_to_resource_forbidden.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_access_to_resource_forbidden.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vApp_vapp_access_to_resource_forbidden.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,4 @@
+<ns0:Error majorErrorCode="403"
+           message="No access to entity &quot;(com.vmware.vcloud.entity.vapp:474bdb3d-1286-4e3d-b07f-15bab487479b)&quot;."
+           minorErrorCode="ACCESS_TO_RESOURCE_IS_FORBIDDEN" ns1:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd"
+           xmlns:ns0="http://www.vmware.com/vcloud/v1.5" xmlns:ns1="http://www.w3.org/2001/XMLSchema-instance" />
\ No newline at end of file

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,55 @@
+<Vdc status="1" name="MyOrg" id="urn:vcloud:vdc:3d9ae28c-1de9-4307-8107-9356ff8ba6d0" type="application/vnd.vmware.vcloud.vdc+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd" xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+   <Link rel="up" type="application/vnd.vmware.vcloud.org+xml" href="https://vm-vcloud/api/org/96726c78-4ae3-402f-b08b-7a78c6903d2a"/>
+   <Link rel="down" type="application/vnd.vmware.vcloud.metadata+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/metadata"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.uploadVAppTemplateParams+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/action/uploadVAppTemplate"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.media+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/media"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.instantiateVAppTemplateParams+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/action/instantiateVAppTemplate"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.cloneVAppParams+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/action/cloneVApp"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.cloneVAppTemplateParams+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/action/cloneVAppTemplate"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.cloneMediaParams+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/action/cloneMedia"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.captureVAppParams+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/action/captureVApp"/>
+   <Link rel="add" type="application/vnd.vmware.vcloud.composeVAppParams+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0/action/composeVApp"/>
+   <AllocationModel>AllocationVApp</AllocationModel>
+   <StorageCapacity>
+      <Units>MB</Units>
+      <Allocated>0</Allocated>
+      <Limit>0</Limit>
+      <Used>126976</Used>
+      <Overhead>0</Overhead>
+   </StorageCapacity>
+   <ComputeCapacity>
+      <Cpu>
+         <Units>MHz</Units>
+         <Allocated>0</Allocated>
+         <Limit>0</Limit>
+         <Used>6000</Used>
+         <Overhead>0</Overhead>
+      </Cpu>
+      <Memory>
+         <Units>MB</Units>
+         <Allocated>0</Allocated>
+         <Limit>0</Limit>
+         <Used>4255</Used>
+         <Overhead>0</Overhead>
+      </Memory>
+   </ComputeCapacity>
+   <ResourceEntities>
+      <ResourceEntity type="application/vnd.vmware.vcloud.vApp+xml" name="testNode" href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a"/>
+       <ResourceEntity type="application/vnd.vmware.vcloud.vApp+xml" name="deleted-test" href="https://vm-vcloud/api/vApp/vapp-access-to-resource-forbidden"/>
+      <ResourceEntity type="application/vnd.vmware.vcloud.vAppTemplate+xml" name="VMTemplate_Master" href="https://vm-vcloud/api/vAppTemplate/vappTemplate-ac1bc027-bf8c-4050-8643-4971f691c158"/>
+   </ResourceEntities>
+   <AvailableNetworks>
+      <Network type="application/vnd.vmware.vcloud.network+xml" name="vCloud - Default" href="https://vm-vcloud/api/network/dca8b667-6c8f-4c3e-be57-7a9425dba4f4"/>
+   </AvailableNetworks>
+   <Capabilities>
+      <SupportedHardwareVersions>
+         <SupportedHardwareVersion>vmx-04</SupportedHardwareVersion>
+         <SupportedHardwareVersion>vmx-07</SupportedHardwareVersion>
+         <SupportedHardwareVersion>vmx-08</SupportedHardwareVersion>
+      </SupportedHardwareVersions>
+   </Capabilities>
+   <NicQuota>0</NicQuota>
+   <NetworkQuota>1024</NetworkQuota>
+   <VmQuota>150</VmQuota>
+   <IsEnabled>true</IsEnabled>
+</Vdc>
\ No newline at end of file

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_cloneVApp.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_cloneVApp.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_cloneVApp.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_cloneVApp.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,20 @@
+<VApp deployed="false" status="0" name="testClone" id="urn:vcloud:vapp:5adbcba3-f861-4fd7-a395-f7d82008f8b7" type="application/vnd.vmware.vcloud.vApp+xml"
+      href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd" xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+    <Link rel="down" type="application/vnd.vmware.vcloud.vAppNetwork+xml" name="Build Private" href="https://vm-vcloud/api/network/c3c3f0dd-ef8f-4e10-90d2-84db7bac7a16"/>
+    <Link rel="up" type="application/vnd.vmware.vcloud.vdc+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0"/>
+    <Description>testing instance</Description>
+    <Tasks>
+        <Task status="running" startTime="2012-01-12T13:54:41.867-05:00" operationName="vdcCopyVapp" operation="Copying Virtual Application soapUI-test(5adbcba3-f861-4fd7-a395-f7d82008f8b7)" expiryTime="2012-04-11T13:54:41.867-04:00" name="task" id="urn:vcloud:task:2388a8e5-d074-4fba-a261-7920e079d415" type="application/vnd.vmware.vcloud.task+xml"
+              href="https://vm-vcloud/api/task/b034df55-fe81-4798-bc81-1f0fd0ead450">
+            <Link rel="task:cancel" href="https://vm-vcloud/api/task/2388a8e5-d074-4fba-a261-7920e079d415/action/cancel"/>
+            <Owner type="application/vnd.vmware.vcloud.vApp+xml" name="soapUI-test" href="https://vm-vcloud/api/vApp/vapp-5adbcba3-f861-4fd7-a395-f7d82008f8b7"/>
+            <User type="application/vnd.vmware.admin.user+xml" name="labmanapi" href="https://vm-vcloud/api/admin/user/46f62cc3-65e0-4417-967a-a538ec6caea3"/>
+            <Organization type="application/vnd.vmware.vcloud.org+xml" name="MyOrg" href="https://vm-vcloud/api/org/96726c78-4ae3-402f-b08b-7a78c6903d2a"/>
+            <Progress>1</Progress>
+        </Task>
+    </Tasks>
+    <Owner type="application/vnd.vmware.vcloud.owner+xml">
+        <User type="application/vnd.vmware.admin.user+xml" name="labmanapi" href="https://vm-vcloud/api/admin/user/46f62cc3-65e0-4417-967a-a538ec6caea3"/>
+    </Owner>
+    <InMaintenanceMode>false</InMaintenanceMode>
+</VApp>
\ No newline at end of file

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_instantiateVAppTemplate.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_instantiateVAppTemplate.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_instantiateVAppTemplate.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_instantiateVAppTemplate.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,23 @@
+<VApp deployed="false" status="0" name="testNode" id="urn:vcloud:vapp:b0331206-dcc4-4874-b90a-351ff6502124" type="application/vnd.vmware.vcloud.vApp+xml"
+      href="https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd" xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+    <Link rel="down" type="application/vnd.vmware.vcloud.vAppNetwork+xml" name="vCloud - Default" href="https://vm-vcloud/api/network/0601210e-e32a-43c1-94cd-e0f4fea04050"/>
+    <Link rel="down" type="application/vnd.vmware.vcloud.controlAccess+xml" href="https://vm-vcloud/api/vApp/vapp-b0331206-dcc4-4874-b90a-351ff6502124/controlAccess/"/>
+    <Link rel="up" type="application/vnd.vmware.vcloud.vdc+xml" href="https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0"/>
+    <Link rel="down" type="application/vnd.vmware.vcloud.owner+xml" href="https://vm-vcloud/api/vApp/vapp-b0331206-dcc4-4874-b90a-351ff6502124/owner"/>
+    <Link rel="down" type="application/vnd.vmware.vcloud.metadata+xml" href="https://vm-vcloud/api/vApp/vapp-b0331206-dcc4-4874-b90a-351ff6502124/metadata"/>
+    <Description>testing instance</Description>
+    <Tasks>
+        <Task status="running" startTime="2012-01-11T04:10:07.804-05:00" operationName="vdcInstantiateVapp" operation="Creating Virtual Application soapUI-test(b0331206-dcc4-4874-b90a-351ff6502124)" expiryTime="2012-04-10T04:10:07.804-04:00" name="task" id="urn:vcloud:task:74737b15-3cdf-4302-a13c-0310dca5870c" type="application/vnd.vmware.vcloud.task+xml"
+              href="https://vm-vcloud/api/task/b034df55-fe81-4798-bc81-1f0fd0ead450">
+            <Link rel="task:cancel" href="https://vm-vcloud/api/task/74737b15-3cdf-4302-a13c-0310dca5870c/action/cancel"/>
+            <Owner type="application/vnd.vmware.vcloud.vApp+xml" name="soapUI-test" href="https://vm-vcloud/api/vApp/vapp-b0331206-dcc4-4874-b90a-351ff6502124"/>
+            <User type="application/vnd.vmware.admin.user+xml" name="labmanapi" href="https://vm-vcloud/api/admin/user/46f62cc3-65e0-4417-967a-a538ec6caea3"/>
+            <Organization type="application/vnd.vmware.vcloud.org+xml" name="MyOrg" href="https://vm-vcloud/api/org/96726c78-4ae3-402f-b08b-7a78c6903d2a"/>
+            <Progress>1</Progress>
+        </Task>
+    </Tasks>
+    <Owner type="application/vnd.vmware.vcloud.owner+xml">
+        <User type="application/vnd.vmware.admin.user+xml" name="labmanapi" href="https://vm-vcloud/api/admin/user/46f62cc3-65e0-4417-967a-a538ec6caea3"/>
+    </Owner>
+    <InMaintenanceMode>false</InMaintenanceMode>
+</VApp>
\ No newline at end of file

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/get_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/get_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/get_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/get_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,17 @@
+<GuestCustomizationSection type="application/vnd.vmware.vcloud.guestCustomizationSection+xml"
+                           href="https://vm-vcloud/api/vApp/vm-9e8837e6-5c4c-4112-bf01-5498616d865f/guestCustomizationSection/"
+                           xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1"
+                           ovf:required="false">
+    <ovf:Info>Specifies Guest OS Customization Settings</ovf:Info>
+    <Enabled>true</Enabled>
+    <ChangeSid>false</ChangeSid>
+    <VirtualMachineId>9e8837e6-5c4c-4112-bf01-5498616d865f</VirtualMachineId>
+    <JoinDomainEnabled>false</JoinDomainEnabled>
+    <UseOrgSettings>false</UseOrgSettings>
+    <AdminPasswordEnabled>true</AdminPasswordEnabled>
+    <AdminPasswordAuto>true</AdminPasswordAuto>
+    <AdminPassword>aabbccddee</AdminPassword>
+    <ResetPasswordRequired>false</ResetPasswordRequired>
+    <ComputerName>VMMast-001</ComputerName>
+    <Link rel="edit" type="application/vnd.vmware.vcloud.guestCustomizationSection+xml" href="https://vm-vcloud/api/vApp/vm-9e8837e6-5c4c-4112-bf01-5498616d865f/guestCustomizationSection/"/>
+</GuestCustomizationSection>

Added: libcloud/trunk/test/compute/fixtures/vcloud_1_5/put_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcloud_1_5/put_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml?rev=1327809&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcloud_1_5/put_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcloud_1_5/put_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml Thu Apr 19 04:01:06 2012
@@ -0,0 +1,10 @@
+<Task status="running" startTime="2012-01-09T04:25:51.830-05:00" operationName="vappUpdateVm"
+      operation="Updating Virtual Machine ScrumVM_Master(9e8837e6-5c4c-4112-bf01-5498616d865f)"
+      expiryTime="2012-04-08T04:25:51.830-04:00" name="task"
+      id="urn:vcloud:task:db411422-3f0c-4047-a0a0-c89c23a63522" type="application/vnd.vmware.vcloud.task+xml"
+      href="https://vm-vcloud/api/task/b034df55-fe81-4798-bc81-1f0fd0ead450" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://65.41.64.27/api/v1.5/schema/master.xsd" xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+    <Link rel="task:cancel" href="https://vm-vcloud/api/task/db411422-3f0c-4047-a0a0-c89c23a63522/action/cancel"/>
+    <Owner type="application/vnd.vmware.vcloud.vm+xml" name="VM_Master" href="https://vm-vcloud/api/vApp/vm-9e8837e6-5c4c-4112-bf01-5498616d865f"/>
+    <User type="application/vnd.vmware.admin.user+xml" name="labmanapi" href="https://vm-vcloud/api/admin/user/46f62cc3-65e0-4417-967a-a538ec6caea3"/>
+    <Organization type="application/vnd.vmware.vcloud.org+xml" name="MyOrg" href="https://vm-vcloud/api/org/96726c78-4ae3-402f-b08b-7a78c6903d2a"/>
+</Task>
\ No newline at end of file

Modified: libcloud/trunk/test/compute/test_vcloud.py
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/test_vcloud.py?rev=1327809&r1=1327808&r2=1327809&view=diff
==============================================================================
--- libcloud/trunk/test/compute/test_vcloud.py (original)
+++ libcloud/trunk/test/compute/test_vcloud.py Thu Apr 19 04:01:06 2012
@@ -12,13 +12,17 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
+
 import sys
 import unittest
-from libcloud.utils.py3 import httplib
 
-from libcloud.compute.drivers.vcloud import TerremarkDriver
-from libcloud.compute.drivers.vcloud import VCloudNodeDriver
-from libcloud.compute.base import Node
+from xml.etree import ElementTree as ET
+
+from libcloud.utils.py3 import httplib, b
+
+from libcloud.compute.drivers.vcloud import TerremarkDriver, VCloudNodeDriver
+from libcloud.compute.drivers.vcloud import VCloud_1_5_NodeDriver, Vdc
+from libcloud.compute.base import Node, NodeImage
 from libcloud.compute.types import NodeState
 
 from test import MockHttp
@@ -77,6 +81,101 @@ class TerremarkTests(unittest.TestCase, 
         ret = self.driver.destroy_node(node)
         self.assertTrue(ret)
 
+class VCloud_1_5_Tests(unittest.TestCase, TestCaseMixin):
+
+    def setUp(self):
+        VCloudNodeDriver.connectionCls.host = 'test'
+        VCloudNodeDriver.connectionCls.conn_classes = (None, VCloud_1_5_MockHttp)
+        VCloud_1_5_MockHttp.type = None
+        self.driver = VCloud_1_5_NodeDriver(*VCLOUD_PARAMS)
+
+    def test_list_images(self):
+        ret = self.driver.list_images()
+        self.assertEqual('https://vm-vcloud/api/vAppTemplate/vappTemplate-ac1bc027-bf8c-4050-8643-4971f691c158', ret[0].id)
+
+    def test_list_sizes(self):
+        ret = self.driver.list_sizes()
+        self.assertEqual(ret[0].ram, 512)
+
+    def test_networks(self):
+        ret = self.driver.networks
+        #self.assertEqual(ret[0].get('href'), 'https://vm-vcloud/api/network/dca8b667-6c8f-4c3e-be57-7a9425dba4f4')
+
+    def test_create_node(self):
+        image = self.driver.list_images()[0]
+        size = self.driver.list_sizes()[0]
+        node = self.driver.create_node(
+            name='testNode',
+            image=image,
+            size=size,
+            ex_vdc=Vdc('https://vm-vcloud/api/vdc/3d9ae28c-1de9-4307-8107-9356ff8ba6d0', 'MyVdc', self.driver),
+            ex_network='https://vm-vcloud/api/network/dca8b667-6c8f-4c3e-be57-7a9425dba4f4',
+            cpus=2,
+            )
+        self.assertTrue(isinstance(node, Node))
+        self.assertEqual('https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a', node.id)
+        self.assertEqual('testNode', node.name)
+
+    def test_create_node_clone(self):
+        image = self.driver.list_nodes()[0]
+        node = self.driver.create_node(name='testNode', image=image)
+        self.assertTrue(isinstance(node, Node))
+        self.assertEqual('https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a', node.id)
+        self.assertEqual('testNode', node.name)
+
+    def test_list_nodes(self):
+        ret = self.driver.list_nodes()
+        node = ret[0]
+        self.assertEqual(node.id, 'https://vm-vcloud/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a')
+        self.assertEqual(node.name, 'testNode')
+        self.assertEqual(node.state, NodeState.RUNNING)
+        self.assertEqual(node.public_ips, ['65.41.67.2'])
+        self.assertEqual(node.private_ips, [])
+
+    def test_reboot_node(self):
+        node = self.driver.list_nodes()[0]
+        ret = self.driver.reboot_node(node)
+        self.assertTrue(ret)
+
+    def test_destroy_node(self):
+        node = self.driver.list_nodes()[0]
+        ret = self.driver.destroy_node(node)
+        self.assertTrue(ret)
+
+    def test_validate_vm_names(self):
+        # valid inputs
+        self.driver._validate_vm_names(['host-n-ame-name'])
+        self.driver._validate_vm_names(['tc-mybuild-b1'])
+        self.driver._validate_vm_names(None)
+        # invalid inputs
+        self.assertRaises(ValueError, self.driver._validate_vm_names, ['invalid.host'])
+        self.assertRaises(ValueError, self.driver._validate_vm_names, ['inv-alid.host'])
+        self.assertRaises(ValueError, self.driver._validate_vm_names, ['hostnametoooolong'])
+        self.assertRaises(ValueError, self.driver._validate_vm_names, ['host$name'])
+
+    def test_change_vm_names(self):
+        self.driver._change_vm_names('/api/vApp/vapp-8c57a5b6-e61b-48ca-8a78-3b70ee65ef6a', ['changed1', 'changed2'])
+
+    def test_is_node(self):
+        self.assertTrue(self.driver._is_node(Node('testId', 'testNode', state=0, public_ips=[], private_ips=[], driver=self.driver)))
+        self.assertFalse(self.driver._is_node(NodeImage('testId', 'testNode', driver=self.driver)))
+
+    def test_ex_undeploy(self):
+        node = self.driver.ex_undeploy_node(Node('https://test/api/vApp/undeployTest', 'testNode', state=0, public_ips=[], private_ips=[], driver=self.driver))
+        self.assertEqual(node.state, NodeState.TERMINATED)
+
+    def test_ex_undeploy_with_error(self):
+        node = self.driver.ex_undeploy_node(Node('https://test/api/vApp/undeployErrorTest', 'testNode', state=0, public_ips=[], private_ips=[], driver=self.driver))
+        self.assertEqual(node.state, NodeState.TERMINATED)
+
+    def test_ex_find_node(self):
+        node = self.driver.ex_find_node('testNode')
+        self.assertEqual(node.name, "testNode")
+        node = self.driver.ex_find_node('testNode', self.driver.vdcs[0])
+        self.assertEqual(node.name, "testNode")
+        node = self.driver.ex_find_node('testNonExisting', self.driver.vdcs[0])
+        self.assertEqual(node, None)
+
 
 class TerremarkMockHttp(MockHttp):
 
@@ -138,5 +237,117 @@ class TerremarkMockHttp(MockHttp):
         body = self.fixtures.load('api_v0_8_task_11001.xml')
         return (httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED])
 
+
+class VCloud_1_5_MockHttp(MockHttp):
+
+    fixtures = ComputeFileFixtures('vcloud_1_5')
+
+    def _api_sessions(self, method, url, body, headers):
+        headers['x-vcloud-authorization'] = 'testtoken'
+        body = self.fixtures.load('api_sessions.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_org(self, method, url, body, headers):
+        body = self.fixtures.load('api_org.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_org_96726c78_4ae3_402f_b08b_7a78c6903d2a(self, method, url, body, headers):
+        body = self.fixtures.load('api_org_96726c78_4ae3_402f_b08b_7a78c6903d2a.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_network_dca8b667_6c8f_4c3e_be57_7a9425dba4f4(self, method, url, body, headers):
+        body = self.fixtures.load('api_network_dca8b667_6c8f_4c3e_be57_7a9425dba4f4.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0(self, method, url, body, headers):
+        body = self.fixtures.load('api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_instantiateVAppTemplate(self, method, url, body, headers):
+        body = self.fixtures.load('api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_instantiateVAppTemplate.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    def _api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_powerOn(self, method, url, body, headers):
+        body = self.fixtures.load('api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_powerOn.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    # Clone
+    def _api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_cloneVApp(self, method, url, body, headers):
+        body = self.fixtures.load('api_vdc_3d9ae28c_1de9_4307_8107_9356ff8ba6d0_action_cloneVApp.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    def _api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_networkConnectionSection(self, method, url, body, headers):
+        body = self.fixtures.load('api_task_b034df55_fe81_4798_bc81_1f0fd0ead450.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    def _api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a(self, method, url, body, headers):
+        status = httplib.OK
+        if method == 'GET':
+            body = self.fixtures.load('api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a.xml')
+            status = httplib.OK
+        elif method == 'DELETE':
+            body = self.fixtures.load('api_task_b034df55_fe81_4798_bc81_1f0fd0ead450.xml')
+            status = httplib.ACCEPTED
+        return status, body, headers, httplib.responses[status]
+
+    def _api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045(self, method, url, body, headers):
+        body = self.fixtures.load('put_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    def _api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection(self, method, url, body, headers):
+        if method == 'GET':
+            body = self.fixtures.load('get_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml')
+            status = httplib.OK
+        else:
+            body = self.fixtures.load('put_api_vApp_vm_dd75d1d3_5b7b_48f0_aff3_69622ab7e045_guestCustomizationSection.xml')
+            status = httplib.ACCEPTED
+        return status, body, headers, httplib.responses[status]
+
+    def _api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_reset(self, method, url, body, headers):
+        body = self.fixtures.load('api_vApp_vapp_8c57a5b6_e61b_48ca_8a78_3b70ee65ef6a_power_action_reset.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    def _api_task_b034df55_fe81_4798_bc81_1f0fd0ead450(self, method, url, body, headers):
+        body = self.fixtures.load('api_task_b034df55_fe81_4798_bc81_1f0fd0ead450.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_catalog_cddb3cb2_3394_4b14_b831_11fbc4028da4(self, method, url, body, headers):
+        body = self.fixtures.load('api_catalog_cddb3cb2_3394_4b14_b831_11fbc4028da4.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_catalogItem_3132e037_759b_4627_9056_ca66466fa607(self, method, url, body, headers):
+        body = self.fixtures.load('api_catalogItem_3132e037_759b_4627_9056_ca66466fa607.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_vApp_undeployTest(self, method, url, body, headers):
+        body = self.fixtures.load('api_vApp_undeployTest.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_vApp_undeployTest_action_undeploy(self, method, url, body, headers):
+        body = self.fixtures.load('api_task_undeploy.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    def _api_task_undeploy(self, method, url, body, headers):
+        body = self.fixtures.load('api_task_undeploy.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_vApp_undeployErrorTest(self, method, url, body, headers):
+        body = self.fixtures.load('api_vApp_undeployTest.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_vApp_undeployErrorTest_action_undeploy(self, method, url, body, headers):
+        if b('shutdown') in b(body):
+            body = self.fixtures.load('api_task_undeploy_error.xml')
+        else:
+            body = self.fixtures.load('api_task_undeploy.xml')
+        return httplib.ACCEPTED, body, headers, httplib.responses[httplib.ACCEPTED]
+
+    def _api_task_undeployError(self, method, url, body, headers):
+        body = self.fixtures.load('api_task_undeploy_error.xml')
+        return httplib.OK, body, headers, httplib.responses[httplib.OK]
+
+    def _api_vApp_vapp_access_to_resource_forbidden(self, method, url, body, headers):
+        raise Exception(ET.fromstring(self.fixtures.load('api_vApp_vapp_access_to_resource_forbidden.xml')))
+
 if __name__ == '__main__':
     sys.exit(unittest.main())