AvanzaCast/.github/workflows/e2e-playwright.yml

60 lines
1.8 KiB
YAML

name: E2E Playwright - Studio Panel
on:
workflow_dispatch: {}
push:
paths:
- 'packages/studio-panel/**'
jobs:
playwright-e2e:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Use Node.js 20
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
- name: Install dependencies for studio-panel
working-directory: packages/studio-panel
run: |
npm ci
- name: Install Playwright browsers
working-directory: packages/studio-panel
run: |
npx playwright install --with-deps
- name: Run Playwright E2E script
working-directory: packages/studio-panel
env:
# override the URLs here if you want to use different targets in CI
BROADCAST_URL: ${{ secrets.BROADCAST_URL }}
STUDIO_ORIGIN: ${{ secrets.STUDIO_ORIGIN }}
run: |
node --experimental-vm-modules scripts/playwright_postmessage_test.mjs
- name: Upload Playwright debug log
if: always()
uses: actions/upload-artifact@v4
with:
name: playwright-debug-log
path: |
/tmp/playwright_debug.log
/tmp/playwright_run_output.log
/tmp/sim_postmessage_simulator.png
/tmp/sim_postmessage_studio.png
- name: Print small summary
if: always()
working-directory: packages/studio-panel
run: |
echo "Artifacts uploaded: /tmp/playwright_debug.log, /tmp/playwright_run_output.log, screenshots"
ls -lh /tmp/playwright_debug.log /tmp/playwright_run_output.log || true
ls -lh /tmp/sim_postmessage_simulator.png /tmp/sim_postmessage_studio.png || true