mirror of
https://github.com/MillironX/nf-configs.git
synced 2024-11-21 16:16:04 +00:00
Move check_max()
to global config
This commit is contained in:
parent
1c7230cb08
commit
a19d79f6ff
1 changed files with 34 additions and 0 deletions
|
@ -64,3 +64,37 @@ params {
|
||||||
def slow(attempt, factor = 2) {
|
def slow(attempt, factor = 2) {
|
||||||
return Math.ceil( attempt / factor) as int
|
return Math.ceil( attempt / factor) as int
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue