mirror of
https://github.com/MillironX/nf-configs.git
synced 2024-11-23 00:39:56 +00:00
38 lines
1.4 KiB
Text
38 lines
1.4 KiB
Text
|
params {
|
||
|
config_profile_description = 'The Sage Bionetworks profile'
|
||
|
config_profile_contact = 'Bruno Grande (@BrunoGrandePhD)'
|
||
|
config_profile_url = 'https://github.com/Sage-Bionetworks-Workflows'
|
||
|
}
|
||
|
|
||
|
// Function to ensure that resource requirements don't go beyond a maximum limit
|
||
|
def check_max(obj, type) {
|
||
|
if (type == 'memory') {
|
||
|
try {
|
||
|
if (obj.compareTo(params.max_memory as nextflow.util.MemoryUnit) == 1)
|
||
|
return params.max_memory as nextflow.util.MemoryUnit
|
||
|
else
|
||
|
return obj
|
||
|
} catch (all) {
|
||
|
println " ### ERROR ### Max memory '${params.max_memory}' is not valid! Using default value: $obj"
|
||
|
return obj
|
||
|
}
|
||
|
} else if (type == 'time') {
|
||
|
try {
|
||
|
if (obj.compareTo(params.max_time as nextflow.util.Duration) == 1)
|
||
|
return params.max_time as nextflow.util.Duration
|
||
|
else
|
||
|
return obj
|
||
|
} catch (all) {
|
||
|
println " ### ERROR ### Max time '${params.max_time}' is not valid! Using default value: $obj"
|
||
|
return obj
|
||
|
}
|
||
|
} else if (type == 'cpus') {
|
||
|
try {
|
||
|
return Math.min( obj, params.max_cpus as int )
|
||
|
} catch (all) {
|
||
|
println " ### ERROR ### Max cpus '${params.max_cpus}' is not valid! Using default value: $obj"
|
||
|
return obj
|
||
|
}
|
||
|
}
|
||
|
}
|