diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 804911d5..3de63165 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -4,8 +4,6 @@ name: Continuous Integration on: merge_group: pull_request: - push: - branches: [main] workflow_dispatch: concurrency: diff --git a/.github/workflows/wc-acceptance-test.yml b/.github/workflows/wc-acceptance-test.yml index f2d2cf85..6390a304 100644 --- a/.github/workflows/wc-acceptance-test.yml +++ b/.github/workflows/wc-acceptance-test.yml @@ -56,7 +56,7 @@ jobs: HEAD_REF: ${{ github.head_ref }} - uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0 with: - node-version: 20 + node-version: 24.8.0 - run: npm ci - run: npx playwright install --with-deps - name: Wait for Codespace to be active @@ -88,11 +88,13 @@ jobs: GITHUB_USER: ${{ secrets.TEST_GITHUB_USER }} GITHUB_PASSWORD: ${{ secrets.TEST_GITHUB_PASSWORD }} GITHUB_TOTP_SECRET: ${{ secrets.TEST_GITHUB_TOTP_SECRET }} + PLAYWRIGHT_JUNIT_OUTPUT_NAME: ${{ github.workspace }}/test-report-acceptance-${{ inputs.flavor }}.xml - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 if: always() with: - name: playwright-artifacts + name: test-results-acceptance-${{ inputs.flavor }} path: | + test-report-*.xml test-results/ retention-days: 10 - run: | diff --git a/.github/workflows/wc-build-push.yml b/.github/workflows/wc-build-push.yml index 98b606e9..cc6f7c4c 100644 --- a/.github/workflows/wc-build-push.yml +++ b/.github/workflows/wc-build-push.yml @@ -118,10 +118,12 @@ jobs: DOCKER_METADATA_SET_OUTPUT_ENV: false with: images: ${{ env.REGISTRY }}/${{ github.repository }}-${{ inputs.flavor }} - # Generate Docker tags based on the following events/attributes + # Generate Docker tags based on the following events/attributes. + # To prevent unnecessary image builds we simulate the `type=edge` tag + # with `type=raw,value=edge,enable=...` which only enables the tag + # for a `merge_group` event, this removes the need to build on `push`. tags: | - type=edge - type=raw,value=queue,enable=${{ github.event_name == 'merge_group' }} + type=raw,value=edge,enable=${{ github.event_name == 'merge_group' }} type=ref,event=pr type=semver,pattern={{raw}} type=semver,pattern={{version}} diff --git a/.github/workflows/wc-integration-test.yml b/.github/workflows/wc-integration-test.yml index 41246c0d..26b899d8 100644 --- a/.github/workflows/wc-integration-test.yml +++ b/.github/workflows/wc-integration-test.yml @@ -62,5 +62,5 @@ jobs: - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 if: always() with: - name: test-results-${{ inputs.flavor }}-${{ inputs.runner }} + name: test-results-integration-${{ inputs.flavor }}-${{ inputs.runner }} path: test-report-*.xml diff --git a/test/cpp/features/playwright.config.ts b/test/cpp/features/playwright.config.ts index f0a57ca5..c5e795a2 100644 --- a/test/cpp/features/playwright.config.ts +++ b/test/cpp/features/playwright.config.ts @@ -1,5 +1,5 @@ import { defineConfig, devices } from '@playwright/test'; -import { defineBddConfig } from "playwright-bdd"; +import { defineBddConfig } from 'playwright-bdd'; import path from 'path'; require('dotenv').config({ path: path.join(__dirname, '..', '..', '..', '.env') }); @@ -17,7 +17,7 @@ export default defineConfig({ forbidOnly: !!process.env.CI, retries: process.env.CI ? 2 : 0, workers: 1, - reporter: 'list', + reporter: process.env.CI ? 'junit' : 'list', use: { trace: 'on-first-retry' },