Remove backdoor.
[invirt/packages/invirt-web.git] / controls.py
index 3671f21..620402b 100644 (file)
@@ -87,13 +87,13 @@ def unregisterMachine(machine):
     """Unregister a machine to not be controlled by the web interface"""
     remctl('web', 'unregister', machine.name)
 
-def createVm(owner, contact, name, memory, disk, is_hvm, cdrom):
+def createVm(owner, contact, name, memory, disk_size, is_hvm, cdrom):
     """Create a VM and put it in the database"""
     # put stuff in the table
     transaction = ctx.current.create_transaction()
     try:
         validation.validMemory(owner, memory)
-        validation.validDisk(owner, disk  * 1. / 1024)
+        validation.validDisk(owner, disk_size  * 1. / 1024)
         validation.validAddVm(owner)
         res = meta.engine.execute('select nextval('
                                   '\'"machines_machine_id_seq"\')')
@@ -110,8 +110,8 @@ def createVm(owner, contact, name, memory, disk, is_hvm, cdrom):
         machine_type = Type.get_by(hvm=is_hvm)
         machine.type_id = machine_type.type_id
         ctx.current.save(machine)
-        disk = Disk(machine.machine_id, 
-                    'hda', disk)
+        disk = Disk(machine_id=machine.machine_id, 
+                    guest_device_name='hda', size=disk_size)
         open_nics = NIC.select_by(machine_id=None)
         if not open_nics: #No IPs left!
             raise CodeError("No IP addresses left!  "
@@ -201,6 +201,8 @@ def deleteVM(machine):
             ctx.current.save(nic)
         for disk in machine.disks:
             ctx.current.delete(disk)
+        for access in machine.users:
+            ctx.current.delete(access)
         ctx.current.delete(machine)
         transaction.commit()
     except: