| Summary: | Consolidate Prolog/Epilog interfaces into a new stackable plugin interface | ||
|---|---|---|---|
| Product: | Slurm | Reporter: | Tim Wickberg <tim> |
| Component: | Other | Assignee: | Tim Wickberg <tim> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | 5 - Enhancement | ||
| Priority: | --- | CC: | csamuel, fmoll, Ulf.markwardt |
| Version: | 20.02.x | ||
| Hardware: | Linux | ||
| OS: | Linux | ||
| Site: | Universitat Dresden (Germany) | Slinky Site: | --- |
| Alineos Sites: | --- | Atos/Eviden Sites: | --- |
| Confidential Site: | --- | Coreweave sites: | --- |
| Cray Sites: | --- | DS9 clusters: | --- |
| Google sites: | --- | HPCnow Sites: | --- |
| HPE Sites: | --- | IBM Sites: | --- |
| NOAA SIte: | --- | NoveTech Sites: | --- |
| Nvidia HWinf-CS Sites: | --- | OCF Sites: | --- |
| Recursion Pharma Sites: | --- | SFW Sites: | --- |
| SNIC sites: | --- | Tzag Elita Sites: | --- |
| Linux Distro: | --- | Machine Name: | |
| CLE Version: | Version Fixed: | 20.02.0 | |
| Target Release: | 20.02 | DevPrio: | 1 - Paid |
| Emory-Cloud Sites: | --- | ||
|
Description
Tim Wickberg
2019-06-25 08:11:41 MDT
First commit in this series. I've decided to name these "PrEpPlugins" as a somewhat-coherent abbreviation of "Prolog/Epilog/PrologSlurmctld/EpilogSlurmctldPlugins". I'll have some additional commits to build the prep/script plugin, and move the existing behavior for those individual options, behind that interface. commit d18fd7841fa24829e06490d0c2bae2ca09f41b73 Author: Tim Wickberg <tim@schedmd.com> AuthorDate: Thu Oct 3 12:21:33 2019 -0600 Commit: Tim Wickberg <tim@schedmd.com> CommitDate: Thu Oct 3 22:34:07 2019 -0600 Add PrEpParameters and PrEpPlugins to slurm.conf. PrEp is short for "Prolog / Epilog". My apologies for not updating this ticket sooner, we lost track of getting the documentation done. This API is included in the 20.02 release, and we thank Dresden for their sponsorship of this work. After some internal deliberation, the best name we could come up with for this was "PrEpPlugins" - short for Prolog/EpilogPlugins. The existing Prolog / Epilog / PrologSlurmctld / EpilogSlurmctld script handling code was all relocated to the first of these new "prep" plugins as "prep/script", and this plugin is enabled by default if the option has not been specified. As should be clear from the name, this interface is designed to stack, and allow for multiple C plugins to be developed with direct access to the underlying job record (in the slurmctld) or job_env and job_cred details (in the slurmd). I do plan to evolve this further in future releases once we have had a chance to re-unify the task launch code. There is a lot of cleanup work being done on the master branch (which will become 20.11 this fall) that needs to complete before that can proceed, but that does not stop this from being a useful API today. Initial documentation has been pushed now as well, and can be seen on the website at https://slurm.schedmd.com/prep_plugins.html . I'm marking this ticket as resolved, and ask if there are further followup questions that they be submitted as new separate tickets. cheers, - Tim |