From a494361b7ffe299e1ca0132188dd02e72f69c3f6 Mon Sep 17 00:00:00 2001
From: Laurent Modolo <laurent.modolo@ens-lyon.fr>
Date: Fri, 1 Mar 2019 16:06:39 +0100
Subject: [PATCH] BWA: add singularity to nf files

---
 src/nf_modules/BWA/indexing.config          | 16 ++++++++++--
 src/nf_modules/BWA/indexing.nf              |  1 -
 src/nf_modules/BWA/mapping_paired.config    | 11 ++++++++
 src/nf_modules/BWA/mapping_paired.nf        |  1 -
 src/nf_modules/BWA/tests.sh                 | 29 +++++++++++++++++++--
 src/singularity_modules/BWA/0.7.17/build.sh |  2 ++
 6 files changed, 54 insertions(+), 6 deletions(-)
 create mode 100755 src/singularity_modules/BWA/0.7.17/build.sh

diff --git a/src/nf_modules/BWA/indexing.config b/src/nf_modules/BWA/indexing.config
index 2936204f..367e0dfd 100644
--- a/src/nf_modules/BWA/indexing.config
+++ b/src/nf_modules/BWA/indexing.config
@@ -5,6 +5,16 @@ profiles {
     process {
       withName: index_fasta {
         container = "bwa:0.7.17"
+        cpus = 4
+      }
+    }
+  }
+  singularity {
+    singularity.enabled = true
+    process {
+      withName: index_fasta {
+        container = "file://bin/bwa:0.7.17.sif"
+        cpus = 4
       }
     }
   }
@@ -15,9 +25,11 @@ profiles {
         module = "BWA/0.7.17"
         executor = "sge"
         clusterOptions = "-m e -cwd -V"
+        cpus = 16
         memory = "30GB"
-        time = "12h"
-        queue = 'monointeldeb128'
+        time = "24h"
+        queue = 'E5-2670deb128A,E5-2670deb128B,E5-2670deb128C,E5-2670deb128D,E5-2670deb128E,E5-2670deb128F'
+        penv = 'openmp16'
       }
     }
   }
diff --git a/src/nf_modules/BWA/indexing.nf b/src/nf_modules/BWA/indexing.nf
index 67ea3287..09096eea 100644
--- a/src/nf_modules/BWA/indexing.nf
+++ b/src/nf_modules/BWA/indexing.nf
@@ -10,7 +10,6 @@ Channel
 
 process index_fasta {
   tag "$fasta_id"
-  cpus 4
   publishDir "results/mapping/index/", mode: 'copy'
 
   input:
diff --git a/src/nf_modules/BWA/mapping_paired.config b/src/nf_modules/BWA/mapping_paired.config
index ce8f7f45..5535fd10 100644
--- a/src/nf_modules/BWA/mapping_paired.config
+++ b/src/nf_modules/BWA/mapping_paired.config
@@ -5,6 +5,16 @@ profiles {
     process {
       withName: mapping_fastq {
         container = "bwa:0.7.17"
+        cpus = 4
+      }
+    }
+  }
+  singularity {
+    singularity.enabled = true
+    process {
+      withName: mapping_fastq {
+        container = "file://bin/bwa:0.7.17.sif"
+        cpus = 4
       }
     }
   }
@@ -15,6 +25,7 @@ profiles {
         module = "BWA/0.7.17"
         executor = "sge"
         clusterOptions = "-m e -cwd -V"
+        cpus = 16
         memory = "30GB"
         time = "24h"
         queue = 'E5-2670deb128A,E5-2670deb128B,E5-2670deb128C,E5-2670deb128D,E5-2670deb128E,E5-2670deb128F'
diff --git a/src/nf_modules/BWA/mapping_paired.nf b/src/nf_modules/BWA/mapping_paired.nf
index 5ac50ef5..7309c605 100644
--- a/src/nf_modules/BWA/mapping_paired.nf
+++ b/src/nf_modules/BWA/mapping_paired.nf
@@ -17,7 +17,6 @@ Channel
 
 process mapping_fastq {
   tag "$reads"
-  cpus 4
   publishDir "results/mapping/sam/", mode: 'copy'
 
   input:
diff --git a/src/nf_modules/BWA/tests.sh b/src/nf_modules/BWA/tests.sh
index 1f3150cf..8f3c52da 100755
--- a/src/nf_modules/BWA/tests.sh
+++ b/src/nf_modules/BWA/tests.sh
@@ -1,7 +1,8 @@
 ./nextflow src/nf_modules/BWA/indexing.nf \
   -c src/nf_modules/BWA/indexing.config \
   -profile docker \
-  --fasta "data/tiny_dataset/fasta/tiny_v2.fasta"
+  --fasta "data/tiny_dataset/fasta/tiny_v2.fasta" \
+  -resume
 
 # ./nextflow src/nf_modules/BWA/mapping_single.nf \
 #   -c src/nf_modules/BWA/mapping_single.config \
@@ -13,5 +14,29 @@
   -c src/nf_modules/BWA/mapping_paired.config \
   -profile docker \
   --index "results/mapping/index/tiny_v2*" \
-  --fastq "data/tiny_dataset/fastq/tiny*_R{1,2}.fastq"
+  --fastq "data/tiny_dataset/fastq/tiny*_R{1,2}.fastq" \
+  -resume
 
+
+if [ -x "$(command -v singularity)" ]; then
+./nextflow src/nf_modules/BWA/indexing.nf \
+  -c src/nf_modules/BWA/indexing.config \
+  -profile singularity \
+  --fasta "data/tiny_dataset/fasta/tiny_v2.fasta" \
+  -resume
+
+
+# ./nextflow src/nf_modules/BWA/mapping_single.nf \
+#   -c src/nf_modules/BWA/mapping_single.config \
+#   -profile singularity \
+#   --index "results/mapping/index/tiny_v2.index" \
+#   --fastq "data/tiny_dataset/fastq/tiny*_S.fastq"
+
+./nextflow src/nf_modules/BWA/mapping_paired.nf \
+  -c src/nf_modules/BWA/mapping_paired.config \
+  -profile singularity \
+  --index "results/mapping/index/tiny_v2*" \
+  --fastq "data/tiny_dataset/fastq/tiny*_R{1,2}.fastq" \
+  -resume
+
+fi
diff --git a/src/singularity_modules/BWA/0.7.17/build.sh b/src/singularity_modules/BWA/0.7.17/build.sh
new file mode 100755
index 00000000..340a8c21
--- /dev/null
+++ b/src/singularity_modules/BWA/0.7.17/build.sh
@@ -0,0 +1,2 @@
+#/bin/sh
+sudo singularity build --force bin/bwa:0.7.17.sif src/singularity_modules/BWA/0.7.17/BWA.def
-- 
GitLab