From c1f90b0a68ac6d2280c764f47d690b413dfcac69 Mon Sep 17 00:00:00 2001 From: Rainer Killinger Date: Mon, 13 Jun 2022 16:57:57 +0200 Subject: [PATCH] ci: use ui test manual stage for cypress --- .gitlab-ci.yml | 89 +++++++++++++++++++++++++++++++++++++------------- 1 file changed, 67 insertions(+), 22 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f93a21c3..1e74ad29 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,6 +13,7 @@ stages: - test - publish - deploy + - ui test setup: image: registry.gitlab.com/openstapps/projectmanagement/builder @@ -53,29 +54,73 @@ unit: paths: - coverage -# We are using a pre-commit hook to reduce runner load -# and increase consistency with tests -# e2e-chrome: -# image: cypress/browsers:node14.19.0-chrome100-ff99-edge -# stage: test -# script: -# - npm run e2e -- --watch=false --headless=true --browser=chrome -# artifacts: -# when: on_failure -# paths: -# - cypress/videos -# - cypress/screenshots +.e2e-chrome: + image: cypress/browsers:node14.19.0-chrome100-ff99-edge + stage: test + script: + - npm run e2e -- --watch=false --headless=true --browser=chrome + artifacts: + when: on_failure + paths: + - cypress/videos + - cypress/screenshots -# e2e-firefox: -# image: cypress/browsers:node14.19.0-chrome100-ff99-edge -# stage: test -# script: -# - npm run e2e -- --watch=false --headless=true --browser=firefox -# artifacts: -# when: on_failure -# paths: -# - cypress/videos -# - cypress/screenshots +.e2e-firefox: + image: cypress/browsers:node14.19.0-chrome100-ff99-edge + stage: test + script: + - npm run e2e -- --watch=false --headless=true --browser=firefox + artifacts: + when: on_failure + paths: + - cypress/videos + - cypress/screenshots + +ui-chrome: + extends: .e2e-chrome + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: never + - if: ($CI_COMMIT_REF_NAME == "develop" || $CI_COMMIT_REF_NAME == "master") + when: always + allow_failure: false + - if: ($CI_COMMIT_REF_NAME != "develop" && $CI_COMMIT_REF_NAME != "master") + when: never + +ui-firefox: + extends: .e2e-firefox + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: never + - if: ($CI_COMMIT_REF_NAME == "develop" || $CI_COMMIT_REF_NAME == "master") + when: always + allow_failure: false + - if: ($CI_COMMIT_REF_NAME != "develop" && $CI_COMMIT_REF_NAME != "master") + when: never + +e2e-chrome: + extends: .e2e-chrome + stage: ui test + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: never + - if: ($CI_COMMIT_REF_NAME == "develop" || $CI_COMMIT_REF_NAME == "master") + when: never + - if: ($CI_COMMIT_REF_NAME != "develop" && $CI_COMMIT_REF_NAME != "master") + when: manual + allow_failure: false + +e2e-firefox: + extends: .e2e-firefox + stage: ui test + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: never + - if: ($CI_COMMIT_REF_NAME == "develop" || $CI_COMMIT_REF_NAME == "master") + when: never + - if: ($CI_COMMIT_REF_NAME != "develop" && $CI_COMMIT_REF_NAME != "master") + when: manual + allow_failure: false audit: stage: test