Fixes OVF converter and upload

Adds the ability to specify hardware version
Defaults hardware version to 14 for compatibility
Displays list of OS types in help
Adds a working vCD upload
Adds simple usage file
Cleans up installation path

Bug 850

Change-Id: I1f4658e48869149c523a80401487e3e6c25dc809
Signed-off-by: beierl <mbeierl@vmware.com>
diff --git a/tools/OVF_converter/ovf_template/template.xml b/tools/OVF_converter/ovf_template/template.xml
index 5cbb328..a963582 100644
--- a/tools/OVF_converter/ovf_template/template.xml
+++ b/tools/OVF_converter/ovf_template/template.xml
@@ -1,87 +1,107 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Envelope xmlns="http://schemas.dmtf.org/ovf/envelope/1" xmlns:cim="http://schemas.dmtf.org/wbem/wscim/1/common" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:vmw="http://www.vmware.com/schema/ovf" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

-  <References>

-     <File ovf:href="disk_img_filename.vmdk" ovf:id="file1" />

-  </References>

-   <DiskSection>

-    <Info>Virtual disk information</Info>

-    <Disk ovf:capacity="1" ovf:capacityAllocationUnits="byte" ovf:diskId="vmdisk1" ovf:fileRef="file1" ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized" ovf:populatedSize="0"/>

-  </DiskSection>

-  

-  <NetworkSection>

-	<Info>List of logical networks used in the package</Info> 

- </NetworkSection>

- 	

- <VirtualSystem ovf:id="vm">

-    <Info>A virtual machine</Info>

-    <Name>Virtual machine name</Name>

-    

-    <OperatingSystemSection ovf:id="1">

-      <Info>The kind of installed guest operating system</Info>

-      <Description>Other (32-bit)</Description>

-    </OperatingSystemSection>

-

-    <VirtualHardwareSection>

-      <Info>Virtual hardware requirements</Info>

-      <System>

-		<vssd:ElementName>Virtual Hardware Family</vssd:ElementName>

-		<vssd:InstanceID>0</vssd:InstanceID>

-		<vssd:VirtualSystemIdentifier>Test1</vssd:VirtualSystemIdentifier>

-		<vssd:VirtualSystemType>vmx-7</vssd:VirtualSystemType>

-	  </System>

-           

-      <Item>

-        <rasd:AllocationUnits>hertz * 10^6</rasd:AllocationUnits>

-        <rasd:Description>Number of Virtual CPUs</rasd:Description>

-        <rasd:ElementName>1 virtual CPU(s)</rasd:ElementName>

-        <rasd:InstanceID>1</rasd:InstanceID>

-        <rasd:ResourceType>3</rasd:ResourceType>

-        <rasd:VirtualQuantity>1</rasd:VirtualQuantity>

-      </Item>

-      <Item>

-        <rasd:AllocationUnits>byte * 2^20</rasd:AllocationUnits>

-        <rasd:Description>Memory Size</rasd:Description>

-        <rasd:ElementName>1GB of memory</rasd:ElementName>

-        <rasd:InstanceID>2</rasd:InstanceID>

-        <rasd:ResourceType>4</rasd:ResourceType>

-        <rasd:VirtualQuantity>1024</rasd:VirtualQuantity>

-      </Item>

-      <Item>

-        <rasd:Address>0</rasd:Address>

-        <rasd:Description>SCSI Controller</rasd:Description>

-        <rasd:ElementName>scsiController0</rasd:ElementName>

-        <rasd:InstanceID>3</rasd:InstanceID>

-        <rasd:ResourceSubType>lsilogicsas</rasd:ResourceSubType>

-        <rasd:ResourceType>6</rasd:ResourceType>

-      </Item>

-      <Item>

-        <rasd:AddressOnParent>0</rasd:AddressOnParent>

-        <rasd:ElementName>disk0</rasd:ElementName>

-        <rasd:HostResource>ovf:/disk/vmdisk1</rasd:HostResource>

-        <rasd:InstanceID>4</rasd:InstanceID>

-        <rasd:Parent>3</rasd:Parent>

-        <rasd:ResourceType>17</rasd:ResourceType>

-      </Item>

-      <Item ovf:required="false">

-        <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>

-        <rasd:ElementName>video</rasd:ElementName>

-        <rasd:InstanceID>5</rasd:InstanceID>

-        <rasd:ResourceType>24</rasd:ResourceType>

-      </Item>

-      <Item ovf:required="false">

-        <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>

-        <rasd:ElementName>vmci</rasd:ElementName>

-        <rasd:InstanceID>6</rasd:InstanceID>

-        <rasd:ResourceSubType>vmware.vmci</rasd:ResourceSubType>

-        <rasd:ResourceType>1</rasd:ResourceType>

-      </Item>

-      <vmw:Config ovf:required="false" vmw:key="cpuHotAddEnabled" vmw:value="true"/>

-      <vmw:Config ovf:required="false" vmw:key="powerOpInfo.powerOffType" vmw:value="soft"/>

-      <vmw:Config ovf:required="false" vmw:key="powerOpInfo.resetType" vmw:value="soft"/>

-      <vmw:Config ovf:required="false" vmw:key="powerOpInfo.suspendType" vmw:value="soft"/>

-      <vmw:Config ovf:required="false" vmw:key="tools.syncTimeWithHost" vmw:value="true"/>

-      <vmw:Config ovf:required="false" vmw:key="tools.toolsUpgradePolicy" vmw:value="upgradeAtPowerCycle"/>

