X-Git-Url: http://git.onelab.eu/?p=sface.git;a=blobdiff_plain;f=sface%2Fsfiprocess.py;h=9287acd1397b850a0b32aaea5ba2333f90ae887b;hp=872fa5a2f02a279ba42d2a933d588f31db7b7d8a;hb=03b467d0bf99663f894553af50265816bd28027e;hpb=8acaa8580500e0041b6f4ad9bc9d42eca5f99f97 diff --git a/sface/sfiprocess.py b/sface/sfiprocess.py index 872fa5a..9287acd 100644 --- a/sface/sfiprocess.py +++ b/sface/sfiprocess.py @@ -1,5 +1,6 @@ import os +import pickle import sys import time @@ -174,7 +175,7 @@ class SfiProcess(QObject): def getAuthorityRecord(self): self.getRecord(config.getAuthority(), config.getAuthorityRecordFile()) - def applyRSpec(self, rspec): + def applyRSpec(self, rspec, aggAddr=None, aggPort=None, saveObtained=True): # that's what we pass, like in what we'd like to get requested = config.getSliceRSpecFile() + "_new" # that's what we actually receive @@ -182,9 +183,16 @@ class SfiProcess(QObject): obtained = config.getSliceRSpecFile() rspec.save(requested) args = ["-u", config.getUser(), "-a", config.getAuthority(), - "-r", config.getRegistry(), "-s", config.getSlicemgr(), "create", - "-o", obtained, - config.getSlice(), requested] + "-r", config.getRegistry(), "-s", config.getSlicemgr(), "create"] + + if saveObtained: + args = args + ["-o", obtained] + + if aggAddr: + args = args + ["-a", aggAddr, "-p", str(aggPort)] + + args = args + [config.getSlice(), requested] + self.__init_command(args) self.start() @@ -216,6 +224,29 @@ class SfiProcess(QObject): self.__init_command(args) self.start() + def sliverStatus(self, slice=None, filename=None): + if not slice: + slice = config.getSlice() + + if not filename: + filename = config.fullpath(slice+".sliverstatus") + + args = ["-u", config.getUser(), "-a", config.getAuthority(), + "-r", config.getRegistry(), "-s", config.getSlicemgr(), "status", + "-o", filename, "-F", "pickled", slice] + self.__init_command(args) + self.start() + + def getSliceMgrVersion(self, filename=None): + if not filename: + filename = config.fullpath("slicemgr.version") + + args = ["-u", config.getUser(), "-a", config.getAuthority(), + "-r", config.getRegistry(), "-s", config.getSlicemgr(), "version", + "-o", filename, "-F", "pickled",] + self.__init_command(args) + self.start() + def start(self): self.respones = [] self.faults = []