Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
383f53d
Fix environment variable references for strict syntax compliance
ewels Jan 16, 2026
b85e816
Use System.getenv() for backwards compatability
ewels Jan 17, 2026
d782449
Update sentieon/bwamem to topic
SPPearce Jan 19, 2026
4f91518
Add bwa version back
SPPearce Jan 19, 2026
dd45703
Fix linting
SPPearce Jan 19, 2026
769a5ee
Swap environment.yml to new version
SPPearce Jan 19, 2026
5cca01c
Use nft-bam
SPPearce Jan 20, 2026
706ca58
Use nft-bam
SPPearce Jan 20, 2026
10cffe5
Update all sentieon modules
SPPearce Jan 20, 2026
be3b8a7
Fix some modules
SPPearce Jan 20, 2026
f2874ec
Merge remote-tracking branch 'origin/master' into sentieon_topics_all
SPPearce Jan 20, 2026
f913a09
Prettier
SPPearce Jan 20, 2026
c8f4d87
Add missing variable from stub
SPPearce Jan 20, 2026
283a4d7
Merge remote-tracking branch 'origin/master' into fix/env-variable-re…
SPPearce Jan 20, 2026
b9e34c3
Merge branch 'fix/env-variable-references' into sentieon_topics_all
SPPearce Jan 20, 2026
9fc390b
Update qualcal
SPPearce Jan 20, 2026
4d8cc64
Merge remote-tracking branch 'origin/master' into sentieon_topics_all
SPPearce Jan 20, 2026
1332448
Update varcal
SPPearce Jan 20, 2026
ba5730b
More updates
SPPearce Jan 21, 2026
b597c51
Fix singularity container for wgsmetrics and conda versions
SPPearce Jan 21, 2026
abf0c9c
Fix some undefined it warnings
SPPearce Jan 21, 2026
c90660f
Update snapshot
SPPearce Jan 21, 2026
7004f0a
Merge branch 'master' into sentieon_topics_all
SPPearce Jan 21, 2026
7b0d8cb
Remove trailing spaces
SPPearce Jan 21, 2026
9a86384
Fix wgsmetrics linting
SPPearce Jan 21, 2026
112b1df
Fix dedup
SPPearce Jan 21, 2026
78e4647
Fix sentieon/dedup
SPPearce Jan 21, 2026
d6fbaca
Merge branch 'master' into sentieon_topics_all
SPPearce Jan 21, 2026
c718682
[automated] Fix linting with Prettier
nf-core-bot Jan 21, 2026
f016e05
Merge branch 'master' into sentieon_topics_all
SPPearce Jan 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion modules/nf-core/sentieon/applyvarcal/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ channels:
- conda-forge
- bioconda
dependencies:
- bioconda::sentieon=202503.01
- bioconda::sentieon=202503.02
16 changes: 3 additions & 13 deletions modules/nf-core/sentieon/applyvarcal/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ process SENTIEON_APPLYVARCAL {

conda "${moduleDir}/environment.yml"
container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container
? 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/0f/0f1dfe59ef66d7326b43db9ab1f39ce6220b358a311078c949a208f9c9815d4e/data'
: 'community.wave.seqera.io/library/sentieon:202503.01--1863def31ed8e4d5'}"
? 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/73/73e9111552beb76e2ad3ad89eb75bed162d7c5b85b2433723ecb4fc96a02674a/data'
: 'community.wave.seqera.io/library/sentieon:202503.02--def60555294d04fa'}"

