diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 344138f7b7822f578f1efba09709c1c355f59709..03f5ebed40d437918f01fdcfcfb3edea047d628d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -63,8 +63,8 @@ getBag:
     - schedules
   script:
   - ln -sfn `readlink -e ./test_data/auth/credential.json` ~/.deriva/credential.json
-  - singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-download-cli --version > version_deriva.txt
-  - singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-download-cli staging.gudmap.org --catalog 2 ./workflow/conf/Replicate_For_Input_Bag.json . rid=Q-Y5F6
+  - singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-download-cli --version > version_deriva.txt
+  - singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-download-cli staging.gudmap.org --catalog 2 ./workflow/conf/Replicate_For_Input_Bag.json . rid=Q-Y5F6
   - pytest -m getBag
   artifacts:
     name: "$CI_JOB_NAME"
@@ -82,10 +82,10 @@ getData:
     - merge_requests
     - schedules
   script:
-  - singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' bdbag --version > version_bdbag.txt
+  - singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' bdbag --version > version_bdbag.txt
   - ln -sfn `readlink -e ./test_data/auth/cookies.txt` ~/.bdbag/deriva-cookies.txt
   - unzip ./test_data/bag/Q-Y5F6_inputBag_xxxxtest.zip
-  - singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' bash ./workflow/scripts/bdbag_fetch.sh Q-Y5F6_inputBag Q-Y5F6
+  - singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' bash ./workflow/scripts/bdbag_fetch.sh Q-Y5F6_inputBag Q-Y5F6
   - pytest -m getData
   artifacts:
     name: "$CI_JOB_NAME"
@@ -331,12 +331,12 @@ uploadInputBag:
   - >
     md5=$(md5sum ./test.txt | awk '{ print $1 }') &&
     size=$(wc -c < ./test.txt) &&
-    exist=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Input_Bag/File_MD5=${md5}) &&
+    exist=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Input_Bag/File_MD5=${md5}) &&
     if [ "${exist}" == "[]" ]; then
       cookie=$(cat credential.json | grep -A 1 '\"staging.gudmap.org\": {' | grep -o '\"cookie\": \".*\"') &&
       cookie=${cookie:11:-1} &&
-      loc=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host staging.gudmap.org put ./test.txt /hatrac/resources/rnaseq/pipeline/input_bag/TEST/test.txt --parents) &&
-      rid=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' python3 ./workflow/scripts/upload_input_bag.py -f test.txt -l ${loc} -s ${md5} -b ${size} -n 'This is a test input bag' -o staging.gudmap.org -c ${cookie}) &&
+      loc=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host staging.gudmap.org put ./test.txt /hatrac/resources/rnaseq/pipeline/input_bag/TEST/test.txt --parents) &&
+      rid=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' python3 ./workflow/scripts/upload_input_bag.py -f test.txt -l ${loc} -s ${md5} -b ${size} -n 'This is a test input bag' -o staging.gudmap.org -c ${cookie}) &&
       echo ${rid} test input bag created
     else
       rid=$(echo ${exist} | grep -o '\"RID\":\".*\",\"RCT') &&
@@ -355,16 +355,16 @@ uploadExecutionRun:
   script:
   - ln -sfn `readlink -e ./test_data/auth/credential.json` ./credential.json
   - >
-    exist=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Execution_Run/Replicate=17-BTFJ) &&
+    exist=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Execution_Run/Replicate=17-BTFJ) &&
     cookie=$(cat credential.json | grep -A 1 '\"staging.gudmap.org\": {' | grep -o '\"cookie\": \".*\"') &&
     cookie=${cookie:11:-1} &&
     if [ "${exist}" == "[]" ]; then
-      rid=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' python3 ./workflow/scripts/upload_execution_run.py -r 17-BTFJ -w 17-BV2Y -g 17-BV90 -i 17-BTFT -s Success -d 'This is a test execution run' -o staging.gudmap.org -c ${cookie} -u F) &&
+      rid=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' python3 ./workflow/scripts/upload_execution_run.py -r 17-BTFJ -w 17-BV2Y -g 17-BV90 -i 17-BTFT -s Success -d 'This is a test execution run' -o staging.gudmap.org -c ${cookie} -u F) &&
       echo ${rid} test execution run created
     else
       rid=$(echo ${exist} | grep -o '\"RID\":\".*\",\"RCT') &&
       rid=${rid:7:-6} &&
