示例#1
0
    def get(self, jobID, downloadDir=""):
        os.environ["X509_USER_PROXY"] = self.proxy.getFilename()
        oldHOME = os.environ["HOME"]
        os.environ["HOME"] = self.user.getDir()
        if downloadDir == "":
            result = LapUtils.simpleExec(env_nordugrid + "ngget %s" % (jobID))
        else:
            result = LapUtils.simpleExec(env_nordugrid + "ngget -dir %s %s" % (downloadDir, jobID))
        os.environ["HOME"] = oldHOME
        os.environ["X509_USER_PROXY"] = ""

        return result
示例#2
0
    def query(self):
        os.chdir(env_homepath)
        os.environ["X509_USER_PROXY"] = self.proxyFilename
        result = LapUtils.simpleExec(env_globus + "grid-proxy-info -subject")

        print self.proxyFilename, ", ", result

        if len(result) > 0:
            self.DN = result[0]
            result = LapUtils.simpleExec(env_globus + "grid-proxy-info -timeleft")
            self.timeLeft = int(result[0])
        else:
            result = ""
            self.timeLeft = -1

        os.environ["X509_USER_PROXY"] = ""
示例#3
0
 def sync(self):
     os.environ["X509_USER_PROXY"] = self.proxy.getFilename()
     oldHOME = os.environ["HOME"]
     os.environ["HOME"] = self.user.getDir()
     result = LapUtils.simpleExec(env_nordugrid + "ngsync -f -d %d %s" % (self.debugLevel, env_cluster))
     os.environ["HOME"] = oldHOME
     os.environ["X509_USER_PROXY"] = ""
示例#4
0
    def kill(self, jobID):
        os.environ["X509_USER_PROXY"] = self.proxy.getFilename()
        oldHOME = os.environ["HOME"]
        os.environ["HOME"] = self.user.getDir()
        result = LapUtils.simpleExec(env_nordugrid + "ngkill %s" % (jobID))
        os.environ["HOME"] = oldHOME
        os.environ["X509_USER_PROXY"] = ""

        return result
示例#5
0
    def jobStatus(self):

        os.environ["X509_USER_PROXY"] = self.proxy.getFilename()
        oldHOME = os.environ["HOME"]
        os.environ["HOME"] = self.user.getDir()
        result = LapUtils.simpleExec(env_nordugrid + "ngstat -a %s" % env_cluster)
        os.environ["HOME"] = oldHOME
        os.environ["X509_USER_PROXY"] = ""

        jobList = {}
        job = None

        try:
            for line in result:
                print line
                splitResult = string.split(line, ":")
                if len(splitResult) > 0:
                    property = string.strip(splitResult[0])

                    if property == "Job gsiftp":
                        if job != None:
                            jobList[jobID] = job

                        job = {}
                        splitResult2 = string.strip(line, " ")
                        jobID = line[4:]

                    if property == "Jobname":
                        job["name"] = string.strip(line)[9:]

                    if property == "Status":
                        job["status"] = string.strip(line)[8:]

                    if property == "Error":
                        job["error"] = string.strip(line)[7:]

                if job != None:
                    jobList[jobID] = job

        except:
            return None

        return jobList
示例#6
0
    def submit(self, xrslFilename):

        if not os.path.isfile(xrslFilename):
            return False

        [jobDir, filename] = os.path.split(xrslFilename)

        oldDir = os.getcwd()
        os.chdir(jobDir)
        os.environ["X509_USER_PROXY"] = self.proxy.getFilename()
        oldHOME = os.environ["HOME"]
        os.environ["HOME"] = self.user.getDir()
        result = LapUtils.simpleExec(
            env_nordugrid + "ngsub -t %s -d %s -f %s %s" % (env_arctimeout, self.debugLevel, xrslFilename, env_cluster)
        )
        os.environ["HOME"] = oldHOME
        os.environ["X509_USER_PROXY"] = ""
        os.chdir(oldDir)

        return result