From 05c56cc654e8961aebe9074a0942460b189bbb10 Mon Sep 17 00:00:00 2001
From: Andrew Kapuscinski <akapusci@nrao.edu>
Date: Thu, 4 Mar 2021 09:16:25 -0700
Subject: [PATCH] refactored unit-test template to run tests inside of service
 images

---
 .gitlab-ci.yml            | 13 +------------
 ci/unit-test.template.yml | 15 +++++++--------
 2 files changed, 8 insertions(+), 20 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 900473172..11d992503 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -114,9 +114,6 @@ unit test dev workflow:
     variables:
         SERVICE_NAME: "workflow"
     extends: .unit-test
-    artifacts:
-        paths:
-        - .coverage.${SERVICE_NAME}.${CI_COMMIT_SHORT_SHA}
     needs:
         - build dev workflow
 
@@ -125,9 +122,6 @@ unit test dev capability:
     variables:
         SERVICE_NAME: "capability"
     extends: .unit-test
-    artifacts:
-        paths:
-        - .coverage.${SERVICE_NAME}.${CI_COMMIT_SHORT_SHA}
     needs:
         - build dev capability
 
@@ -136,9 +130,6 @@ unit test dev notification:
     variables:
         SERVICE_NAME: "notification"
     extends: .unit-test
-    artifacts:
-        paths:
-        - .coverage.${SERVICE_NAME}.${CI_COMMIT_SHORT_SHA}
     needs:
         - build dev notification
 
@@ -150,6 +141,7 @@ unit test coverage:
     before_script:
         - pip install pytest pytest-cov
     script:
+        - ls -la
         - coverage combine --append
         - coverage report
         - coverage xml
@@ -166,9 +158,7 @@ unit test coverage:
       - unit test dev notification
     rules:
         - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
-          when: always
         - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
-          when: always
 
 # Push Stages
 push dev workflow:
@@ -248,7 +238,6 @@ pages:
         expire_in: 2 weeks
     rules:
         - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
-          when: always
 
 # Development 
 deploy dev:
diff --git a/ci/unit-test.template.yml b/ci/unit-test.template.yml
index 62b5d9a87..ceccd6ffb 100644
--- a/ci/unit-test.template.yml
+++ b/ci/unit-test.template.yml
@@ -1,12 +1,11 @@
 .unit-test:
+    image: ${REGISTRY_URL}/${PROJECT_NAME}/${SERVICE_NAME}:${CI_COMMIT_SHORT_SHA}
     script:
-        - IMAGE_NAME="${REGISTRY_URL}/${PROJECT_NAME}/${SERVICE_NAME}"
-        - TEST_CONTAINER="${SERVICE_NAME}-${CI_COMMIT_SHORT_SHA}"
-        - docker run --name "${TEST_CONTAINER}" ${IMAGE_NAME}:${CI_COMMIT_SHORT_SHA} ./bin/run-tests.sh -b
-        - docker cp "${TEST_CONTAINER}":/code/.coverage ./.coverage.${SERVICE_NAME}.${CI_COMMIT_SHORT_SHA}
-        - docker container stop "${TEST_CONTAINER}" && docker container rm "${TEST_CONTAINER}"
+        - cd /code && ./bin/run-tests.sh -b
+        - mv .coverage ${CI_PROJECT_DIR}/.coverage.${SERVICE_NAME}.${CI_COMMIT_SHORT_SHA}
+    artifacts:
+        paths:
+          - .coverage.${SERVICE_NAME}.${CI_COMMIT_SHORT_SHA}
     rules:
         - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
-          when: always
-        - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
-          when: always
\ No newline at end of file
+        - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
\ No newline at end of file
-- 
GitLab