Skip to content
Open
Show file tree
Hide file tree
Changes from 62 commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
f70c88c
make vsc_kul_hasselt strict syntax compatible
nvnieuwk Feb 18, 2026
cf61456
make pipeline configs strict syntax compatible
nvnieuwk Feb 18, 2026
df929f5
fix Alliance_canada
maxulysse Feb 24, 2026
0dfa7f2
fix BI
maxulysse Feb 24, 2026
620bcab
fix bigpurple
maxulysse Feb 24, 2026
6274be5
fix bih
maxulysse Feb 24, 2026
e8ad0ca
{USER} -> {System.getenv('USER')}
maxulysse Feb 24, 2026
4c98886
USER -> {System.getenv('USER')}
maxulysse Feb 24, 2026
2862ea4
fix bluebear
maxulysse Feb 24, 2026
946aa69
fix cannon
maxulysse Feb 24, 2026
75417a0
HOME -> {System.getenv('HOME')}
maxulysse Feb 24, 2026
e4d2a46
fix ceres
maxulysse Feb 24, 2026
de82424
fix cfc
maxulysse Feb 24, 2026
0003b5d
fix cfc_dev
maxulysse Feb 24, 2026
358f1e4
fix cheaha
maxulysse Feb 24, 2026
0dc0198
fix embl_hd
maxulysse Feb 24, 2026
b32c1ba
fix fub_curta
maxulysse Feb 24, 2026
bdf9e39
fix cheaha
maxulysse Feb 24, 2026
447ffb2
Merge branch 'master' into strict/pipeline-configs
jfy133 Mar 19, 2026
ee8b78a
Merge branch 'master' into strict/vsc_kul_hasselt
jfy133 Mar 29, 2026
9f06b1e
use ext variables to hold the queue functions
nvnieuwk Mar 30, 2026
2259465
Merge branch 'strict/vsc_kul_hasselt' of github.com:nvnieuwk/configs …
nvnieuwk Mar 30, 2026
94c373a
Merge branch 'master' into fix_linting
maxulysse Apr 2, 2026
abf6583
Apply suggestion from @maxulysse
maxulysse Apr 2, 2026
adb66eb
Apply suggestion from @maxulysse
maxulysse Apr 2, 2026
333ce0c
bi
maxulysse Apr 2, 2026
c5d2674
configtest.nf
maxulysse Apr 2, 2026
834d13e
ucl_myriad
maxulysse Apr 2, 2026
648c20d
incliva
maxulysse Apr 2, 2026
36319d2
pre-commit
maxulysse Apr 2, 2026
fd41955
janelia
maxulysse Apr 2, 2026
56d78a2
maestro
maxulysse Apr 2, 2026
4f11282
nfi_gabi
maxulysse Apr 2, 2026
94759f3
sage
maxulysse Apr 2, 2026
d41d38d
seadragon
maxulysse Apr 2, 2026
bbbb381
software_license
maxulysse Apr 2, 2026
b60c7e7
utd_ganymede
maxulysse Apr 2, 2026
2927bd1
wustl_htcf
maxulysse Apr 2, 2026
20bc0c2
nci_gadi
maxulysse Apr 2, 2026
d428e00
icr_davros
maxulysse Apr 2, 2026
81e8e2e
crg
maxulysse Apr 2, 2026
b44fac1
crg
maxulysse Apr 2, 2026
b75aa58
pre-commit
maxulysse Apr 2, 2026
f25ceba
utd_juno
maxulysse Apr 2, 2026
612c17b
utd_juno
maxulysse Apr 2, 2026
ba59eb7
Merge branch 'master' into strict/pipeline-configs
maxulysse Apr 2, 2026
af10567
Merge branch 'strict/pipeline-configs' into fix_linting
maxulysse Apr 2, 2026
a8adce2
iris.config
maxulysse Apr 2, 2026
7bd7451
iris.config
maxulysse Apr 2, 2026
bae4878
no trace files
maxulysse Apr 2, 2026
68ee06d
Merge branch 'master' into strict/vsc_kul_hasselt
maxulysse Apr 2, 2026
22a7a64
Merge branch 'strict/vsc_calcua' into fix_linting
maxulysse Apr 2, 2026
8e9da3a
Merge branch 'strict/vsc_kul_hasselt' into fix_linting
maxulysse Apr 2, 2026
fa35b24
pre-commit
maxulysse Apr 2, 2026
7854267
kaust
maxulysse Apr 2, 2026
d14c5f5
kaust
maxulysse Apr 2, 2026
01d63e9
update GHA
maxulysse Apr 2, 2026
c1cac76
update GHA
maxulysse Apr 2, 2026
35d0816
update GHA
maxulysse Apr 2, 2026
37aaf3a
Merge branch 'master' into fix_linting
maxulysse Apr 3, 2026
d421c00
Merge branch 'master' into fix_linting
maxulysse Apr 7, 2026
8de6d84
pre-commit
maxulysse Apr 7, 2026
8a8bc01
Apply suggestions from code review
maxulysse Apr 7, 2026
d8b774c
Apply suggestion from @maxulysse
maxulysse Apr 7, 2026
8f2f955
Merge branch 'master' into fix_linting
maxulysse Apr 7, 2026
9314cd0
improve params
maxulysse Apr 7, 2026
84d73a1
Merge branch 'master' into fix_linting
maxulysse Apr 7, 2026
e2e261a
Merge branch 'master' into fix_linting
maxulysse Apr 7, 2026
6b38c8d
Merge branch 'master' into fix_linting
maxulysse Apr 7, 2026
c4822ec
Merge branch 'master' into fix_linting
maxulysse Apr 7, 2026
81627bd
alliance_canada
maxulysse Apr 7, 2026
ced9c4c
Merge branch 'master' into fix_linting
maxulysse Apr 7, 2026
a74749e
Merge branch 'master' into fix_linting
maxulysse Apr 9, 2026
80da799
Merge branch 'master' into fix_linting
maxulysse Apr 14, 2026
e559172
restore
maxulysse Apr 14, 2026
b24722e
Merge branch 'master' into fix_linting
maxulysse Apr 14, 2026
5983126
Merge branch 'master' into fix_linting
maxulysse Apr 15, 2026
d9d1c5e
Merge branch 'master' into fix_linting
maxulysse Apr 17, 2026
4930d6f
Merge branch 'master' into fix_linting
maxulysse Apr 20, 2026
eb02ea9
Merge branch 'master' into fix_linting
maxulysse Apr 21, 2026
581b7ff
Merge branch 'master' into fix_linting
maxulysse Apr 21, 2026
386b38c
Merge branch 'master' into fix_linting
maxulysse Apr 22, 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
18 changes: 17 additions & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,22 @@ jobs:
with:
version: ${{ matrix.NXF_VER }}
- run: nextflow config -show-profiles ${GITHUB_WORKSPACE}

