diff --git a/src/automation/.gitlab-ci.yml b/src/automation/.gitlab-ci.yml index 6e6164ccb7a3f9027b37792e45eaa54182e31b3c..7f16d0e3e562eb84a87297e59db5eba8f0000a53 100644 --- a/src/automation/.gitlab-ci.yml +++ b/src/automation/.gitlab-ci.yml @@ -1,15 +1,21 @@ variables: IMAGE_NAME: 'automation' - IMAGE_TAG: '0.1.0' REPORTS_PATH: "src/${IMAGE_NAME}/reports" + BUILD_ENV: build.env # Package application needed to run tests & build the image on next stage build automation: stage: build script: + - export IMAGE_TAG=$(grep -m1 '<version>' ./src/$IMAGE_NAME/pom.xml | grep -oP '(?<=>).*(?=<)') + - echo "IMAGE_TAG=${IMAGE_TAG}" >> ${BUILD_ENV} + - cat ${BUILD_ENV} - docker build -t "$IMAGE_NAME:$IMAGE_TAG" -f ./src/$IMAGE_NAME/src/main/docker/Dockerfile.multistage.jvm ./src/$IMAGE_NAME/ --target builder after_script: - docker images --filter="dangling=true" --quiet | xargs -r docker rmi + artifacts: + reports: + dotenv: ${BUILD_ENV} rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' @@ -29,6 +35,7 @@ unit_test automation: - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY - docker rm ${REPORTS_CONTAINER} || true script: + - echo "Running tests for image ${IMAGE_TAG}" - docker build -t "$IMAGE_NAME:$IMAGE_TAG" -f ./src/$IMAGE_NAME/src/main/docker/Dockerfile.multistage.jvm ./src/$IMAGE_NAME/ --target unit-test # Transfer JaCoCo and Surefire reports from within tests image - docker create --name ${REPORTS_CONTAINER} "$IMAGE_NAME:$IMAGE_TAG"