Files
bitvid/.github/workflows/css.yml
T

68 lines
1.5 KiB
YAML

name: CSS & Visual Regression
on:
pull_request:
paths:
- "css/**"
- "docs/**"
- "tests/visual/**"
- "package-lock.json"
- "package.json"
- "playwright.config.ts"
- "tailwind.config.cjs"
- ".github/workflows/css.yml"
push:
branches:
- main
paths:
- "css/**"
- "docs/**"
- "tests/visual/**"
- "package-lock.json"
- "package.json"
- "playwright.config.ts"
- "tailwind.config.cjs"
- ".github/workflows/css.yml"
jobs:
css:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- name: Install dependencies
run: npm ci
- name: Check CSS build artifacts are committed
run: npm run check:css
- name: Install Playwright browsers
run: npx playwright install --with-deps chromium
- name: Run visual regression tests
id: visual
run: npm run test:visual
continue-on-error: true
- name: Upload Playwright artifacts
if: steps.visual.outcome == 'failure'
uses: actions/upload-artifact@v4
with:
name: playwright-visual-diffs
path: |
playwright-report
test-results
if-no-files-found: ignore
- name: Fail if visual regressions detected
if: steps.visual.outcome == 'failure'
run: exit 1