Seqera
Preview feature: may change in a future release.
The seqera executor runs pipeline tasks using Seqera Intelligent Compute. It submits each task to the Seqera scheduler service.
To enable this executor, set process.executor = 'seqera' in the nextflow.config file. Every pipeline process must specify a Docker image using the container directive. The pipeline work directory must be located in an S3 bucket.
Use the following process directives to control resource requests and other job characteristics:
The following hints are supported:
machineRequirement.capacityModemachineRequirement.diskAllocationmachineRequirement.diskEncryptedmachineRequirement.diskIopsmachineRequirement.diskMountPathmachineRequirement.diskSizemachineRequirement.diskThroughputMiBpsmachineRequirement.diskTypemachineRequirement.machineTypesmachineRequirement.maxSpotAttemptsmachineRequirement.provisioningpredictionModel
The machineRequirement.* hints override the corresponding field of the seqera.executor.machineRequirement config scope on a per-process basis. The predictionModel hint overrides the run-level seqera.executor.predictionModel for a single process. Set it to qr/v1 or qr/v2 to select a model, or to none to disable resource prediction for that process even when the run enables a model. When omitted, the process inherits the run-level prediction model. Use keys as-is, or with the seqera/ prefix to restrict them to this executor.
For example, to override the provisioning mode for a single process:
process hello {
hints 'seqera/machineRequirement.provisioning': 'spotFirst'
script:
"""
your_command --here
"""
}
To disable resource prediction for a single process when the run sets a model:
process hello {
hints 'seqera/predictionModel': 'none'
script:
"""
your_command --here
"""
}
See the seqera scope for the full config reference.
Disk support
When a process specifies the disk directive, the Seqera executor provisions storage for the task container. It supports two disk allocation strategies:
-
task(default): Nextflow creates a dedicated EBS volume for each task at launch time. This provides isolated storage with configurable volume type, IOPS, throughput, and encryption. -
node: Uses the instance storage attached at the cluster level. Tasks running on the same node share this storage, which does not support EBS-specific options.
Task allocation (EBS volumes)
By default, Nextflow uses a gp3 volume with 325 MiB/s throughput, the recommended settings for Fusion. You can customize the EBS volume configuration:
seqera {
executor {
machineRequirement {
diskAllocation = 'task' // Per-task EBS volume (default)
diskType = 'ebs/io1' // Use provisioned IOPS SSD
diskIops = 10000 // Required for io1/io2
diskThroughputMiBps = 500 // Throughput for gp3 volumes
diskEncrypted = true // Enable KMS encryption
diskMountPath = '/data' // Container mount path (default: /tmp)
}
}
}
Supported volume types: ebs/gp3 (default), ebs/gp2, ebs/io1, ebs/io2, ebs/st1, ebs/sc1.
Node allocation (instance storage)
To use instance storage instead of per-task EBS volumes:
seqera {
executor {
machineRequirement {
diskAllocation = 'node' // Use instance storage
}
}
}
The EBS-specific options (diskType, diskIops, diskThroughputMiBps, diskEncrypted) do not apply to node allocation. Specifying them causes an error.