Nextflow Platform

Platform for generating Nextflow VDSL3 modules.

Example:

platforms:
  - type: nextflow
    directives:
      label: [lowcpu, midmem]

auto

Type: NextflowAuto

Default: simplifyInput: true simplifyOutput: true transcript: false publish: false

Automated processing flags which can be toggled on or off:

Flag Description Default
simplifyInput If true, an input tuple only containing only a single File (e.g. ["foo", file("in.h5ad")]) is automatically transformed to a map (i.e. ["foo", [ input: file("in.h5ad") ] ]). true
simplifyOutput If true, an output tuple containing a map with a File (e.g. ["foo", [ output: file("out.h5ad") ] ]) is automatically transformed to a map (i.e. ["foo", file("out.h5ad")]). true
transcript If true, the module’s transcripts from work/ are automatically published to params.transcriptDir. If not defined, params.publishDir + "/_transcripts" will be used. Will throw an error if neither are defined. false
publish If true, the module’s outputs are automatically published to params.publishDir. Will throw an error if params.publishDir is not defined. false

Example:

auto:
  publish: true

config

Type: NextflowConfig

Default: A series of default labels to specify memory and cpu constraints

Allows tweaking how the Nextflow Config file is generated.

container

Type: String

Default: docker

Specifies the Docker platform id to be used to run Nextflow.

debug

Type: Boolean

Default: False

Whether or not to print debug messages.

directives

Type: NextflowDirectives

Default: Empty

Directives are optional settings that affect the execution of the process. These mostly match up with the Nextflow counterparts.

Example:

directives:
  container: rocker/r-ver:4.1
  label: highcpu
  cpus: 4
  memory: 16 GB

id

Type: String

Default: nextflow

Every platform can be given a specific id that can later be referred to explicitly when running or building the Viash component.

Example:

id: foo

type

Type: String

Specifies the type of the platform.