-      rid=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' python3 ./workflow/scripts/upload_execution_run.py -r 17-BTFJ -w 17-BV2Y -g 17-BV90 -i 17-BTFT -s Success -d 'This is a test execution run' -o staging.gudmap.org -c ${cookie} -u ${rid}) &&
+      rid=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' python3 ./workflow/scripts/upload_execution_run.py -r 17-BTFJ -w 17-BV2Y -g 17-BV90 -i 17-BTFT -s Success -d 'This is a test execution run' -o staging.gudmap.org -c ${cookie} -u ${rid}) &&
       echo ${rid} test execution run already exists
     fi
 
@@ -379,17 +379,17 @@ uploadQC:
   script:
   - ln -sfn `readlink -e ./test_data/auth/credential.json` ./credential.json
   - >
-    exist=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:mRNA_QC/Replicate=17-BTFJ) &&
+    exist=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:mRNA_QC/Replicate=17-BTFJ) &&
     cookie=$(cat credential.json | grep -A 1 '\"staging.gudmap.org\": {' | grep -o '\"cookie\": \".*\"') &&
     cookie=${cookie:11:-1} &&
     if [ "${exist}" != "[]" ]; then
       rids=$(echo ${exist} | grep -o '\"RID\":\".\{7\}' | sed 's/^.\{7\}//') &&
       for rid in ${rids}; do
-        singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' python3 ./workflow/scripts/delete_entry.py -r ${rid} -t mRNA_QC -o staging.gudmap.org -c ${cookie}
+        singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' python3 ./workflow/scripts/delete_entry.py -r ${rid} -t mRNA_QC -o staging.gudmap.org -c ${cookie}
       done
       echo all old mRNA QC RIDs deleted
     fi
-      rid=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' python3 ./workflow/scripts/upload_qc.py -r 17-BTFJ -e 17-BVDJ -p "Single Read" -s forward -l 35 -w 5 -f 1 -n "This is a test mRNA QC" -o staging.gudmap.org -c ${cookie} -u F)
+      rid=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' python3 ./workflow/scripts/upload_qc.py -r 17-BTFJ -e 17-BVDJ -p "Single Read" -s forward -l 35 -w 5 -f 1 -n "This is a test mRNA QC" -o staging.gudmap.org -c ${cookie} -u F)
       echo ${rid} test mRNA QC created
 
 uploadProcessedFile:
@@ -406,20 +406,20 @@ uploadProcessedFile:
   - mkdir -p ./deriva/Seq/pipeline/17-BTFE/17-BVDJ/
   - mv 17-BTFJ_test.csv ./deriva/Seq/pipeline/17-BTFE/17-BVDJ/17-BTFJ_test.csv
   - >
-    exist=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Processed_File/Replicate=17-BTFJ) &&
+    exist=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Processed_File/Replicate=17-BTFJ) &&
     cookie=$(cat credential.json | grep -A 1 '\"staging.gudmap.org\": {' | grep -o '\"cookie\": \".*\"') &&
     cookie=${cookie:11:-1} &&
     if [ "${exist}" != "[]" ]; then
       rids=$(echo ${exist} | grep -o '\"RID\":\".\{7\}' | sed 's/^.\{7\}//') &&
       for rid in ${rids}; do
-        singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' python3 ./workflow/scripts/delete_entry.py -r ${rid} -t Processed_File -o staging.gudmap.org -c ${cookie}
+        singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' python3 ./workflow/scripts/delete_entry.py -r ${rid} -t Processed_File -o staging.gudmap.org -c ${cookie}
       done
       echo all old processed file RIDs deleted
     fi
-      singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-upload-cli --catalog 2 --token ${cookie:9} staging.gudmap.org ./deriva
+      singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-upload-cli --catalog 2 --token ${cookie:9} staging.gudmap.org ./deriva
       echo test processed file uploaded
   - mkdir test
-  - singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' bdbag test --archiver zip
+  - singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' bdbag test --archiver zip
   - echo test output bag created
   - pytest -m outputBag
 
@@ -437,12 +437,12 @@ uploadOutputBag:
   - >
     md5=$(md5sum ./test.txt | awk '{ print $1 }') &&
     size=$(wc -c < ./test.txt) &&
-    exist=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Output_Bag/File_MD5=${md5}) &&
+    exist=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' curl -s https://staging.gudmap.org/ermrest/catalog/2/entity/RNASeq:Output_Bag/File_MD5=${md5}) &&
     if [ "${exist}" == "[]" ]; then
       cookie=$(cat credential.json | grep -A 1 '\"staging.gudmap.org\": {' | grep -o '\"cookie\": \".*\"') &&
       cookie=${cookie:11:-1} &&
