|
58 | 58 | Deprecated: use ``job_script_prologue`` instead. This parameter will be removed in a future version. |
59 | 59 | job_script_prologue : list |
60 | 60 | Other commands to add to script before launching worker. |
| 61 | + job_script_epilogue : list |
| 62 | + Commands to add to script which will run after the worker command has exited. |
61 | 63 | header_skip : list |
62 | 64 | Deprecated: use ``job_directives_skip`` instead. This parameter will be removed in a future version. |
63 | 65 | job_directives_skip : list |
@@ -147,6 +149,7 @@ class Job(ProcessInterface, abc.ABC): |
147 | 149 | %(job_header)s |
148 | 150 | %(job_script_prologue)s |
149 | 151 | %(worker_command)s |
| 152 | +%(job_script_epilogue)s |
150 | 153 | """.lstrip() |
151 | 154 |
|
152 | 155 | # Following class attributes should be overridden by extending classes. |
@@ -176,6 +179,7 @@ def __init__( |
176 | 179 | job_extra_directives=None, |
177 | 180 | env_extra=None, |
178 | 181 | job_script_prologue=None, |
| 182 | + job_script_epilogue=None, |
179 | 183 | header_skip=None, |
180 | 184 | job_directives_skip=None, |
181 | 185 | log_directory=None, |
@@ -277,6 +281,10 @@ def __init__( |
277 | 281 | job_script_prologue = dask.config.get( |
278 | 282 | "jobqueue.%s.job-script-prologue" % self.config_name |
279 | 283 | ) |
| 284 | + if job_script_epilogue is None: |
| 285 | + job_script_epilogue = dask.config.get( |
| 286 | + "jobqueue.%s.job-script-epilogue" % self.config_name |
| 287 | + ) |
280 | 288 | if env_extra is not None: |
281 | 289 | warn = ( |
282 | 290 | "env_extra has been renamed to job_script_prologue. " |
@@ -344,6 +352,7 @@ def __init__( |
344 | 352 | self.shebang = shebang |
345 | 353 |
|
346 | 354 | self._job_script_prologue = job_script_prologue |
| 355 | + self._job_script_epilogue = job_script_epilogue |
347 | 356 |
|
348 | 357 | # dask-worker command line build |
349 | 358 | dask_worker_command = "%(python)s -m %(worker_command)s" % dict( |
@@ -396,6 +405,7 @@ def job_script(self): |
396 | 405 | "job_header": self.job_header, |
397 | 406 | "job_script_prologue": "\n".join(filter(None, self._job_script_prologue)), |
398 | 407 | "worker_command": self._command_template, |
| 408 | + "job_script_epilogue": "\n".join(filter(None, self._job_script_epilogue)), |
399 | 409 | } |
400 | 410 | return self._script_template % pieces |
401 | 411 |
|
|
0 commit comments