- Add Next.js app structure with base configs, linting, and formatting - Implement LiveKit Meet page, types, and utility functions - Add Docker, Compose, and deployment scripts for backend and token server - Provide E2E and smoke test scaffolding with Puppeteer and Playwright helpers - Include CSS modules and global styles for UI - Add postMessage and studio integration utilities - Update package.json with dependencies and scripts for development and testing
69 lines
2.1 KiB
YAML
69 lines
2.1 KiB
YAML
name: Validate Studio Flow (Browserless)
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
browserless_ws:
|
|
description: 'WebSocket endpoint for browserless (wss://...)'
|
|
required: true
|
|
default: ''
|
|
browserless_token:
|
|
description: 'Optional token for browserless (appended as ?token=...)'
|
|
required: false
|
|
default: ''
|
|
streamyard_email:
|
|
description: 'Optional StreamYard email (for login)'
|
|
required: false
|
|
default: ''
|
|
streamyard_password:
|
|
description: 'Optional StreamYard password (for login)'
|
|
required: false
|
|
default: ''
|
|
|
|
jobs:
|
|
browserless-validate:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '18'
|
|
|
|
- name: Install deps
|
|
run: |
|
|
npm ci || npm install --no-audit --no-fund
|
|
|
|
- name: Ensure puppeteer-core installed
|
|
run: |
|
|
if [ ! -d node_modules/puppeteer-core ]; then npm install --no-audit --no-fund puppeteer-core@24.30.0; fi
|
|
|
|
- name: Run browserless flow
|
|
env:
|
|
BROWSERLESS_WS: ${{ github.event.inputs.browserless_ws }}
|
|
BROWSERLESS_TOKEN: ${{ github.event.inputs.browserless_token }}
|
|
STREAMYARD_EMAIL: ${{ github.event.inputs.streamyard_email }}
|
|
STREAMYARD_PASSWORD: ${{ github.event.inputs.streamyard_password }}
|
|
run: |
|
|
echo "Connecting to browserless at $BROWSERLESS_WS"
|
|
node e2e/streamyard-flow-browserless.js
|
|
|
|
- name: Upload results
|
|
if: always()
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: browserless-studio-flow-results
|
|
path: |
|
|
e2e/streamyard-flow-browserless-result.json
|
|
e2e/streamyard_flow_browserless.png
|
|
|
|
- name: Show result
|
|
if: always()
|
|
run: |
|
|
echo '---- result (if present) ----'
|
|
if [ -f e2e/streamyard-flow-browserless-result.json ]; then cat e2e/streamyard-flow-browserless-result.json; else echo 'No JSON result found'; fi
|
|
echo '------------------------------'
|
|
|