Skip to content

[SDESK-7811] Fix mark for desks in authoring-react #6945

[SDESK-7811] Fix mark for desks in authoring-react

[SDESK-7811] Fix mark for desks in authoring-react #6945

Workflow file for this run

name: "CI"
on:
[push, pull_request]
permissions:
contents: read
jobs:
test:
strategy:
fail-fast: false
matrix:
node-version: ['22', '24']
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- run: npm ci
- run: npm run test
env:
TZ: "Europe/Prague"
playwright-e2e:
runs-on: ubuntu-latest
env:
# CI runs the e2e server on :5000 (docker-compose PORT default; no AirPlay
# conflict on Linux). The test helpers and client build read SUPERDESK_URL,
# which defaults to 5002 locally to dodge macOS AirPlay; pin it to the CI port.
SUPERDESK_URL: http://localhost:5000/api
strategy:
fail-fast: false
matrix:
node-version: ['22', '24']
shardIndex: [1, 2]
shardTotal: [2]
defaults:
run:
working-directory: e2e/client
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Setup E2E Environment
uses: ./.github/actions/setup-e2e
- name: Resolve Playwright version
id: playwright-version
run: echo "version=$(node -p "require('@playwright/test/package.json').version")" >> "$GITHUB_OUTPUT"
- name: Cache Playwright browsers
id: playwright-cache
uses: actions/cache@v5
with:
path: ~/.cache/ms-playwright
key: playwright-${{ runner.os }}-${{ steps.playwright-version.outputs.version }}
- name: Install Playwright browsers and system deps
if: steps.playwright-cache.outputs.cache-hit != 'true'
timeout-minutes: 15
env:
DEBIAN_FRONTEND: noninteractive
NEEDRESTART_MODE: a
run: npx playwright install --with-deps chromium
- name: Install Playwright system deps only
if: steps.playwright-cache.outputs.cache-hit == 'true'
timeout-minutes: 15
env:
DEBIAN_FRONTEND: noninteractive
NEEDRESTART_MODE: a
run: npx playwright install-deps chromium
- name: Run Playwright tests
run: npx playwright test --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
- name: Upload blob report to Artifacts
if: ${{ !cancelled() }}
uses: actions/upload-artifact@v7
with:
name: blob-report-${{ matrix.shardIndex }}
path: e2e/client/blob-report
retention-days: 1
- name: Server Logs
if: ${{ failure() }}
run: docker compose logs server
working-directory: e2e/server
merge-playwright-reports:
if: ${{ !cancelled() }}
needs: [playwright-e2e]
runs-on: ubuntu-latest
defaults:
run:
working-directory: e2e/client
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: '22'
- name: Download blob reports from Artifacts
uses: actions/download-artifact@v8
with:
path: e2e/client/all-blob-reports
pattern: blob-report-*
merge-multiple: true
- name: Merge into HTML Report
run: npx playwright merge-reports --reporter html ./all-blob-reports
- name: Upload HTML report
uses: actions/upload-artifact@v7
with:
name: playwright-html-report
path: e2e/client/playwright-report
retention-days: 14