input:
tuple val(meta), path(vcf), path(vcf_tbi), path(recal), path(recal_index), path(tranches)
Expand All @@ -16,7 +16,7 @@ process SENTIEON_APPLYVARCAL {
output:
tuple val(meta), path("*.vcf.gz"), emit: vcf
tuple val(meta), path("*.tbi"), emit: tbi
path "versions.yml", emit: versions
tuple val("${task.process}"), val('sentieon'), eval('sentieon driver --version | sed "s/.*-//g"'), topic: versions, emit: versions_sentieon

when:
task.ext.when == null || task.ext.when
Expand All @@ -41,22 +41,12 @@ process SENTIEON_APPLYVARCAL {
--tranches_file ${tranches} \\
${args2} \\
${prefix}.vcf.gz

cat <<-END_VERSIONS > versions.yml
"${task.process}":
sentieon: \$(echo \$(sentieon driver --version 2>&1) | sed -e "s/sentieon-genomics-//g")
END_VERSIONS
"""

stub:
def prefix = task.ext.prefix ?: "${meta.id}_applyvarcal"
"""
echo | gzip > ${prefix}.vcf.gz
touch ${prefix}.vcf.gz.tbi

cat <<-END_VERSIONS > versions.yml
"${task.process}":
sentieon: \$(echo \$(sentieon driver --version 2>&1) | sed -e "s/sentieon-genomics-//g")
END_VERSIONS
"""
}
27 changes: 21 additions & 6 deletions modules/nf-core/sentieon/applyvarcal/meta.yml
Original file line number Diff line number Diff line change
Expand Up @@ -96,13 +96,28 @@ output:
description: Index of recalibrated vcf file.
pattern: "*vcf.gz.tbi"
ontologies: []
versions_sentieon:
- - "${task.process}":
type: string
description: The process the versions were collected from
- "sentieon":
type: string
description: The tool name
- 'sentieon driver --version | sed "s/.*-//g"':
type: string
description: The command used to generate the version of the tool

topics:
versions:
- versions.yml:
type: file
description: File containing software versions.
pattern: "versions.yml"
ontologies:
- edam: http://edamontology.org/format_3750 # YAML
- - "${task.process}":
type: string
description: The process the versions were collected from
- "sentieon":
type: string
description: The tool name
- 'sentieon driver --version | sed "s/.*-//g"':
type: string
description: The command used to generate the version of the tool
authors:
- "@assp8200"
maintainers:
Expand Down
6 changes: 2 additions & 4 deletions modules/nf-core/sentieon/applyvarcal/tests/main.nf.test
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,7 @@ nextflow_process {
assertAll(
{ assert snapshot(
path(process.out.vcf[0][1]).vcf.summary,
file(process.out.tbi[0][1]).name,
path(process.out.versions[0]).yaml
file(process.out.tbi[0][1]).name
).match()
}
)
Expand Down Expand Up @@ -71,8 +70,7 @@ nextflow_process {
assert process.success
assertAll(
{ assert snapshot(
process.out,
path(process.out.versions[0]).yaml
process.out
).match()
}
)
Expand Down
40 changes: 19 additions & 21 deletions modules/nf-core/sentieon/applyvarcal/tests/main.nf.test.snap
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,13 @@
"homo sapiens": {
"content": [
"VcfFile [chromosomes=[chr21], sampleCount=1, variantCount=733, phased=false, phasedAutodetect=false]",
"test_applyvarcal.vcf.gz.tbi",
{
"SENTIEON_APPLYVARCAL": {
"sentieon": 202503.01
}
}
"test_applyvarcal.vcf.gz.tbi"
],
"meta": {
"nf-test": "0.9.2",
"nextflow": "24.10.4"
"nf-test": "0.9.3",
"nextflow": "25.10.2"
},
"timestamp": "2025-05-09T07:58:39.037594229"
"timestamp": "2026-01-19T18:19:13.890563238"
},
"homo sapiens -- stub": {
"content": [
Expand All @@ -35,7 +30,11 @@
]
],
"2": [
"versions.yml:md5,debf15eb513a4082e53616c5a77e0477"
[
"SENTIEON_APPLYVARCAL",
"sentieon",
"202503.02"
]
],
"tbi": [
[
Expand All @@ -53,20 +52,19 @@
"test_applyvarcal.vcf.gz:md5,68b329da9893e34099c7d8ad5cb9c940"
]
],
"versions": [
"versions.yml:md5,debf15eb513a4082e53616c5a77e0477"
"versions_sentieon": [
[
"SENTIEON_APPLYVARCAL",
"sentieon",
"202503.02"
]
]
},
{
"SENTIEON_APPLYVARCAL": {
"sentieon": 202503.01
}
}
],
"meta": {
"nf-test": "0.9.2",
"nextflow": "24.10.4"
"nf-test": "0.9.3",
"nextflow": "25.10.2"
},
"timestamp": "2025-05-09T07:59:06.102870321"
"timestamp": "2026-01-19T18:19:21.793386558"
}
}
}
16 changes: 8 additions & 8 deletions modules/nf-core/sentieon/applyvarcal/tests/nextflow.config
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
process {
withName: "SENTIEON_APPLYVARCAL" {
ext.args = params.module_args
ext.args2 = params.module_args
}
}

env {
// NOTE This is how nf-core/sarek users will use Sentieon in real world use
// TODO: Update to `env('SENTIEON_LICSRVR_IP')` when minimum Nextflow version is >= 26.04.0
Expand All @@ -13,6 +6,13 @@ env {
// TODO: Update to `env('SENTIEON_AUTH_MECH')` when minimum Nextflow version is >= 26.04.0
SENTIEON_AUTH_MECH = System.getenv('SENTIEON_AUTH_MECH')
SENTIEON_AUTH_DATA = secrets.SENTIEON_AUTH_DATA
// NOTE This is how nf-core/sarek users will test out Sentieon in Sarek with a license file
// NOTE This is how users will test out Sentieon in Sarek with a license file
// nextflow secrets set SENTIEON_LICENSE_BASE64 \$(cat <sentieon_license_file.lic> | base64 -w 0)
}

process {
withName: 'SENTIEON_APPLYVARCAL' {
ext.args = params.module_args
ext.args2 = params.module_args2
}
}
2 changes: 1 addition & 1 deletion modules/nf-core/sentieon/bwaindex/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ channels:
- conda-forge
- bioconda
dependencies:
- bioconda::sentieon=202503.01
- bioconda::sentieon=202503.02
22 changes: 7 additions & 15 deletions modules/nf-core/sentieon/bwaindex/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,36 +5,34 @@ process SENTIEON_BWAINDEX {

conda "${moduleDir}/environment.yml"
container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container
? 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/0f/0f1dfe59ef66d7326b43db9ab1f39ce6220b358a311078c949a208f9c9815d4e/data'
: 'community.wave.seqera.io/library/sentieon:202503.01--1863def31ed8e4d5'}"
? 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/73/73e9111552beb76e2ad3ad89eb75bed162d7c5b85b2433723ecb4fc96a02674a/data'
: 'community.wave.seqera.io/library/sentieon:202503.02--def60555294d04fa'}"

input:
tuple val(meta), path(fasta)

output:
tuple val(meta), path("bwa"), emit: index
path "versions.yml", emit: versions
tuple val("${task.process}"), val('sentieon'), eval('sentieon driver --version | sed "s/.*-//g"'), topic: versions, emit: versions_sentieon

when:
task.ext.when == null || task.ext.when

script:
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ? "bwa/${task.ext.prefix}" : "bwa/${fasta.baseName}"
def sentieonLicense = secrets.SENTIEON_LICENSE_BASE64
? "export SENTIEON_LICENSE=\$(mktemp);echo -e \"${secrets.SENTIEON_LICENSE_BASE64}\" | base64 -d > \$SENTIEON_LICENSE; "
: ""
"""
${sentieonLicense}
mkdir bwa

sentieon \\
bwa index \\
${args} \\
-p ${prefix} \\
${fasta}

cat <<-END_VERSIONS > versions.yml
"${task.process}":
bwa: \$(echo \$(sentieon bwa 2>&1) | sed 's/^.*Version: //; s/Contact:.*\$//')
sentieon: \$(echo \$(sentieon driver --version 2>&1) | sed -e "s/sentieon-genomics-//g")
END_VERSIONS
"""

stub:
Expand All @@ -46,11 +44,5 @@ process SENTIEON_BWAINDEX {
touch bwa/genome.bwt
touch bwa/genome.pac
touch bwa/genome.sa

cat <<-END_VERSIONS > versions.yml
"${task.process}":
bwa: \$(echo \$(sentieon bwa 2>&1) | sed 's/^.*Version: //; s/Contact:.*\$//')
sentieon: \$(echo \$(sentieon driver --version 2>&1) | sed -e "s/sentieon-genomics-//g")
END_VERSIONS
"""
}
28 changes: 20 additions & 8 deletions modules/nf-core/sentieon/bwaindex/meta.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,16 +36,28 @@ output:
description: BWA genome index files
pattern: "*.{amb,ann,bwt,pac,sa}"
ontologies: []
versions_sentieon:
- - ${task.process}:
type: string
description: The process the versions were collected from
- sentieon:
type: string
description: The tool name
- 'sentieon driver --version | sed "s/.*-//g"':
type: string
description: The command used to generate the version of the tool
topics:
versions:
- versions.yml:
type: file
description: File containing software versions
pattern: "versions.yml"
ontologies:
- edam: http://edamontology.org/format_3750 # YAML
- - ${task.process}:
type: string
description: The process the versions were collected from
- sentieon:
type: string
description: The tool name
- 'sentieon driver --version | sed "s/.*-//g"':
type: string
description: The command used to generate the version of the tool
authors:
- "@drpatelh"
- "@maxulysse"
maintainers:
- "@drpatelh"
- "@maxulysse"
40 changes: 28 additions & 12 deletions modules/nf-core/sentieon/bwaindex/tests/main.nf.test.snap
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,11 @@
]
],
"1": [
"versions.yml:md5,c217de4e5a992968de304e342fd720f6"
[
"SENTIEON_BWAINDEX",
"sentieon",
"202503.02"
]
],
"index": [
[
Expand All @@ -33,16 +37,20 @@
]
]
],
"versions": [
"versions.yml:md5,c217de4e5a992968de304e342fd720f6"
"versions_sentieon": [
[
"SENTIEON_BWAINDEX",
"sentieon",
"202503.02"
]
]
}
],
"meta": {
"nf-test": "0.9.2",
"nextflow": "24.10.2"
"nf-test": "0.9.3",
"nextflow": "25.10.2"
},
"timestamp": "2025-08-21T08:16:59.165128416"
"timestamp": "2026-01-19T18:27:10.208416609"
},
"build index - fasta": {
"content": [
Expand All @@ -62,7 +70,11 @@
]
],
"1": [
"versions.yml:md5,c217de4e5a992968de304e342fd720f6"
[
"SENTIEON_BWAINDEX",
"sentieon",
"202503.02"
]
],
"index": [
[
Expand All @@ -78,15 +90,19 @@
]
]
],
"versions": [
"versions.yml:md5,c217de4e5a992968de304e342fd720f6"
"versions_sentieon": [
[
"SENTIEON_BWAINDEX",
"sentieon",
"202503.02"
]
]
}
],
"meta": {
"nf-test": "0.9.2",
"nextflow": "24.10.2"
"nf-test": "0.9.3",
"nextflow": "25.10.2"
},
"timestamp": "2025-08-21T08:16:53.915178368"
"timestamp": "2026-01-19T18:27:03.694090374"
}
}
6 changes: 2 additions & 4 deletions modules/nf-core/sentieon/bwaindex/tests/nextflow.config
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ env {
// TODO: Update to `env('SENTIEON_AUTH_MECH')` when minimum Nextflow version is >= 26.04.0
SENTIEON_AUTH_MECH = System.getenv('SENTIEON_AUTH_MECH')
SENTIEON_AUTH_DATA = secrets.SENTIEON_AUTH_DATA
// NOTE This is how nf-core/sarek users will test out Sentieon in Sarek with a license file
// nextflow secrets set SENTIEON_LICENSE_BASE64 $(cat <sentieon_license_file.lic> | base64 -w 0)
}
process {
// NOTE This is how users will test out Sentieon in Sarek with a license file
// nextflow secrets set SENTIEON_LICENSE_BASE64 \$(cat <sentieon_license_file.lic> | base64 -w 0)
}
2 changes: 1 addition & 1 deletion modules/nf-core/sentieon/collectvcmetrics/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ channels:
- conda-forge
- bioconda
dependencies:
- bioconda::sentieon=202503.01
- bioconda::sentieon=202503.02
Loading