A Dash interface to submit Sushi applications via B-Fabric using SushiFabric and WorkflowManager.
Report Bug
·
Request Feature
Note: This project is built using the bfabric-web-apps library and was forked from the bfabric-web-app-template.
SushiRunner is a web-based interface for submitting Sushi applications using B-Fabric datasets as input. It bridges the B-Fabric LIMS system with the SushiFabric command-line interface and the WorkflowManager execution engine.
This app allows users to:
- Load dataset metadata from B-Fabric
- Configure Sushi application parameters through a Dash-based UI
- Generate the required
dataset.tsvandparameters.tsvfiles - Submit jobs to the Sushi infrastructure without needing to manually write scripts
This app is intended as a proof-of-concept, showcasing generalized support for Sushi-based execution workflows directly from the B-Fabric environment.
- Dash UI for selecting and configuring Sushi apps
- Generic + app-specific parameter forms (RAM, cores, options, etc.)
- TSV generation for Sushi input
- Seamless B-Fabric authentication and dataset loading
- Job submission via
sushi_fabric(no Redis dependency) - Optional project charging and reporting integration
- User launches app from a B-Fabric dataset page
- Dataset metadata is automatically loaded
- User configures the job parameters
dataset.tsvandparameters.tsvare generatedsushi_fabricis invoked with the appropriate class and args- WorkflowManager handles execution, monitoring, and completion emails
- Workunits and logs are updated in B-Fabric
Each Sushi app is defined as a standalone Dash module. For example:
- FastqcApp supports:
- Generic inputs: RAM, cores, partition, etc.
- App-specific toggles:
paired,showNativeReports, etc. - Table-based dataset preview
- Dynamic job submission via
run_main_job
Other supported applications follow a similar structure and can be added modularly.
- Sushi Documentation
- Sushi App Example - FastQC
- SushiFabric
- WorkflowManager
- EZRun R Package
- FGCZ Sushi Job Monitor
git clone https://github.com/GWCustom/SushiRunner.git
cd SushiRunnerpython3 -m venv venv
source venv/bin/activatepython -m venv venv
venv\Scripts\activateconda create -n sushi-runner pip
conda activate sushi-runnerpip install -r requirements.txtCreate this file in your home directory (~/.bfabricpy.yml):
GENERAL:
default_config: PRODUCTION
PRODUCTION:
login: your_username
password: your_password
base_url: https://your-bfabric-api-endpointpython3 index.pyVisit http://localhost:8050 in your browser.
Distributed under the MIT License. See LICENSE for details.
GWC GmbH – GitHub
Griffin White – LinkedIn
Marc Zuber – LinkedIn