From e5bb875175eb7b87f1a15ea76ee10f0753975115 Mon Sep 17 00:00:00 2001 From: earx Date: Mon, 23 Jun 2025 16:43:21 +0200 Subject: [PATCH 1/4] patch hostname retrieval through netifaces --- singularity/reditools2/reditools2.def | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/singularity/reditools2/reditools2.def b/singularity/reditools2/reditools2.def index 95bc809..68be160 100644 --- a/singularity/reditools2/reditools2.def +++ b/singularity/reditools2/reditools2.def @@ -26,6 +26,15 @@ From: condaforge/miniforge3:24.7.1-2 ln -s /opt/reditools2/src/cineca/reditools.py /usr/local/bin/reditools.py ln -s /opt/reditools2/src/cineca/parallel_reditools.py /usr/local/bin/parallel_reditools.py + # Patch hostname retrieval in Reditools2 + sed -i.bak '849c\ + addresses = netifaces.ifaddresses(interface) + if netifaces.AF_INET in addresses:\ + ip_address = addresses[netifaces.AF_INET][0]["addr"]\ + hostname = socket.gethostbyaddr(ip_address)[0]\ + else:\ + hostname = socket.gethostname()' /reditools2/src/cineca/reditools.py + %environment export PATH=/usr/local/bin:$PATH export CONDA_DEFAULT_ENV=myenv From be09d104f8b1c869624b3b367cb39ed3aaac003a Mon Sep 17 00:00:00 2001 From: earx Date: Mon, 23 Jun 2025 16:50:50 +0200 Subject: [PATCH 2/4] fix path to reditools directory --- singularity/reditools2/reditools2.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/singularity/reditools2/reditools2.def b/singularity/reditools2/reditools2.def index 68be160..4a5befa 100644 --- a/singularity/reditools2/reditools2.def +++ b/singularity/reditools2/reditools2.def @@ -33,7 +33,7 @@ From: condaforge/miniforge3:24.7.1-2 ip_address = addresses[netifaces.AF_INET][0]["addr"]\ hostname = socket.gethostbyaddr(ip_address)[0]\ else:\ - hostname = socket.gethostname()' /reditools2/src/cineca/reditools.py + hostname = socket.gethostname()' /opt/reditools2/src/cineca/reditools.py %environment export PATH=/usr/local/bin:$PATH From 40ed25cbf57a96e048ae6541ed915a980e0a200a Mon Sep 17 00:00:00 2001 From: earx Date: Mon, 23 Jun 2025 16:55:52 +0200 Subject: [PATCH 3/4] fix newline in patch --- singularity/reditools2/reditools2.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/singularity/reditools2/reditools2.def b/singularity/reditools2/reditools2.def index 4a5befa..332cbad 100644 --- a/singularity/reditools2/reditools2.def +++ b/singularity/reditools2/reditools2.def @@ -28,7 +28,7 @@ From: condaforge/miniforge3:24.7.1-2 # Patch hostname retrieval in Reditools2 sed -i.bak '849c\ - addresses = netifaces.ifaddresses(interface) + addresses = netifaces.ifaddresses(interface)\ if netifaces.AF_INET in addresses:\ ip_address = addresses[netifaces.AF_INET][0]["addr"]\ hostname = socket.gethostbyaddr(ip_address)[0]\ From 8b279182f546bb7fdbc105f41c995aef56fccbfd Mon Sep 17 00:00:00 2001 From: ascarrunz + eduardo + non-titulaire + 2025-04-05 Date: Tue, 24 Jun 2025 13:50:17 +0200 Subject: [PATCH 4/4] Move itrop/HPC config --- config/resources/hpc.config | 7 ------- nextflow.config | 14 ++++++++++---- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/config/resources/hpc.config b/config/resources/hpc.config index 9a4c01a..8bd3a57 100644 --- a/config/resources/hpc.config +++ b/config/resources/hpc.config @@ -1,13 +1,6 @@ process { cpus = 1 time = '1h' - maxForks = 12 - shell = ['/bin/bash', '-euo', 'pipefail'] - stageOutMode = 'rsync' - - // Enable retries globally for certain exit codes - errorStrategy = { task.attempt <= 3 ? 'retry' : 'finish' } - withName: 'fastqc' { cpus = 2 diff --git a/nextflow.config b/nextflow.config index 31dcdd9..5a112b9 100644 --- a/nextflow.config +++ b/nextflow.config @@ -22,10 +22,16 @@ profiles { itrop { process { - executor = 'slurm' - queue = 'normal' - scratch = '/scratch-ib' - clusterOptions = "--constraint=infiniband" + executor = 'slurm' // Tells Nextflow to submit jobs using the SLURM workload manager + maxForks = 12 // Limits the maximum number of jobs that can be submitted concurrently for that process + shell = ['/bin/bash', '-euo', 'pipefail'] // Shell options: -e: Exit immediately on error (non-zero exit status); -u: Treat unset variables as an error; -o pipefail: The pipeline fails if any command in the pipeline fails + queue = 'normal' // Submits jobs to the SLURM partition (also called “queue”) named normal. + scratch = false // Use shared file system, not local node /tmp + stageOutMode = 'move' // Move is safe on shared FS and faster than copy + publishDirMode = 'rsync' // For final outputs, copy to results folder + errorStrategy = 'retry' // Retry failing jobs automatically + maxRetries = 3 // Retry up to 3 times + clusterOptions = "--constraint=infiniband" // extra parameters provided to the scheduler } singularity.enabled = true