From: Thierry Parmentelat Date: Fri, 25 Jun 2010 13:50:39 +0000 (+0000) Subject: placeholder X-Git-Tag: NodeManager-2.0-12~7 X-Git-Url: http://git.onelab.eu/?p=nodemanager.git;a=commitdiff_plain;h=778e85877046779bd1a623edb6d4c1f5743bee01 placeholder --- diff --git a/nodemanager.py b/nodemanager.py index 4e82165..92b77ae 100755 --- a/nodemanager.py +++ b/nodemanager.py @@ -97,6 +97,8 @@ class NodeManager: self.getPLCDefaults(data, config) # tweak the 'vref' attribute from GetSliceFamily self.setSliversVref (data) + # check leases and adjust the 'alive' field in slivers + self.adjustReservedSlivers (data) # dump it too, so it can be retrieved later in case of comm. failure self.dumpSlivers(data) # log it for debug purposes, no matter what verbose is @@ -110,6 +112,8 @@ class NodeManager: data = {} # for modules that request it though the 'persistent_data' property last_data=self.loadSlivers() + # adjust again with current time + self.adjustReservedSlivers (data) # Invoke GetSlivers() functions from the callback modules for module in self.loaded_modules: logger.verbose('nodemanager: triggering %s.GetSlivers'%module.__name__) @@ -158,6 +162,13 @@ class NodeManager: except: logger.log_exc("nodemanager: Could not overwrite 'vref' attribute from 'GetSliceFamily'",name=sliver['name']) + def adjustReservedSlivers (self, data): + """ + On reservable nodes, tweak the 'alive' field to instruct cyclic loop + about what to do with slivers. + """ + pass + def dumpSlivers (self, slivers): f = open(NodeManager.DB_FILE, "w") logger.log ("nodemanager: saving successfully fetched GetSlivers in %s" % NodeManager.DB_FILE)