I am trying to run the Oxford Nanopore epi2me/wf-basecalling pipeline using Seqera Platform and AWS Batch.
The nextflow.config includes base.config, which specifies these parameters when using AWS Batch:
awsbatch {
process {
executor = 'awsbatch'
queue = "${params.aws_queue}"
memory = "16 GB" // likely not enough!
withLabel:wf_common {
container = "${params.aws_image_prefix}-wf-common:${params.wf.common_sha}"
}
shell = ['/bin/bash', '-euo', 'pipefail']
// lift limit on simultaneous gpu jobs for cloud
// and ensure that the host mounts relevant driver bobbins inside the container
withLabel:gpu {
maxForks = null
containerOptions = "-e NVIDIA_DRIVER_CAPABILITIES=compute,utility --gpus all"
}
withLabel:wf_basecalling {
container = "${params.aws_image_prefix}-dorado:${params.wf.container_sha_basecalling}"
}
withLabel:wf_bonito {
container = "${params.aws_image_prefix}-bonito:${params.wf.bonito_sha}"
}
}
}
The parameter aws_image_prefix is set to ‘null’ in nextflow.config
So within Seqera Platform, I specified this advanced option for the Nextflow config file:
params {
aws_image_prefix = 'ontresearch'
}
However, this does not appear to work. The resolved configuration in Seqera Platform shows:
aws_image_prefix = '[secret]'
And the pipeline fails with
Error executing process > 'prepare_reference:cram_cache (1)'
Caused by:
Invalid container image name: [:]-wf-common:shabadd33adae761be6f2d59c6ecfb44b19cf472cfc
which suggests that the aws_image_prefix parameter isn’t being properly set.
How do I properly pass parameters to override default values in nextflow.config?