Fix machine UUID assignment after SQLAlchemy started returning Unicode objects.
[invirt/packages/invirt-xen-config.git] / invirt-database
index 6008c7a..b99b548 100644 (file)
@@ -23,11 +23,15 @@ if 'cdrom_image' in locals():
     check(cdrom is not None)
 
 memory = machine.memory
-maxmem = '2048'
+if machine_type.hvm:
+    # Disable populate-on-demand
+    maxmem = memory
+else:
+    maxmem = '2048'
 check(re.match('^[A-Za-z0-9][A-Za-z0-9._-]*$', machine.name))
 name = prefix + machine_name
 check(re.match('^[0-9a-f-]+$', machine.uuid))
-uuid = machine.uuid
+uuid = str(machine.uuid)
 
 vcpus = machine.cpus
 
@@ -103,9 +107,10 @@ elif cdrom is not None:
     codepath = 'hvm'
 
 if codepath == 'hvm':
+    xen_platform_pci = 1
     ioemu = "ioemu:"
-    viftype = "type=ioemu, "
-    kernel = '/usr/lib/xen/boot/hvmloader'
+    viftype = "model=pcnet, "
+    kernel = '/usr/lib/xen-4.1/boot/hvmloader'
     builder = 'hvm'
     vnc = 1
     device_model = '/usr/sbin/qemu-dm-invirt'
@@ -116,6 +121,8 @@ elif codepath == 'paravm':
 
 for n in machine.nics:
     check(re.match('^[0-9a-fA-F:]+$', n.mac_addr) and re.match('^[0-9.]*$', n.ip))
+    if n.nic_type:
+        viftype = viftype.replace("pcnet", n.nic_type)
     d = ('%smac=%s, ip=%s, script=vif-invirtroute netdev=%s'
          % (viftype, n.mac_addr, n.ip, config.xen.iface))
     vif.append(d)