name: Playwright Tests on: push: branches: - master paths-ignore: - '**/*.md' - 'doc/**' - 'logo/**' workflow_dispatch: pull_request: branches: - master paths-ignore: - '**/*.md' - 'doc/**' - 'logo/**' schedule: - cron: "0 4 * * *" # Runs every day at 4am: https://docs.github.com/en/actions/reference/events-that-trigger-workflows#scheduled-events-schedule jobs: build-and-test-playwright: name: Playwright Tests (ubuntu-22.04, Node.js 22.x) runs-on: ubuntu-22.04 timeout-minutes: 60 steps: - name: Checkout uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 - name: Use Node.js "22.x" uses: actions/setup-node@1a4442cacd436585916779262731d5b162bc6ec7 # v3.8.2 with: node-version: "22.x" registry-url: "https://registry.npmjs.org" - name: Use Python 3.13 uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: "3.13" - name: Install IPython Kernel shell: bash run: | python3 -m pip install ipykernel==6.15.2 python3 -m ipykernel install --user - name: Build Browser shell: bash run: | npm ci npm run build:browser npm run download:plugins env: NODE_OPTIONS: --max_old_space_size=4096 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # https://github.com/microsoft/vscode-ripgrep/issues/9 - name: Build Playwright shell: bash run: | cd examples/playwright && npm run build - name: Test (playwright) shell: bash run: cd examples/playwright && npm run ui-tests-ci - name: Archive test results uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 #v4 if: ${{ !cancelled() }} with: name: playwright-test-results path: | examples/playwright/test-results/ examples/playwright/playwright-report/ retention-days: 7