Skip to content

oxo-flow env#

Manage software environments. Provides subcommands for listing available backends and checking workflow environment requirements.


Usage#

oxo-flow env <SUBCOMMAND>

Subcommands#

env list#

List available environment backends, or list environments defined in a workflow.

oxo-flow env list [WORKFLOW]

When called without arguments, lists all backends detected on the system. When given a workflow file, lists the environments used by each rule.

Output:

oxo-flow v0.23.2 — Rust-native bioinformatics pipeline engine
https://github.com/Traitome/oxo-flow
Available environment backends:
  ✓ conda
  ✓ docker
  ✓ singularity
  ✓ venv

The two banner lines print only at an interactive terminal. All of this output goes to stderr — capture it with 2> or 2>&1; stdout stays empty.

env check#

Check that all environments declared in a workflow file are valid and their backends are available.

oxo-flow env check [WORKFLOW]
Argument Description
[WORKFLOW] Optional path to the .oxoflow workflow file. If omitted, checks system-wide backend availability instead.

Output (all valid):

  ✓ align (conda)
  ✓ call_variants (docker)
  ✓ annotate (singularity)

Without a workflow, each available backend also names the binary that a run would resolve — the engine prefers mamba → micromamba → conda, so on a machine with several conda-family installs the resolved binary is what actually gets invoked:

Environment backend availability:
  ✓ mamba (resolved: micromamba)
  ✓ conda
  ✗ docker (not found)

env create#

Create a new environment from a specification file.

oxo-flow env create [OPTIONS] <SPEC>
Argument Description
<SPEC> Path to the environment specification file (.yaml/.yml, .toml, .lock)
Option Short Description
--name -n Custom name for the created environment (default: derived from the spec filename)
--ai — Generate the environment spec from a natural-language description (SPEC is the description)
--backend — Environment backend to generate: conda (YAML) or pixi (TOML). Default: inferred from the spec's extension, or conda with --ai

Output (missing backend):

  ✓ align (conda)
  ✗ call_variants — environment error (docker): docker is not installed or not in PATH

Options#

Option Short Description
--verbose -v Enable debug-level logging

Examples#

# List available backends
oxo-flow env list

# Check a specific workflow
oxo-flow env check pipeline.oxoflow

Notes#

  • env check exits with code 1 if any environment validation fails
  • The check verifies backend availability, not that specific conda environments or Docker images exist — it confirms that the required type of environment manager is installed
  • Run env check before submitting to a cluster to catch environment issues early
  • To check that environment definition files exist (conda YAML, venv directories, pixi.toml), use oxo-flow test --deep (finding D002)