From a4c786d52613063d338ee010f4415e8a6aef0513 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Wed, 9 Mar 2022 16:31:01 +0100 Subject: GUI: Use sbatch/scancel/scontrol instead of Slurm API This commit strips out all references to the Slurm API, instead making subprocess calls to sbatch and scontrol. Attempting to use the Slurm API seems to have been a mis-step. First, it seems that nowhere has the Slurm headers pre-installed. Literally none of the facilities where there are known deployments of CrystFEL have them. And in a significant fraction of cases, getting them installed is difficult, slow or impossible. In addition, the API doesn't seem to work in all cases, so we already shell out to 'scancel' to abort jobs - see d76fc3495. There are some tricky implications for submitting Slurm jobs from a container via the API. The Slurm REST API offers a solution, but is very new and not widely available. Calls to the Slurm executables are much easier to 'tunnel' out of a container. This isn't a great solution. It's a net increase of only about 40 lines of source code, but it incurs some unpleasant string handling and will probably be less reliable overall. It completely relies on Slurm's not being internationalised. If Slurm's messages start getting translated, we will be in trouble. --- doc/articles/tutorial.rst | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/articles/tutorial.rst b/doc/articles/tutorial.rst index 60134856..dccfd032 100644 --- a/doc/articles/tutorial.rst +++ b/doc/articles/tutorial.rst @@ -371,10 +371,9 @@ if you have access to a cluster system then you should make use of it here. There are two options found in the **Batch system** menu. **SLURM** will make the GUI submit its jobs through the `SLURM `_ system. You'll have to give details such as the partition name and any -relevant constraints - ask your system manager about these. If SLURM is not -shown in this menu, it's because the SLURM libraries weren't available when -CrystFEL was compiled - see `INSTALL.md <../../INSTALL.md>`_ or ask your -facility or lab's computing team. +relevant constraints - ask your system manager about these. Obviously, +SLURM must be available on your system to use this option. If in doubt, ask +your facility or lab's computing team. If SLURM isn't available, you'll have to run "locally", which means to run on the same computer as where the GUI itself is running. This is the right option -- cgit v1.2.3