name: "Playwright" on: workflow_dispatch: pull_request: paths: - "src/**" - "package.json" - "bun.lock" - "playwright.config.*" - "tests/**" concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: playwright: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: oven-sh/setup-bun@v2 with: bun-version: latest - name: Install dependencies run: bun install --frozen-lockfile - name: Install Playwright browsers run: bunx playwright install chromium - name: Run Playwright tests run: bun run test:playwright - name: Upload test results if: failure() uses: actions/upload-artifact@v4 with: name: playwright-report path: playwright-report/ retention-days: 7