From: Claudio-Daniel Freire Date: Mon, 5 Sep 2011 01:17:46 +0000 (+0200) Subject: Fix testbed proxy serialization in the presence of missing values (ie: defaults or... X-Git-Tag: nepi-3.0.0~250 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=1a8b0ef1436c78ddc7877d38666ae8fa6e8e79bb;p=nepi.git Fix testbed proxy serialization in the presence of missing values (ie: defaults or None) --- diff --git a/src/nepi/core/execute.py b/src/nepi/core/execute.py index 5c0b8dae..1c51d58f 100644 --- a/src/nepi/core/execute.py +++ b/src/nepi/core/execute.py @@ -507,8 +507,9 @@ class ExperimentController(object): conf.add_section(testbed_guid) for attr in testbed_config.get_attribute_list(): if attr not in TRANSIENT: - conf.set(testbed_guid, attr, - testbed_config.get_attribute_value(attr)) + value = testbed_config.get_attribute_value(attr) + if value is not None: + conf.set(testbed_guid, attr, value) f = open(os.path.join(self._root_dir, 'deployment_config.ini'), 'w') conf.write(f) @@ -539,8 +540,12 @@ class ExperimentController(object): getter = getattr(conf, TYPEMAP.get( testbed_config.get_attribute_type(attr), 'get') ) - testbed_config.set_attribute_value( - attr, getter(testbed_guid, attr)) + try: + value = getter(testbed_guid, attr) + testbed_config.set_attribute_value(attr, value) + except ConfigParser.NoOptionError: + # Leave default + pass def _unpersist_testbed_proxies(self): try: