2025-11-29 18:54:02 +01:00
2026-11-04 00:20:39 +01:00
2025-11-29 18:54:02 +01:00
2025-11-30 17:20:10 +01:00
2025-11-29 18:15:39 +01:00
2026-11-03 18:56:09 +01:00
2026-11-04 00:20:39 +01:00

minibutler

Minibutler is looking for new SwissFEL data and submits analysis jobs to SLURM. This is the little prototype brother of apocalypse, which will replace it later with merged functionality.

Usage

After installation (e.g. pip install git+https://gitea.psi.ch/Cristallina/minibutler.git) we can start minibutler with a given directory to watch for new runs:

minibutler --watch-path /sf/cristallina/data/p19150/raw

This requires that there is a process_run.py script that takes the given run number as a parameter. By default minibutler looks for this script in <pgroup>/work/code/pgroup_module/batch_tooling/ but any other location can be supplied as an argument.

Logging

The butler logs the state into two logs in <pgroup>/work/logs/butler/butler.

Commands

We can trigger the reprocessing with the current set of functions via a named pipe. For example to reprocess run 112 write into the pipe the run number, e.g. echo "process 112" > command_pipe. The pipe is located in <pgroup>/work/logs/butler. It accepts the following set of commands:

  • pause : temporarily pauses the butler
  • resume: resumes the butler
  • stop: stops the butler process
  • process xxx: processes the run with the run number xxx.
S
Description
minibutler is looking for new SwissFEL data and then submitting analysis jobs to SLURM.
Readme MIT
120 KiB
1 Stars 1 Watchers 0 Forks
Languages
Python 89.5%
Shell 10.5%