-    </VirtualHardwareSection>

-		

-  </VirtualSystem>

-</Envelope>
\ No newline at end of file
+<!--
+ Copyright 2016-2019 VMware Inc.
+ This file is part of ETSI OSM
+ All Rights Reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License"); you may
+ not use this file except in compliance with the License. You may obtain
+ a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS, 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.
+
+ For those usages not covered by the Apache License, Version 2.0 please
+ contact:  osslegalrouting@vmware.com
+-->
+<?xml version="1.0" encoding="UTF-8"?>
+<Envelope xmlns="http://schemas.dmtf.org/ovf/envelope/1" xmlns:cim="http://schemas.dmtf.org/wbem/wscim/1/common" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:vmw="http://www.vmware.com/schema/ovf" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <References>
+     <File ovf:href="disk_img_filename.vmdk" ovf:id="file1" />
+  </References>
+   <DiskSection>
+    <Info>Virtual disk information</Info>
+    <Disk ovf:capacity="1" ovf:capacityAllocationUnits="byte" ovf:diskId="vmdisk1" ovf:fileRef="file1" ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized" ovf:populatedSize="0"/>
+  </DiskSection>
+
+  <NetworkSection>
+    <Info>List of logical networks used in the package</Info>
+ </NetworkSection>
+
+ <VirtualSystem ovf:id="vm">
+    <Info>A virtual machine</Info>
+    <Name>Virtual machine name</Name>
+
+    <OperatingSystemSection ovf:id="1">
+      <Info>The kind of installed guest operating system</Info>
+      <Description>Other (32-bit)</Description>
+    </OperatingSystemSection>
+
+    <VirtualHardwareSection>
+      <Info>Virtual hardware requirements</Info>
+      <System>
+        <vssd:ElementName>Virtual Hardware Family</vssd:ElementName>
+        <vssd:InstanceID>0</vssd:InstanceID>
+        <vssd:VirtualSystemIdentifier>Test1</vssd:VirtualSystemIdentifier>
+        <vssd:VirtualSystemType>vmx-14</vssd:VirtualSystemType>
+      </System>
+
+      <Item>
+        <rasd:AllocationUnits>hertz * 10^6</rasd:AllocationUnits>
+        <rasd:Description>Number of Virtual CPUs</rasd:Description>
+        <rasd:ElementName>1 virtual CPU(s)</rasd:ElementName>
+        <rasd:InstanceID>1</rasd:InstanceID>
+        <rasd:ResourceType>3</rasd:ResourceType>
+        <rasd:VirtualQuantity>1</rasd:VirtualQuantity>
+      </Item>
+      <Item>
+        <rasd:AllocationUnits>byte * 2^20</rasd:AllocationUnits>
+        <rasd:Description>Memory Size</rasd:Description>
+        <rasd:ElementName>1GB of memory</rasd:ElementName>
+        <rasd:InstanceID>2</rasd:InstanceID>
+        <rasd:ResourceType>4</rasd:ResourceType>
+        <rasd:VirtualQuantity>1024</rasd:VirtualQuantity>
+      </Item>
+      <Item>
+        <rasd:Address>0</rasd:Address>
+        <rasd:Description>SCSI Controller</rasd:Description>
+        <rasd:ElementName>scsiController0</rasd:ElementName>
+        <rasd:InstanceID>3</rasd:InstanceID>
+        <rasd:ResourceSubType>lsilogicsas</rasd:ResourceSubType>
+        <rasd:ResourceType>6</rasd:ResourceType>
+      </Item>
+      <Item>
+        <rasd:AddressOnParent>0</rasd:AddressOnParent>
+        <rasd:ElementName>disk0</rasd:ElementName>
+        <rasd:HostResource>ovf:/disk/vmdisk1</rasd:HostResource>
+        <rasd:InstanceID>4</rasd:InstanceID>
+        <rasd:Parent>3</rasd:Parent>
+        <rasd:ResourceType>17</rasd:ResourceType>
+      </Item>
+      <Item ovf:required="false">
+        <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
+        <rasd:ElementName>video</rasd:ElementName>
+        <rasd:InstanceID>5</rasd:InstanceID>
+        <rasd:ResourceType>24</rasd:ResourceType>
+      </Item>
+      <Item ovf:required="false">
+        <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
+        <rasd:ElementName>vmci</rasd:ElementName>
+        <rasd:InstanceID>6</rasd:InstanceID>
+        <rasd:ResourceSubType>vmware.vmci</rasd:ResourceSubType>
+        <rasd:ResourceType>1</rasd:ResourceType>
+      </Item>
+      <vmw:Config ovf:required="false" vmw:key="cpuHotAddEnabled" vmw:value="true"/>
+      <vmw:Config ovf:required="false" vmw:key="powerOpInfo.powerOffType" vmw:value="soft"/>
+      <vmw:Config ovf:required="false" vmw:key="powerOpInfo.resetType" vmw:value="soft"/>
+      <vmw:Config ovf:required="false" vmw:key="powerOpInfo.suspendType" vmw:value="soft"/>
+      <vmw:Config ovf:required="false" vmw:key="tools.syncTimeWithHost" vmw:value="true"/>
+      <vmw:Config ovf:required="false" vmw:key="tools.toolsUpgradePolicy" vmw:value="upgradeAtPowerCycle"/>
+    </VirtualHardwareSection>
+
+  </VirtualSystem>
+</Envelope>