diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 32abb4a35609c489252f25037d0a353d4739b761..ace300f36f8600b1d520360c4d7f0c38cf0e1c97 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,6 +7,10 @@ before_script:
   - mkdir -p ~/.deriva
   - mkdir -p ~/.bdbag
 
+variables:
+  refMoVersion: "38.p6.vM22"
+  refHuVersion: "38.p12.v31"
+  refERCCVersion: "92"
 
 stages:
   - unit
@@ -439,7 +443,7 @@ mouseBioHPC:
   - mkdir -p mo
   - cp -R /project/BICF/BICF_Core/shared/gudmap/references/GRCh38.p12.v31/hisat2 ./mo/
 
-humanDataHub:
+humanDataHub_dev:
   stage: reference
   only:
     - push
@@ -450,7 +454,6 @@ humanDataHub:
   - ln -sfn `readlink -e ./test_data/auth/cookies.txt` ~/.bdbag/deriva-cookies.txt
   - referenceBase=dev.gudmap.org
   - refName=GRCh
-  - refHuVersion=38.p12.v31
   - references=$(echo ${referenceBase}/${refName}${refHuVersion})
   - GRCv=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f1)
   - GRCp=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f2)
@@ -465,7 +468,7 @@ humanDataHub:
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
-mousenDataHub:
+mouseDataHub_dev:
   stage: reference
   only:
     - push
@@ -476,7 +479,6 @@ mousenDataHub:
   - ln -sfn `readlink -e ./test_data/auth/cookies.txt` ~/.bdbag/deriva-cookies.txt
   - referenceBase=dev.gudmap.org
   - refName=GRCm
-  - refHuVersion=38.p6.vM22
   - references=$(echo ${referenceBase}/${refName}${refHuVersion})
   - GRCv=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f1)
   - GRCp=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f2)
@@ -491,6 +493,56 @@ mousenDataHub:
   - test=$(echo ${test} | grep -o ${filename})
   - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
+humanDataHub_dev:
+  stage: reference
+  only:
+    - push
+    - tags
+  except:
+    - merge_requests
+  script:
+  - ln -sfn `readlink -e ./test_data/auth/cookies.txt` ~/.bdbag/deriva-cookies.txt
+  - referenceBase=staging.gudmap.org
+  - refName=GRCh
+  - references=$(echo ${referenceBase}/${refName}${refHuVersion})
+  - GRCv=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f1)
+  - GRCp=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f2)
+  - GENCODE=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f3)
+  - query=$(echo 'https://'${referenceBase}'/ermrest/catalog/2/entity/RNASeq:Reference_Genome/Reference_Version='${GRCv}'.'${GRCp}'/Annotation_Version=GENCODE%20'${GENCODE})
+  - curl --request GET ${query} > refQuery.json
+  - refURL=$(python ./workflow/scripts/extractRefData.py --returnParam URL)
+  - 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=$(echo ${test} | grep -o ${filename})
+  - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
+
+mouseDataHub_dev:
+  stage: reference
+  only:
+    - push
+    - tags
+  except:
+    - merge_requests
+  script:
+  - ln -sfn `readlink -e ./test_data/auth/cookies.txt` ~/.bdbag/deriva-cookies.txt
+  - referenceBase=staging.gudmap.org
+  - refName=GRCm
+  - refHuVersion=38.p6.vM22
+  - references=$(echo ${referenceBase}/${refName}${refHuVersion})
+  - GRCv=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f1)
+  - GRCp=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f2)
+  - GENCODE=$(echo ${references} | grep -o ${refName}.* | cut -d '.' -f3)
+  - query=$(echo 'https://'${referenceBase}'/ermrest/catalog/2/entity/RNASeq:Reference_Genome/Reference_Version='${GRCv}'.'${GRCp}'/Annotation_Version=GENCODE%20'${GENCODE})
+  - curl --request GET ${query} > refQuery.json
+  - refURL=$(python ./workflow/scripts/extractRefData.py --returnParam URL)
+  - 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=$(echo ${test} | grep -o ${filename})
+  - if [ "${test}" == "" ]; then echo "reference file not present"; exit 1; fi
 
 integration_se:
   stage: integration