Skip to main content
. 2024 Jul 18;5(8):101024. doi: 10.1016/j.patter.2024.101024

Figure 2.

Figure 2

Files required to run a workflow in BIOMERO

The underlying executable code needs to be a headless program (i.e., it does not require a graphical UI). The input parameters should be described in a configuration file called descriptor.json, and any preprocessing (or file reading) can be added to the wrapper.py, while the required environment should be defined (Python version, Python libraries, Fiji plugins, MATLAB packages, OS, etc.) in the Dockerfile. These files should be published and versioned on GitHub (or another public online platform). From the Dockerfile, a container image should be built, versioned, and hosted on a public online container registry like DockerHub to ensure reproducibility. At this point, anybody can pull the workflow to their local computer and run the workflow using Docker, Podman, Singularity, or a dedicated workflow management system. Finally, to allow execution on HPC from OMERO, BIOMERO requires a Slurm job script that defines hardware parameters (we will generate a default one if none are provided) and a BIOMERO script that will generate the UI in OMERO.web (we provide a generic implementation of such an OMERO script that leverages the descriptor.json) and call on the BIOMERO library. If these are all in place, then the user can execute the workflow in OMERO via the script UI.