Skip to main content

Native Backends

CBIcall separates what analysis is run from how it is executed. The analysis is selected with pipeline and mode; the execution technology is selected with workflow_backend.

A pipeline implementation is CBIcall-native when it produces the CBIcall output contract: the generated cbicall_* run directory, standard logs, audit reports, output inventory, and final-output fingerprints when available. Native status is about that output contract, not the workflow language.

Supported Native Backends​

BackendRoleWorkflow formRequired runner
BashDefault and recommendedShell scriptsBash
SnakemakeIllustrative and backend-equivalence testingSnakefile rulesSnakemake
NextflowIllustrative and backend-equivalence testingNextflow processesNextflow and Java
CromwellIllustrative and backend-equivalence testingWDL workflows and tasksCromwell and Java
Recommended backend

Bash is the default and recommended backend for routine use of the bundled cbicall-core pipelines. The Snakemake, Nextflow, and Cromwell implementations demonstrate backend portability and support backend-equivalence testing.

What cbicall-core means

CBIcall is the framework. cbicall-core is the ready-to-run workflow collection distributed and maintained with it.

External nf-core provider entries are different: they are launched through the Nextflow backend, but they keep their upstream nf-core output layout and runtime assumptions. See External nf-core.

Use cbicall doctor to see which backend runners are available in the current installation.

Selecting a Backend​

pipeline: wes
mode: single
workflow_provider: cbicall-core
workflow_backend: bash
software_stack: gatk-4.6

For these bundled workflows, workflow_provider: cbicall-core is the default and can be omitted. Keep workflow_backend: bash for routine use. The other backends can be selected when testing portability or backend equivalence.

Use Included Pipelines for the compatibility matrix and pipeline-specific guides.