-      loc=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host staging.gudmap.org put ./test.txt /hatrac/resources/rnaseq/pipeline/output_bag/TEST/test.txt --parents) &&
-      rid=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' python3 ./workflow/scripts/upload_output_bag.py -e 17-BVDJ -f test.txt -l ${loc} -s ${md5} -b ${size} -n 'This is a test output bag' -o staging.gudmap.org -c ${cookie}) &&
+      loc=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host staging.gudmap.org put ./test.txt /hatrac/resources/rnaseq/pipeline/output_bag/TEST/test.txt --parents) &&
+      rid=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' python3 ./workflow/scripts/upload_output_bag.py -e 17-BVDJ -f test.txt -l ${loc} -s ${md5} -b ${size} -n 'This is a test output bag' -o staging.gudmap.org -c ${cookie}) &&
       echo ${rid} test output bag created
     else
       rid=$(echo ${exist} | grep -o '\"RID\":\".*\",\"RCT') &&
@@ -518,7 +518,7 @@ human_dev:
   - loc=$(dirname ${refURL})
   - if [ "${loc}" = "/hatrac/*" ]; then echo "reference not present in hatrac"; exit 1; fi
   - filename=$(echo $(basename ${refURL}) | grep -oP '.*(?=:)')
-  - test=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
+  - test=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
@@ -544,7 +544,7 @@ mouse_dev:
   - loc=$(dirname ${refURL})
   - if [ "${loc}" = "/hatrac/*" ]; then echo "reference not present in hatrac"; exit 1; fi
   - filename=$(echo $(basename ${refURL}) | grep -oP '.*(?=:)')
-  - test=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
+  - test=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
@@ -570,7 +570,7 @@ human_staging:
   - loc=$(dirname ${refURL})
   - if [ "${loc}" = "/hatrac/*" ]; then echo "reference not present in hatrac"; exit 1; fi
   - filename=$(echo $(basename ${refURL}) | grep -oP '.*(?=:)')
-  - test=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
+  - test=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
@@ -597,7 +597,7 @@ mouse_staging:
   - loc=$(dirname ${refURL})
   - if [ "${loc}" = "/hatrac/*" ]; then echo "reference not present in hatrac"; exit 1; fi
   - filename=$(echo $(basename ${refURL}) | grep -oP '.*(?=:)')
-  - test=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
+  - test=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
@@ -623,7 +623,7 @@ human_prod:
   - loc=$(dirname ${refURL})
   - if [ "${loc}" = "/hatrac/*" ]; then echo "reference not present in hatrac"; exit 1; fi
   - filename=$(echo $(basename ${refURL}) | grep -oP '.*(?=:)')
-  - test=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
+  - test=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
@@ -650,7 +650,7 @@ mouse_prod:
   - loc=$(dirname ${refURL})
   - if [ "${loc}" = "/hatrac/*" ]; then echo "reference not present in hatrac"; exit 1; fi
   - filename=$(echo $(basename ${refURL}) | grep -oP '.*(?=:)')
-  - test=$(singularity run 'docker://gudmaprbk/deriva1.3:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
+  - test=$(singularity run 'docker://gudmaprbk/deriva1.4:1.0.0' deriva-hatrac-cli --host ${referenceBase} ls ${loc}/)
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
diff --git a/workflow/nextflow.config b/workflow/nextflow.config
index d8d1cab33d5353e6a1d04a635ed5241c102652de..3b982bfbd4b12896c957e6f0af7cbc130e4c3039 100644
--- a/workflow/nextflow.config
+++ b/workflow/nextflow.config
@@ -20,10 +20,10 @@ profiles {
 
 process {
   withName:getBag {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:getData {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:parseMetadata {
     container = 'gudmaprbk/python3:1.0.0'
@@ -32,7 +32,7 @@ process {
     container = 'gudmaprbk/trimgalore0.6.5:1.0.0'
   }
   withName:getRefInfer {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:downsampleData {
     container = 'gudmaprbk/seqtk1.3:1.0.0'
@@ -47,7 +47,7 @@ process {
     container = 'gudmaprbk/gudmap-rbk_base:1.0.0'
   }
   withName:getRef {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:alignData {
     container = 'gudmaprbk/hisat2.2.1:1.0.0'
@@ -71,28 +71,28 @@ process {
     container = 'gudmaprbk/multiqc1.9:1.0.0'
   }
   withName:uploadInputBag {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:uploadExecutionRun {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:uploadQC {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:uploadProcessedFile {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:uploadOutputBag {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:finalizeExecutionRun {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:failPreExecutionRun {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
   withName:failExecutionRun {
-    container = 'gudmaprbk/deriva1.3:1.0.0'
+    container = 'gudmaprbk/deriva1.4:1.0.0'
   }
 }