From db4118a58cef01c0ad8ac5c76c752c6051e1575b Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=2E=C3=87a=C4=9Flar=20Onur?= Date: Mon, 29 Nov 2010 15:59:02 -0500 Subject: [PATCH] use networks key if interfaces is missing. Band-aid for short period of time as old API returns networks key --- net.py | 25 +++++++++++++++++++++---- sliver_vs.py | 3 ++- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/net.py b/net.py index de3360b..cb7850e 100644 --- a/net.py +++ b/net.py @@ -17,14 +17,31 @@ priority=1 dev_default = tools.get_default_if() +# added by caglar +# band-aid for short period as old API returns networks instead of interfaces + def start(): logger.log("net: plugin starting up...") def GetSlivers(data, config, plc): + # added by caglar + global KEY_NAME + KEY_NAME = "interfaces" + ################# + logger.verbose("net: GetSlivers called.") if not 'interfaces' in data: - logger.log_missing_data('net.GetSlivers','interfaces') - return + # added by caglar + # band-aid for short period as old API returns networks instead of interfaces + # logger.log_missing_data('net.GetSlivers','interfaces') + # return + if not 'networks' in data: + logger.log_missing_data('net.GetSlivers','interfaces') + return + else: + KEY_NAME = "networks" + ################## + plnet.InitInterfaces(logger, plc, data) if 'OVERRIDES' in dir(config): if config.OVERRIDES.get('net_max_rate') == '-1': @@ -50,7 +67,7 @@ def InitNodeLimit(data): for dev in devs: macs[sioc.gifhwaddr(dev).lower()] = dev - for interface in data['interfaces']: + for interface in data[KEY_NAME]: # Get interface name preferably from MAC address, falling # back on IP address. hwaddr=interface['mac'] @@ -118,7 +135,7 @@ def InitNAT(plc, data): macs[sioc.gifhwaddr(dev).lower()] = dev ipt = iptables.IPTables() - for interface in data['interfaces']: + for interface in data[KEY_NAME]: # Get interface name preferably from MAC address, falling # back on IP address. hwaddr=interface['mac'] diff --git a/sliver_vs.py b/sliver_vs.py index ed81f94..4245e53 100644 --- a/sliver_vs.py +++ b/sliver_vs.py @@ -80,9 +80,10 @@ class Sliver_VS(accounts.Account, vserver.VServer): logger.verbose('sliver_vs: %s: create'%name) if vref is None: logger.log("sliver_vs: %s: ERROR - no vref attached, this is unexpected"%(name)) + # added by caglar # band-aid for short period as old API doesn't have GetSliceFamily function - vref = "planetlab-f8-i386" #return + vref = "planetlab-f8-i386" # used to look in /etc/planetlab/family, # now relies on the 'GetSliceFamily' extra attribute in GetSlivers() -- 2.43.0