camber.nextflow
The camber.nextflow
handles workloads that uses the Nextflow framework and is deployed on Kubernetes as execution platform. It is a subclass of the CamberEngine
that encapsulates the Python interface for Nextflow CLI.
Example
from camber import nextflow
nf_hello_job = nextflow.create_job(
pipeline="nextflow-io/hello",
engine_size="XSMALL",
num_engines=4
)
# More nextflow workflow below
Methods
create_job
Creates a job to run a given pipeline using the NextflowEngine
. Please note that if the pipeline requires the output directory, it should be placed in /camber_outputs
. So when a job finishes, the output data will appear in the private stash jobs/<job_id>/outputs
.
Args
pipeline
: str- Supply a remote nextflow pipeline or a local one in the private stash. For remote pipelines, you can discover them more in nf-core pipelines.
engine_size
: str- The size of the engine. One of
XMICRO
,MICRO
,XXSMALL
,XSMALL
,SMALL
,MEDIUM
, orLARGE
. - Default is
XSMALL
. num_engines
: Optional[int]- The number of engines will handle multiple tasks in a parallel manner.
- Default is
1
params
: Optional[Dict]- Define parameters for the pipeline. In case the pipeline requires passing input files to the
params
, the path of input files should be relative to the current working directory. - Example:
{"--input": "./samplesheet.csv"}
Returns
CamberJob
- An instance of the
CamberJob
class representing the created job.