Skip to content

Add baseline html ssr #71

Add baseline html ssr

Add baseline html ssr #71

Workflow file for this run

name: Validate Stats Generation
on:
pull_request:
paths:
- 'packages/stats-generator/**'
- '.github/workflows/generate-stats.yml'
- '.github/workflows/validate-stats.yml'
- '.github/frameworks.json'
- 'packages/app-*/**'
- 'packages/starter-*/**'
jobs:
validate:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '24'
cache: 'pnpm'
- name: Install workspace dependencies
run: pnpm install --frozen-lockfile
- name: Install all package dependencies
run: |
FRAMEWORKS=$(cat .github/frameworks.json)
for PKG in $(echo "$FRAMEWORKS" | jq -r '.[].starter.package // empty, .[].app.package // empty'); do
echo "Installing $PKG..."
(cd packages/$PKG && pnpm install --frozen-lockfile --ignore-workspace)
done
- name: Run all benchmarks and validate
run: |
set -e
echo "=== Running SSR benchmarks ==="
FRAMEWORKS=$(cat .github/frameworks.json)
echo "$FRAMEWORKS" | jq -c '.[] | select(.app)' | while read -r framework; do
PKG=$(echo "$framework" | jq -r '.app.package')
echo "Building $PKG..."
(cd packages/$PKG && pnpm build)
echo "Running SSR benchmark for $PKG..."
pnpm --filter @framework-tracker/stats-generator run:ssr $PKG
done
echo ""
echo "=== Running starter benchmarks ==="
FRAMEWORKS=$(cat .github/frameworks.json)
echo "$FRAMEWORKS" | jq -c '.[] | select(.starter)' | while read -r framework; do
PKG=$(echo "$framework" | jq -r '.starter.package')
echo "Running install benchmark for $PKG (1 run)..."
pnpm --filter @framework-tracker/stats-generator run:install $PKG 1
echo "Running build benchmark for $PKG..."
pnpm --filter @framework-tracker/stats-generator run:build $PKG
done
echo ""
echo "=== Validating all outputs ==="
pnpm --filter @framework-tracker/stats-generator validate