lint_nextflow_config:
name: Check if nextflow files are valid with nextflow lint
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
NXF_VER:
- 25.04.0
- latest-everything
steps:
- uses: actions/checkout@v4
- name: Set up Nextflow
uses: nf-core/setup-nextflow@v2
with:
version: ${{ matrix.NXF_VER }}
- run: nextflow lint ${GITHUB_WORKSPACE}

profile_test:
Expand Down Expand Up @@ -210,7 +226,7 @@ jobs:
uses: nf-core/setup-nextflow@v2
with:
version: "latest-everything"
- name: Check ${{ matrix.profile }} profile
- name: Check ${{ matrix.profile }} profile
env:
SCRATCH: "~"
NXF_GLOBAL_CONFIG: awsbatch.config
Expand Down
13 changes: 13 additions & 0 deletions conf/aliance_canada/narval.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// Used by https://github.com/nf-core/configs/blob/master/conf/aliance_canada.config
// Updates settings for Narval

params.config_profile_description = 'Alliance Canada (Narval) cluster profile provided by nf-core/configs.'
params.max_memory = 249.GB
params.max_cpus = 64
process {
resourceLimits = [
memory: 249.GB,
cpus: 64,
time: 168.h
]
}
13 changes: 13 additions & 0 deletions conf/aliance_canada/nibi.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// Used by https://github.com/nf-core/configs/blob/master/conf/aliance_canada.config
// Updates settings for Nibi

