X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/a8a01558c5e9b5337b2c18edb01fa78df5c4afd0..2be0969e153ace507ec07b27d156b50e54e00f94:/code/main.py
diff --git a/code/main.py b/code/main.py
index 57cfbe2..86da50e 100755
--- a/code/main.py
+++ b/code/main.py
@@ -196,7 +196,7 @@ console will suffer artifacts.
'Windows': """
Windows 7: The Windows 7 image is licensed for all MIT students and will automatically activate off the network; see the licensing agreement for details. The installer requires 512 MiB RAM and at least 15 GiB disk space (20 GiB or more recommended).
Windows Vista: The Vista image is licensed for all MIT students and will automatically activate off the network; see the licensing confirmation e-mail for details. The installer requires 512 MiB RAM and at least 7.5 GiB disk space (15 GiB or more recommended).
-Windows XP: This is the volume license CD image. You will need your own volume license key to complete the install. We do not have these available for the general MIT community; ask your department if they have one, or visit http://msca.mit.edu/ if you are staff/faculty to request one.
+Windows XP: This is the volume license CD image. You will need your own volume license key to complete the install. We do not have these available for the general MIT community; ask your department if they have one, or visit http://msca.mit.edu/ if you are staff/faculty to request one.
"""
}
@@ -549,7 +549,7 @@ def modifyDict(username, state, machine_id, fields):
if hasattr(validate, 'contact'):
machine.contact = validate.contact
- session.save_or_update(machine)
+ session.add(machine)
session.commit()
except:
session.rollback()
@@ -563,10 +563,10 @@ def modifyDict(username, state, machine_id, fields):
if disk.size != disksize:
olddisk[disk.guest_device_name] = disksize
disk.size = disksize
- session.save_or_update(disk)
+ session.add(disk)
for diskname in olddisk:
controls.resizeDisk(oldname, diskname, str(olddisk[diskname]))
- session.save_or_update(machine)
+ session.add(machine)
session.commit()
except:
session.rollback()
@@ -581,7 +581,7 @@ def modifyDict(username, state, machine_id, fields):
n.hostname = validate.name
if hasattr(validate, 'name'):
controls.renameMachine(machine, oldname, validate.name)
- session.save_or_update(machine)
+ session.add(machine)
session.commit()
except:
session.rollback()
@@ -594,7 +594,11 @@ def modifyDict(username, state, machine_id, fields):
def infoDict(username, state, machine):
"""Get the variables used by info.tmpl."""
- status = controls.statusInfo(machine)
+ try:
+ status = controls.statusInfo(machine)
+ except CodeError, e:
+ # machine was shut down in between the call to listInfoDict and this
+ status = None
has_vnc = hasVnc(status)
if status is None:
main_status = dict(name=machine.name,