X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/ce218046309253419efd5665ab2fa507e87a1d01..7851ddf7c04bce0c49ff70b7a9e75eab9969df7b:/main.py diff --git a/main.py b/main.py index 29b410e..e182095 100755 --- a/main.py +++ b/main.py @@ -13,7 +13,6 @@ import sys import time from StringIO import StringIO - def revertStandardError(): """Move stderr to stdout, and return the contents of the old stderr.""" errio = sys.stderr @@ -184,8 +183,12 @@ def create(user, fields): def getListDict(user): - machines = [m for m in Machine.select() - if validation.haveAccess(user, m)] + machines = [m for m in Machine.select() + if validation.haveAccess(user, m)] + #if user == 'moo': + # machines = Machine.select() + #else: + # machines = Machine.query().join('users').filter_by(user=user).all() checkpoint.checkpoint('Got my machines') on = {} has_vnc = {} @@ -271,6 +274,15 @@ def vnc(user, fields): authtoken=token) return templates.vnc(searchList=[d]) +def getHostname(nic): + if nic.hostname and '.' in nic.hostname: + return nic.hostname + elif nic.machine: + return nic.machine.name + '.servers.csail.mit.edu' + else: + return None + + def getNicInfo(data_dict, machine): """Helper function for info, get data on nics for a machine. @@ -286,8 +298,7 @@ def getNicInfo(data_dict, machine): for i in range(len(machine.nics)): nic_fields.extend([(x % i, y % i) for x, y in nic_fields_template]) if not i: - data_dict['nic%s_hostname' % i] = (machine.name + - '.servers.csail.mit.edu') + data_dict['nic%s_hostname' % i] = getHostname(machine.nics[i]) data_dict['nic%s_mac' % i] = machine.nics[i].mac_addr data_dict['nic%s_ip' % i] = machine.nics[i].ip if len(machine.nics) == 1: @@ -637,7 +648,8 @@ if __name__ == '__main__': if not operation: operation = 'list' - #main(operation, u, fields) - import profile - profile.run('main(operation, u, fields)', 'log-'+operation) - + if os.getenv("SIPB_XEN_PROFILE"): + import profile + profile.run('main(operation, u, fields)', 'log-'+operation) + else: + main(operation, u, fields)