Skip to content

Commit f98cc13

Browse files
authored
Merge pull request #143 from pyiron/working_directory
Return working directory as part of the queue status
2 parents e8126fa + 412527f commit f98cc13

File tree

3 files changed

+16
-7
lines changed

3 files changed

+16
-7
lines changed

pysqa/wrapper/sge.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,5 +55,6 @@ def leaf_to_dict(leaf):
5555
"user": df_merge.JB_owner,
5656
"jobname": df_merge.JB_name,
5757
"status": df_merge.state,
58+
"working_directory": [""] * len(df_merge),
5859
}
5960
)

pysqa/wrapper/slurm.py

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def delete_job_command(self):
2929

3030
@property
3131
def get_queue_status_command(self):
32-
return ["squeue", "--format", "%A|%u|%t|%.15j", "--noheader"]
32+
return ["squeue", "--format", "%A|%u|%t|%.15j|%Z", "--noheader"]
3333

3434
@staticmethod
3535
def get_job_id_from_output(queue_submit_output):
@@ -39,20 +39,27 @@ def get_job_id_from_output(queue_submit_output):
3939
def convert_queue_status(queue_status_output):
4040
line_split_lst = [line.split("|") for line in queue_status_output.splitlines()]
4141
if len(line_split_lst) != 0:
42-
job_id_lst, user_lst, status_lst, job_name_lst = zip(
42+
job_id_lst, user_lst, status_lst, job_name_lst, working_directory_lst = zip(
4343
*[
44-
(int(jobid), user, status.lower(), jobname)
45-
for jobid, user, status, jobname in line_split_lst
44+
(int(jobid), user, status.lower(), jobname, working_directory)
45+
for jobid, user, status, jobname, working_directory in line_split_lst
4646
]
4747
)
4848
else:
49-
job_id_lst, user_lst, status_lst, job_name_lst = [], [], [], []
49+
job_id_lst, user_lst, status_lst, job_name_lst, working_directory_lst = (
50+
[],
51+
[],
52+
[],
53+
[],
54+
[],
55+
)
5056
df = pandas.DataFrame(
5157
{
5258
"jobid": job_id_lst,
5359
"user": user_lst,
5460
"jobname": job_name_lst,
5561
"status": status_lst,
62+
"working_directory": working_directory_lst,
5663
}
5764
)
5865
df.loc[df.status == "r", "status"] = "running"

tests/test_queueadapter.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ def test_interfaces(self):
137137
self.assertEqual(self.slurm._adapter._commands.delete_job_command, ["scancel"])
138138
self.assertEqual(
139139
self.slurm._adapter._commands.get_queue_status_command,
140-
["squeue", "--format", "%A|%u|%t|%.15j", "--noheader"],
140+
["squeue", "--format", "%A|%u|%t|%.15j|%Z", "--noheader"],
141141
)
142142
self.assertEqual(self.moab._adapter._commands.submit_job_command, ["msub"])
143143
self.assertEqual(
@@ -148,7 +148,7 @@ def test_interfaces(self):
148148
)
149149
self.assertEqual(
150150
self.gent._adapter._commands.get_queue_status_command,
151-
["squeue", "--format", "%A|%u|%t|%.15j", "--noheader"],
151+
["squeue", "--format", "%A|%u|%t|%.15j|%Z", "--noheader"],
152152
)
153153

154154
def test__list_command_to_be_executed(self):
@@ -254,6 +254,7 @@ def test_convert_queue_status(self):
254254
"user": df_merge.user,
255255
"jobname": df_merge.jobname,
256256
"status": df_merge.status,
257+
"working_directory": [""] * len(df_merge),
257258
}
258259
)
259260
self.assertTrue(

0 commit comments

Comments
 (0)