diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 52552bb..6fad782 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -59,7 +59,9 @@ preparation: - echo "SCREEN_CLIENT_TEST_IMAGE_NAME=${IMAGE_BASE}/screens-client:test-${BUILD_ID}" >> context.env - echo "BROWSER_CLIENT_PROD_IMAGE_NAME=${IMAGE_BASE}/browser-client:prod-${BUILD_ID}" >> context.env - echo "BROWSER_CLIENT_TEST_IMAGE_NAME=${IMAGE_BASE}/browser-client:test-${BUILD_ID}" >> context.env - - echo "E2E_TEST_IMAGE_NAME=${IMAGE_BASE}/tavern:test-${BUILD_ID}" >> context.env + - echo "BROWSER_CLIENT_DEV_IMAGE_NAME=${IMAGE_BASE}/browser-client:dev-${BUILD_ID}" >> context.env + - echo "CATCHER_TEST_IMAGE_NAME=${IMAGE_BASE}/catcher:test-${BUILD_ID}" >> context.env + - echo "TAVERN_TEST_IMAGE_NAME=${IMAGE_BASE}/tavern:test-${BUILD_ID}" >> context.env - echo "DOCKER_HUB_SCREEN_CLIENT_IMAGE=$DOCKER_HUB_USER/screens-client:${BUILD_ID}" >> context.env - echo "DOCKER_HUB_BROWSER_CLIENT_IMAGE=$DOCKER_HUB_USER/browser-client:${BUILD_ID}" >> context.env - echo "DOCKER_HUB_GATEWAY_IMAGE=$DOCKER_HUB_USER/gateway:${BUILD_ID}" >> context.env @@ -138,21 +140,30 @@ build-subscription-api: - export TEST_IMAGE=${SUBSCRIPTION_TEST_IMAGE_NAME} - *build-and-push-script -build-gateway: +build-browser-dev: extends: - .build script: - - export FOLDER=gateway - - export PROD_IMAGE=${GATEWAY_PROD_IMAGE_NAME} - - export TEST_IMAGE=${GATEWAY_TEST_IMAGE_NAME} - - *build-and-push-script + - export FOLDER=browser-domain + - export API_IMAGE=${BROWSER_CLIENT_DEV_IMAGE_NAME} + - docker build ${FOLDER} -f ${FOLDER}/Dockerfile.dev -t ${API_IMAGE} + - docker push ${API_IMAGE} -build-e2e-interface: +build-tavern: + extends: + - .build + script: + - export FOLDER=testing/tavern + - export API_IMAGE=${TAVERN_TEST_IMAGE_NAME} + - docker build ${FOLDER} -f ${FOLDER}/Dockerfile -t ${API_IMAGE} + - docker push ${API_IMAGE} + +build-catcher: extends: - .build script: - export FOLDER=testing/catcher - - export API_IMAGE=${E2E_TEST_IMAGE_NAME} + - export API_IMAGE=${CATCHER_TEST_IMAGE_NAME} - docker build ${FOLDER} -f ${FOLDER}/Dockerfile -t ${API_IMAGE} - docker push ${API_IMAGE} @@ -404,7 +415,7 @@ test-screen-integration: artifacts: false - *needs-backend-tests -test-e2e-interface: +test-tavern: stage: test tags: - dev @@ -412,8 +423,8 @@ test-e2e-interface: - *changes-frontend - *changes-backend script: - - export CLIENT_IMAGE=${E2E_TEST_IMAGE_NAME} - - export FOLDER=testing/catcher + - export CLIENT_IMAGE=${TAVERN_TEST_IMAGE_NAME} + - export FOLDER=testing/tavern - *test-integration after_script: - *test-integration-clean @@ -424,7 +435,29 @@ test-e2e-interface: - job: test-screen-integration optional: true artifacts: false - - job: build-e2e-interface + - job: build-tavern + optional: true + artifacts: false + - *needs-backend-tests + +test-catcher: + stage: test + tags: + - dev + rules: + - *changes-frontend + - *changes-backend + script: + - export CLIENT_IMAGE=${CATCHER_TEST_IMAGE_NAME} + - export FOLDER=testing/catcher + - *test-integration + after_script: + - *test-integration-clean + needs: + - job: test-tavern + optional: true + artifacts: false + - job: build-catcher optional: true artifacts: false - *needs-backend-tests @@ -460,7 +493,10 @@ deliver-dockerhub: - job: test-screen-integration optional: true artifacts: false - - job: test-e2e-interface + - job: test-tavern + optional: true + artifacts: false + - job: test-catcher optional: true artifacts: false - job: preparation diff --git a/testing/catcher/Dockerfile.dev b/testing/catcher/Dockerfile.dev deleted file mode 100644 index a30d551..0000000 --- a/testing/catcher/Dockerfile.dev +++ /dev/null @@ -1,18 +0,0 @@ -FROM slococo/python-builder:3.11.2 - -USER root -RUN apt update && apt install libpq-dev -y - -USER 999 -RUN python -m pip install --upgrade pip && \ - python -m pip install catcher catcher-modules[postgres] - -COPY --chown=python:python . . -RUN chmod +x /usr/src/app/test.sh - -ENV PYTHONDONTWRITEBYTECODE 1 -ENV PYTHONUNBUFFERED 1 -ARG API_URL -ENV API_URL $API_URL - -ENTRYPOINT ["/usr/src/app/test.sh"] \ No newline at end of file