Skip to content

CLI

Usage:

$ [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • benchmark: Manage benchmarks and their versions.
  • files: List, download and check input/output files.
  • run: Execute benchmarks or modules.
  • software: Manage and install benchmark-specific...

benchmark

Manage benchmarks and their versions.

Usage:

$ benchmark [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • diff: Show differences between 2 benchmark...
  • list-versions: List all available benchmarks versions at...

benchmark diff

Show differences between 2 benchmark versions.

Usage:

$ benchmark diff [OPTIONS]

Options:

  • -b, --benchmark TEXT: Path to benchmark yaml file or benchmark id. [required]
  • -v1, --version1 TEXT: reference version [required]
  • -v2, --version2 TEXT: version to compare with. [required]
  • --help: Show this message and exit.

benchmark list-versions

List all available benchmarks versions at a specific endpoint.

Usage:

$ benchmark list-versions [OPTIONS]

Options:

  • -b, --benchmark TEXT: Path to benchmark yaml file or benchmark id. [required]
  • -e, --endpoint TEXT: remote/object storage. [required]
  • --help: Show this message and exit.

files

List, download and check input/output files.

Usage:

$ files [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • download: Download all or specific files for a...
  • list: List all or specific files for a benchmark.

files download

Download all or specific files for a benchmark.

Usage:

$ files download [OPTIONS]

Options:

  • -b, --benchmark TEXT: Path to benchmark yaml file or benchmark id. [required]
  • -t, --type TEXT: File types. Options: all, code, inputs, outputs, logs, performance. [default: all]
  • -s, --stage TEXT: Stage to download files from.
  • -m, --module TEXT: Module to download files from.
  • -i, --id TEXT: File id to download.
  • --help: Show this message and exit.

files list

List all or specific files for a benchmark.

Usage:

$ files list [OPTIONS]

Options:

  • -b, --benchmark TEXT: Path to benchmark yaml file or benchmark id. [required]
  • -t, --type TEXT: File types. Options: all, code, inputs, outputs, logs, performance. [default: all]
  • -s, --stage TEXT: Stage to list files for.
  • -m, --module TEXT: Module to list files for.
  • -i, --id TEXT: File id/type to list.
  • --help: Show this message and exit.

run

Execute benchmarks or modules.

Usage:

$ run [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • benchmark: Run a benchmark as specified in the yaml.
  • module: Run a specific module on various datasets...
  • validate: Validate a benchmark yaml.

run benchmark

Run a benchmark as specified in the yaml.

Usage:

$ run benchmark [OPTIONS]

Options:

  • -b, --benchmark TEXT: Path to benchmark yaml file or benchmark id. [required]
  • -p, --threads INTEGER: The parallelism level for the workflow scheduler. [default: 1]
  • -u, --update: Force re-run execution for all modules and stages.
  • -d, --dry: Dry run
  • -l, --local: Execute and store results locally. Default False.
  • --help: Show this message and exit.

run module

Run a specific module on various datasets or custom inputs. This command does not have a default behavior. You must explicitly choose one of the following options:

  1. --input: Provide a path to a custom directory to use as the input dataset.
  2. --example: Set this flag to execute the module on a remote example dataset.
  3. --all: Set this flag to run the module on all available remote datasets.

Note: You must select one of these options for the command to run.

Usage:

$ run module [OPTIONS]

Options:

  • -b, --benchmark TEXT: Path to benchmark yaml file or benchmark id. [required]
  • -m, --module TEXT: Module (ID) to execute. [required]
  • -i, --input TEXT: Run on inputs from input directory.
  • -e, --example: Run on remote example inputs only.
  • -a, --all: Run on all valid benchmark inputs.
  • -u, --update: Force re-run execution for all modules and stages.
  • -d, --dry: Dry run
  • --help: Show this message and exit.

run validate

Validate a benchmark yaml.

Usage:

$ run validate [OPTIONS]

Options:

  • -b, --benchmark TEXT: Path to benchmark yaml file or benchmark id. [required]
  • --help: Show this message and exit.

software

Manage and install benchmark-specific software environments

Usage:

$ software [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • check: Check whether the component {what} is...
  • conda: Manage conda-based software installations.
  • envmodules: Manage envmodules-based software...
  • singularity: Manage singularity- (apptainer-) based...

software check

Check whether the component {what} is available.

Usage:

$ software check [OPTIONS]

Options:

  • -w, --what TEXT: Binary/functionality to check:

--what singularity : singularity

--what module : module tool, typically lmod

--what easybuild : easybuild

--what conda : conda [required] * --help: Show this message and exit.

software conda

Manage conda-based software installations. Does not use easybuild.

Usage:

$ software conda [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • pin: Pin all conda env-related dependencies...

software conda pin

Pin all conda env-related dependencies versions using snakedeploy.

Usage:

$ software conda pin [OPTIONS]

Options:

  • -e, --env TEXT: Path to the conda env file. [required]
  • --help: Show this message and exit.

software envmodules

Manage envmodules-based software installations. Uses easybuild to build software.

Usage:

$ software envmodules [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • build: Build a given easyconfig (and generates...

software envmodules build

Build a given easyconfig (and generates the relevant envmodules).

Usage:

$ software envmodules build [OPTIONS]

Options:

  • -e, --easyconfig TEXT: Easyconfig [required]
  • -p, --threads INTEGER: Number of threads [default: 2]
  • --help: Show this message and exit.

software singularity

Manage singularity- (apptainer-) based software installations. Uses easybuild to build software.

Usage:

$ software singularity [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • build: Build a singularity (fakeroot) image for a...
  • push: Pushes a singularity SIF file to an...

software singularity build

Build a singularity (fakeroot) image for a given easyconfig.

Usage:

$ software singularity build [OPTIONS]

Options:

  • -e, --easyconfig TEXT: Easyconfig [required]
  • --help: Show this message and exit.

software singularity push

Pushes a singularity SIF file to an ORAS-compatible registry.

Usage:

$ software singularity push [OPTIONS]

Options:

  • -u, --docker_username TEXT: Docker username [required]
  • -p, --docker_password TEXT: Docker password (token) [required]
  • -s, --sif PATH: Path to the Singularity SIF file [required]
  • -o, --oras TEXT: Registry's ORAS static URL, for instance oras://registry.mygitlab.ch/myuser/myproject:mytag [required]
  • --help: Show this message and exit.