Skip to content

Commit

Permalink
Merge pull request #527 from ofaaland/b-fix-jobid-endtime
Browse files Browse the repository at this point in the history
Update jobid and endtime based on flux v0.46.1
  • Loading branch information
adammoody authored Dec 21, 2022
2 parents 75cbeaf + f1ebbc4 commit fac5cab
Showing 1 changed file with 17 additions and 15 deletions.
32 changes: 17 additions & 15 deletions scripts/python/scrjob/resmgrs/flux.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
from flux.hostlist import Hostlist
from flux.resource import ResourceSet
from flux.rpc import RPC
from flux.job import JobID, JobInfo, JobList
except:
pass

Expand All @@ -39,14 +40,14 @@ def __init__(self):
def getjobid(self):
if self.jobid is not None:
return self.jobid
if scr_const.SCR_RESOURCE_MANAGER == 'SLURM':
return os.environ.get('SLURM_JOBID')
if scr_const.SCR_RESOURCE_MANAGER == 'LSF':
return os.environ.get('LSB_JOBID')
if scr_const.SCR_RESOURCE_MANAGER == 'APRUN':
return os.environ.get('PBS_JOBID')
timestamp = str(int(time()))
return timestamp

jobid_str = os.environ.get('FLUX_JOB_ID')
if jobid_str is None:
jobid = JobID(self.flux.attr_get("jobid"))
else:
jobid = self.flux.job.JobID.id_parse(jobid_str)

return jobid

# get node list
def get_job_nodes(self):
Expand All @@ -71,11 +72,12 @@ def get_downnodes(self):
return downnodes

def get_scr_end_time(self):
resp = RPC(self.flux, "resource.status").get()
rset = ResourceSet(resp["R"])
endtime = 0
try:
endtime = int(rset.expiration)
except:
pass
jobid_str = os.environ.get('FLUX_JOB_ID')
if jobid_str is None:
parent = flux.Flux(self.flux.attr_get("parent-uri"))
info = JobList(parent, ids=[self.jobid]).fetch_jobs().get_jobs()[0]
else:
info = JobList(self.flux, ids=[self.jobid]).fetch_jobs().get_jobs()[0]
endtime = info["expiration"]

return endtime

0 comments on commit fac5cab

Please sign in to comment.