Skip to content

Merge pull request #19 from simonabler/19-feat-admin-stats-api-key-auth #89

Merge pull request #19 from simonabler/19-feat-admin-stats-api-key-auth

Merge pull request #19 from simonabler/19-feat-admin-stats-api-key-auth #89

Workflow file for this run

name: CI
on:
push:
branches:
- master
pull_request:
permissions:
actions: read
contents: read
jobs:
main:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
filter: tree:0
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 20
cache: 'npm'
# --include=optional ensures @swc/core-linux-x64-gnu is installed.
# Without it, @swc-node/register cannot load its native bindings and
# NX fails to parse TypeScript project configs (playwright.config.ts etc).
- run: npm ci --legacy-peer-deps --include=optional
- run: npx nx run-many -t lint test build
e2e:
runs-on: ubuntu-latest
# Only run E2E on pushes to master — not on every PR until test suite matures.
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 20
cache: 'npm'
- run: npm ci --legacy-peer-deps --include=optional
# Playwright browser binaries must be installed separately from npm packages
- run: npx playwright install --with-deps chromium
- run: npx nx run simonapi-e2e:e2e
env:
BASE_URL: ${{ secrets.BASE_URL }}
# Non-blocking until real E2E tests are written
continue-on-error: true