Look for CD images in /dev/xenvg/image_* and validate them against the
[invirt/packages/invirt-database.git] / client / etc / xen / sipb-database
index 4bf7382..0d4d466 100644 (file)
@@ -18,7 +18,11 @@ def check(b):
 
 machine = models.Machine.query().filter_by(name=machine_name).one()
 check(machine is not None)
 
 machine = models.Machine.query().filter_by(name=machine_name).one()
 check(machine is not None)
-machine_type = models.Type.query().filter_by(type_id=machine.type_id).one()
+machine_type = machine.type
+cdrom = None
+if 'cdrom_image' in locals():
+    cdrom = models.CDROM.query().filter_by(name=cdrom_image).one()
+    check(cdrom is not None)
 
 memory = machine.memory
 maxmem = memory
 
 memory = machine.memory
 maxmem = memory
@@ -63,9 +67,8 @@ if 'mirror' in locals(): #Installer
         extra += ' noinstall'
     root = '/dev/hdb1'
     codepath = None
         extra += ' noinstall'
     root = '/dev/hdb1'
     codepath = None
-elif 'cdrom_image' in locals():
-    check(re.match('^[A-Za-z0-9][A-Za-z0-9_.-]*$', cdrom_image))
-    disk.append('phy:/srv/images/' + cdrom_image + '.iso,hdc:cdrom,r')
+elif cdrom is not None:
+    disk.append('phy:/etc/xenvg/image_' + cdrom.cdrom_id + ',hdc:cdrom,r')
     boot = 'd'
     codepath = 'hvm'
 
     boot = 'd'
     codepath = 'hvm'