params.config_profile_description = 'Alliance Canada (Nibi) cluster profile provided by nf-core/configs.'
params.max_memory = 750.GB
params.max_cpus = 192
process {
resourceLimits = [
memory: 750.GB,
cpus: 192,
time: 168.h
]
}
13 changes: 13 additions & 0 deletions conf/aliance_canada/rorqual.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// Used by https://github.com/nf-core/configs/blob/master/conf/aliance_canada.config
// Updates settings for Rorqual

params.config_profile_description = 'Alliance Canada (Rorqual) cluster profile provided by nf-core/configs.'
params.max_memory = 750.GB
params.max_cpus = 192
process {
resourceLimits = [
memory: 750.GB,
cpus: 192,
time: 168.h
]
}
15 changes: 15 additions & 0 deletions conf/aliance_canada/trillium.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Used by https://github.com/nf-core/configs/blob/master/conf/aliance_canada.config
// Updates settings for Trillium

params.config_profile_description = 'Alliance Canada (Trillium) cluster profile provided by nf-core/configs.'
params.max_memory = null
params.max_cpus = null
process {
clusterOptions = "--account=${System.getenv('SLURM_ACCOUNT')} --nodes=1"
resourceLimits = [
time: 168.h
]
}
executor {
queueSize = 500
}
80 changes: 23 additions & 57 deletions conf/alliance_canada.config
Original file line number Diff line number Diff line change
Expand Up @@ -41,70 +41,36 @@ executor {

// Cluster name is available as environment variable
// If not found, default to narval as it has the lowest limits
hostname = "narval"
try {
hostname = "${System.getenv('HOSTNAME')}"
} catch (java.io.IOException e) {
System.err.println("WARNING: Could not determine current cluster, defaulting to narval")
}

// Cluster Narval
if (hostname.startsWith("narval")) {
params.config_profile_description = 'Alliance Canada (Narval) cluster profile provided by nf-core/configs.'
params.max_memory = 249.GB
params.max_cpus = 64
process {
resourceLimits = [
memory: 249.GB,
cpus: 64,
time: 168.h
]
includeConfig ({
def hostname = "narval"
try {
hostname = "${System.getenv('HOSTNAME')}"
}
}

// Cluster Rorqual
if (hostname.startsWith("rorqual")) {
params.config_profile_description = 'Alliance Canada (Rorqual) cluster profile provided by nf-core/configs.'
params.max_memory = 750.GB
params.max_cpus = 192
process {
resourceLimits = [
memory: 750.GB,
cpus: 192,
time: 168.h
]
catch (IOException _e) {
System.err.println("WARNING: Could not determine current cluster, defaulting to narval")
}
// Cluster Narval
if (hostname.startsWith("narval")) {
return "alliance_canada/narval.config"
Comment thread
nvnieuwk marked this conversation as resolved.
Outdated
}
}

// Cluster Trillium
if (hostname.startsWith("tri")) {
params.config_profile_description = 'Alliance Canada (Trillium) cluster profile provided by nf-core/configs.'
params.max_memory = null
params.max_cpus = null
process {
clusterOptions = "--account=${System.getenv('SLURM_ACCOUNT')} --nodes=1"
resourceLimits = [
time: 168.h
]
// Cluster Nibi
if (hostname.contains("nibi")) {
return "alliance_canada/nibi.config"
}
executor {
queueSize = 500

// Cluster Rorqual
if (hostname.startsWith("rorqual")) {
return "alliance_canada/rorqual.config"
}
}

// Cluster Nibi
if (hostname.contains("nibi")) {
params.config_profile_description = 'Alliance Canada (Nibi) cluster profile provided by nf-core/configs.'
params.max_memory = 750.GB
params.max_cpus = 192
process {
resourceLimits = [
memory: 750.GB,
cpus: 192,
time: 168.h
]
// Cluster Trillium
if (hostname.startsWith("tri")) {
return "alliance_canada/trillium.config"
}
}

return "/dev/null"
}.call())

// Cluster Fir
// not sure what the hostname is so set it as a profile
Expand Down
10 changes: 4 additions & 6 deletions conf/bi.config
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,9 @@ params {
config_profile_description = 'Boehringer Ingelheim internal profile provided by nf-core/configs.'
config_profile_contact = 'Alexander Peltzer (@apeltzer)'
config_profile_url = 'https://www.boehringer-ingelheim.com/'
bi_globalConfig = System.getenv('NXF_GLOBAL_CONFIG') ?:
System.err.println("WARNING: For bi.config requires NXF_GLOBAL_CONFIG env var to be set. Point it to global.config file if you want to use this profile.")
}

params.bi_globalConfig = System.getenv('NXF_GLOBAL_CONFIG')
if (params.bi_globalConfig == null) {
System.err.println("WARNING: For bi.config requires NXF_GLOBAL_CONFIG env var to be set. Point it to global.config file if you want to use this profile.")
} else {
includeConfig params.bi_globalConfig
}
// Include the global config if set
includeConfig(params.bi_globalConfig ?: '/dev/null')
8 changes: 3 additions & 5 deletions conf/bluebear.config
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
def scratch_dir = "/scratch/${System.getenv("USER")}"

params {
// Profile config
config_profile_description = 'BlueBEAR cluster profile'
Expand All @@ -16,13 +14,13 @@ params {
cleanup = true

// Ensure TMPDIR is set to the node-specific scratch directory
env.TMPDIR = "${scratch_dir}"
env.TMPDIR = "/scratch/${System.getenv('USER')}"

// Enable Singularity (via Apptainer) for all processes
singularity {
enabled = true
autoMount = true
runOptions = "-B ${scratch_dir}"
runOptions = "-B /scratch/${System.getenv('USER')}"
}

process {
Expand All @@ -37,7 +35,7 @@ process {
clusterOptions = "--account ${System.getenv("SLURM_JOB_ACCOUNT")}"

// Ensure scratch directory exists
beforeScript = "mkdir -p ${scratch_dir}"
beforeScript = "mkdir -p /scratch/${System.getenv('USER')}"
}

executor {
Expand Down
2 changes: 1 addition & 1 deletion conf/ceci_dragon2.config
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ params {
*/
singularity {
autoMounts = true
cacheDir = "${HOME}/.cache/singularity"
cacheDir = "${System.getenv('HOME')}/.cache/singularity"
enabled = true
pullTimeout = 3.hours
}
Expand Down
2 changes: 1 addition & 1 deletion conf/ceci_nic5.config
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ params {
*/
singularity {
autoMounts = true
cacheDir = "${HOME}/.cache/singularity"
cacheDir = "${System.getenv('HOME')}/.cache/singularity"
enabled = true
pullTimeout = 3.hours
}
Expand Down
2 changes: 0 additions & 2 deletions conf/cheaha.config
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ process {
beforeScript = 'module load Singularity/3.5.2-GCC-5.4.0-2.26'
queue = {
def queue_list = ["long"]

if (task.time <= 2.h) {
queue_list.add("express")
}
Expand All @@ -57,7 +56,6 @@ process {
queue_list.add("largemem")
}
}

return queue_list.join(",")
}
}
4 changes: 1 addition & 3 deletions conf/fub_curta.config
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ params {
max_time = 14.d
}

def membership = ['/bin/bash', '-c', 'groups'].execute().text.trim()

// Slurm configuration parameters
process {
resourceLimits = [
Expand All @@ -23,7 +21,7 @@ process {
]
executor = 'slurm'
maxRetries = 3
clusterOptions = { (membership.startsWith("b") ? '--partition=begendiv,main ' : '--partition=main ') << ( task.time <= 3.h ? '--qos=hiprio' : ( task.time <= 3.d ? '--qos=prio' : '--qos=standard' ) ) }
clusterOptions = { (['/bin/bash', '-c', 'groups'].execute().text.trim().startsWith("b") ? '--partition=begendiv,main ' : '--partition=main ') << ( task.time <= 3.h ? '--qos=hiprio' : ( task.time <= 3.d ? '--qos=prio' : '--qos=standard' ) ) }
}

// Singularity parameters
Expand Down
2 changes: 1 addition & 1 deletion conf/imperial.config
Original file line number Diff line number Diff line change
Expand Up @@ -109,5 +109,5 @@ executor {
singularity {
enabled = true
autoMounts = true
runOptions = "-B /rds/,/rds/general/user/${USER}/ephemeral/tmp/:/tmp,/rds/general/user/${USER}/ephemeral/tmp/:/var/tmp"
runOptions = "-B /rds/,/rds/general/user/${System.getenv('USER')}/ephemeral/tmp/:/tmp,/rds/general/user/${System.getenv('USER')}/ephemeral/tmp/:/var/tmp"
}
57 changes: 12 additions & 45 deletions conf/incliva.config
Original file line number Diff line number Diff line change
Expand Up @@ -3,55 +3,18 @@ params {
config_profile_description = 'INCLIVA Health Research Institute profile for nf-core.'
config_profile_contact = 'Sheila Zúñiga Trejos - bioinfo@incliva.es'
config_profile_url = 'https://www.incliva.es/en/services/platforms/bioinformatics-unit/'
}

// Function to get hostname
def getHostname() {
def process = 'hostname'.execute()
process.waitFor()
return process.text.trim()
}

// Function to set singularity path according to which host nextflow is running on

def hostname = { getHostname() }

if (hostname == 'vlinuxcervantes3srv') {
System.out.println("\nINFO: working on ${hostname}\n")

// Resources details
params.max_memory = 60.GB
params.max_cpus = 15
singularity.cacheDir = "/nfs/home/software/singularity/nf_cacheDir"

process {
resourceLimits = [
memory: 60.GB,
cpus: 15,
]
}

} else if (hostname == 'vlinuxcervantes4srv') {
System.out.println("\nINFO: working on ${hostname}.\n")

// Resources details
params.max_memory = 120.GB
params.max_cpus = 19
singularity.cacheDir = "/nfs/home/software/singularity/nf_cacheDir"

process {
resourceLimits = [
memory: 120.GB,
cpus: 19,
]
}

} else {
System.err.println("\nERROR: unknown machine. Update incliva.config on nf-core/configs if you are working on another host.\n")
hostname = 'hostname'.execute().text.trim() ?: 'unknown'
max_memory = params.hostname == 'vlinuxcervantes3srv' ? 60.GB
: params.hostname == 'vlinuxcervantes4srv' ? 120.GB
: System.err.println("\nERROR: unknown machine. Update incliva.config on nf-core/configs if you are working on another host.\n")
max_cpus = params.hostname == 'vlinuxcervantes3srv' ? 15
: params.hostname == 'vlinuxcervantes4srv' ? 19
: System.err.println("\nERROR: unknown machine. Update incliva.config on nf-core/configs if you are working on another host.\n")
}

// Singularity details
singularity {
cacheDir = "/nfs/home/software/singularity/nf_cacheDir"
enabled = true
autoMounts = true
}
Expand All @@ -60,4 +23,8 @@ singularity {
process {
executor = 'local'
maxRetries = 2
resourceLimits = params.max_memory && params.max_cpus ? [
memory: params.max_memory,
cpus: params.max_cpus
] : System.err.println("\nERROR: unknown machine. Update incliva.config on nf-core/configs if you are working on another host.\n")
}
Loading
Loading