From fd8f3ac60678962bb25fd1a30e4602bbdf95809c Mon Sep 17 00:00:00 2001
From: "Gervaise H. Henry" <gervaise.henry@utsouthwestern.edu>
Date: Mon, 4 Mar 2019 15:23:53 -0600
Subject: [PATCH] Add 3.0.2 as a param option in astrocyte-pkg.yml, main.nf and
 biohpc.config to address #8

---
 astrocyte_pkg.yml           |  8 +--
 workflow/conf/biohpc.config |  7 ++-
 workflow/main.nf            | 98 +++++++++++++++++++++++++------------
 3 files changed, 77 insertions(+), 36 deletions(-)

diff --git a/astrocyte_pkg.yml b/astrocyte_pkg.yml
index 8181364..492039e 100755
--- a/astrocyte_pkg.yml
+++ b/astrocyte_pkg.yml
@@ -42,6 +42,7 @@ workflow_modules:
   - 'python/3.6.1-2-anaconda'
   - 'cellranger/2.1.1'
   - 'cellranger/3.0.1'
+  - 'cellranger/3.0.2'
   - 'bcl2fastq/2.17.1.14'
 
 # A list of parameters used by the workflow, defining how to present them,
@@ -125,10 +126,11 @@ workflow_parameters:
 
   - id: version
     type: select
-    default: 3.0.1
+    default: 3.0.2
     choices:
-      - [ 3, '3.0.1']
-      - [ 2, '2.0.1']
+      - [ 3.0.2, '3.0.2']
+      - [ 3.0.1, '3.0.1']
+      - [ 2.1.1, '2.1.1']
     required: true
     description: |
       10x cellranger version.
diff --git a/workflow/conf/biohpc.config b/workflow/conf/biohpc.config
index 0b515ec..66ffcf2 100755
--- a/workflow/conf/biohpc.config
+++ b/workflow/conf/biohpc.config
@@ -7,12 +7,15 @@ process {
     module = ['python/3.6.1-2-anaconda']
     executor = 'local'
   }
-  $count2 {
+  $count211 {
     module = ['cellranger/2.1.1']
   }
-  $count3 {
+  $count301 {
     module = ['cellranger/3.0.1']
   }
+  $count302 {
+    module = ['cellranger/3.0.2']
+  }
 }
 
 trace {
diff --git a/workflow/main.nf b/workflow/main.nf
index 0165884..2e15c89 100755
--- a/workflow/main.nf
+++ b/workflow/main.nf
@@ -9,7 +9,7 @@ params.designFile = "$baseDir/../test_data/design.csv"
 params.genome = '/project/apps_database/cellranger/refdata-cellranger-GRCh38-1.2.0'
 params.expectCells = 10000
 params.forceCells = 0
-params.version = 3
+params.version = 3.0.2
 
 // Define regular variables
 designLocation = Channel
@@ -56,76 +56,112 @@ samples = designPaths
 
 // Duplicate variables
 samples.into {
-  samples2
-  samples3
+  samples211
+  samples301
+  samples302
 }
 refLocation.into {
-  refLocation2
-  refLocation3
+  refLocation211
+  refLocation301
+  refLocation302
 }
-expectCells2 = expectCells
-expectCells3 = expectCells
-forceCells2 = forceCells
-forceCells3 = forceCells
 
-process count2 {
-  tag "count2-$sample"
+expectCells211 = expectCells
+expectCells301 = expectCells
+expectCells302 = expectCells
+forceCells211 = forceCells
+forceCells301 = forceCells
+forceCells302 = forceCells
+
+process count211 {
+  tag "count211-$sample"
+
+  publishDir "$baseDir/output", mode: 'copy'
+
+  input:
+
+  set sample, file("${sample}_S1_L00?_R1_001.fastq.gz"), file("${sample}_S1_L00?_R2_001.fastq.gz") from samples211
+  file ref from refLocation211.first()
+  expectCells211
+  forceCells211
+
+  output:
+
+  file("**/outs/**") into outPaths211
+
+  when:
+  version == 211
+
+  script:
+  if (forceCells211 == 0){
+    	"""
+    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --expect-cells=$expectCells211
+    	"""
+  } else {
+    	"""
+    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --force-cells=$forceCells211
+    	"""
+  }
+}
+
+process count301 {
+  tag "count301-$sample"
 
   publishDir "$baseDir/output", mode: 'copy'
 
   input:
 
-  set sample, file("${sample}_S1_L00?_R1_001.fastq.gz"), file("${sample}_S1_L00?_R2_001.fastq.gz") from samples2
-  file ref from refLocation2.first()
-  expectCells2
-  forceCells2
+  set sample, file("${sample}_S1_L00?_R1_001.fastq.gz"), file("${sample}_S1_L00?_R2_001.fastq.gz") from samples301
+  file ref from refLocation301.first()
+  expectCells301
+  forceCells301
 
   output:
 
-  file("**/outs/**") into outPaths2
+  file("**/outs/**") into outPaths301
 
   when:
-  version == 2
+  version == 301
 
   script:
-  if (forceCells2 == 0){
+  if (forceCells301 == 0){
     	"""
-    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --expect-cells=$expectCells2
+    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --expect-cells=$expectCells301
     	"""
   } else {
     	"""
-    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --force-cells=$forceCells2
+    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --force-cells=$forceCells301
     	"""
   }
 }
 
-process count3 {
-  tag "count3-$sample"
+process count302 {
+  tag "count302-$sample"
 
   publishDir "$baseDir/output", mode: 'copy'
 
   input:
 
-  set sample, file("${sample}_S1_L00?_R1_001.fastq.gz"), file("${sample}_S1_L00?_R2_001.fastq.gz") from samples3
-  file ref from refLocation3.first()
-  expectCells3
-  forceCells3
+  set sample, file("${sample}_S1_L00?_R1_001.fastq.gz"), file("${sample}_S1_L00?_R2_001.fastq.gz") from samples302
+  file ref from refLocation302.first()
+  expectCells302
+  forceCells302
 
   output:
 
-  file("**/outs/**") into outPaths3
+  file("**/outs/**") into outPaths302
 
   when:
-  version == 3
+  version == 302
 
   script:
-  if (forceCells3 == 0){
+  if (forceCells302 == 0){
     	"""
-    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --expect-cells=$expectCells3
+    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --expect-cells=$expectCells302
     	"""
   } else {
     	"""
-    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --force-cells=$forceCells3
+    	cellranger count --id="$sample" --transcriptome="./$ref" --fastqs=. --sample="$sample" --force-cells=$forceCells302
     	"""
   }
 }
-- 
GitLab