X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fomf_resctl.py;h=13fa19222f77e4e2b0aeab03bfe76be9eddd1967;hb=f36750e7d951e2842a72fc1b2e3e96c65d915cd0;hp=a0f14ab9273365a1a95ec094438dd7aeff8ce632;hpb=9d1f8e8df2e79e304dac4e290a2761ff87045d23;p=nodemanager.git diff --git a/plugins/omf_resctl.py b/plugins/omf_resctl.py index a0f14ab..13fa192 100644 --- a/plugins/omf_resctl.py +++ b/plugins/omf_resctl.py @@ -22,10 +22,12 @@ def start(): # hard-wire this for now # once the variables are expanded, this is expected to go into config_ple_template="""--- -# Example: -# _slicename_ = nicta_ruby -# _hostname_ = planetlab1.research.nicta.com.au -# _xmpp_server_ = xmpp.planet-lab.eu +# slicename = _slicename_ +# hostname = _hostname_ +# xmpp_server = _xmpp_server_ +# we extract expires time here, even in a comment so that the +# trigger script gets called whenever this changes +# expires: _expires_ :uid: _slicename_@_hostname_ :uri: xmpp://_slicename_-_hostname_-<%= "#{Process.pid}" %>:_slicename_-_hostname_-<%= "#{Process.pid}" %>@_xmpp_server_ @@ -84,11 +86,13 @@ def GetSlivers(data, conf = None, plc = None): # skip non OMF-friendly slices if not is_omf_friendly (sliver): continue slicename=sliver['name'] + expires=str(sliver['expires']) yaml_template = config_ple_template yaml_contents = yaml_template\ .replace('_xmpp_server_',xmpp_server)\ .replace('_slicename_',slicename)\ - .replace('_hostname_',hostname) + .replace('_hostname_',hostname)\ + .replace('_expires_',expires) yaml_full_path="/vservers/%s/%s"%(slicename,yaml_slice_path) yaml_full_dir=os.path.dirname(yaml_full_path) if not os.path.isdir(yaml_full_dir): @@ -106,7 +110,7 @@ def GetSlivers(data, conf = None, plc = None): try: fetch_trigger_script_if_missing (slicename) # the trigger script actually needs to be run in the slice context of course - slice_command = ["sudo -i %s"%omf_rc_trigger_script] + slice_command = [ "sudo", "-i", omf_rc_trigger_script ] to_run = tools.command_in_slice (slicename, slice_command) logger.log("command_in_slice: %s"%to_run) sp=subprocess.Popen(to_run, stdout=subprocess.PIPE,stderr=subprocess.STDOUT)