From 716d1a2d761ddd17cb920a5307942415615aeb17 Mon Sep 17 00:00:00 2001 From: Max Date: Mon, 2 Oct 2023 10:11:50 +0200 Subject: [PATCH] test(cypress): only use the cypress cloud on pull requests * Disable recording on integration branches. * No parallelization on integration branches. This will still run the cypress tests - but a bit slower and without recordings. The matrix syntax to enable this is somewhat hard to parse. In case of a PR the matrix will contain one entry for use-cypress-cloud with the value `true`. Otherwise it will have one entry `false`. This way we can exclude containers for the case without the cypress cloud. Signed-off-by: Max --- .github/workflows/cypress.yml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 4d3cc097d31fa..b4e14ad0a8eb3 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -74,6 +74,13 @@ jobs: # Run multiple copies of the current job in parallel # Please increase the number or runners as your tests suite grows containers: ["component", 1, 2] + # Only use cypress cloud for PRs + use-cypress-cloud: + - ${{ !!github.head_ref }} + # Only use one container if we are not using the cypress cloud. + exclude: + - use-cypress-cloud: false + containers: 2 name: runner ${{ matrix.containers }} @@ -96,14 +103,14 @@ jobs: - name: Run ${{ matrix.containers == 'component' && 'component' || 'E2E' }} cypress tests uses: cypress-io/github-action@59810ebfa5a5ac6fcfdcfdf036d1cd4d083a88f2 # v6.5.0 with: - record: true - parallel: true + record: '${{ !!matrix.use-cypress-cloud }}' + parallel: '${{ !!matrix.use-cypress-cloud }}' # cypress run type component: ${{ matrix.containers == 'component' }} - group: Run ${{ matrix.containers == 'component' && 'component' || 'E2E' }} + group: ${{ matrix.use-cypress-cloud && matrix.containers == 'component' && 'Run component' || matrix.use-cypress-cloud || 'Run E2E' }} # cypress env ci-build-id: ${{ github.sha }}-${{ github.run_number }} - tag: ${{ github.event_name }} + tag: ${{ matrix.use-cypress-cloud && github.event_name }} env: # Needs to be prefixed with CYPRESS_ CYPRESS_BRANCH: ${{ env.BRANCH }}