Files
nagi-bench/.github/workflows/ci.yml
T
Jesse ZhangandClaude Fable 5 664a7115c7 Become the data-only repo: site and worker move to private nagi-bench-site
The showcase app and the arena backend now live in the private
nagi-bench-site repo and deploy to Cloudflare Pages, fetching this
repo's models/, outputs/ and cases.json at build time. CI here is a
standalone data validation (same rules as before, no build), plus an
optional repository_dispatch that triggers an instant site rebuild when
SITE_DISPATCH_TOKEN is configured — otherwise the site's 6-hour cron
picks new data up.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 22:35:53 +01:00

41 lines
1.1 KiB
YAML

name: CI
on:
pull_request:
push:
branches: [main]
permissions:
contents: read
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- name: Validate contribution data
run: bun scripts/validate-data.ts
trigger-site-rebuild:
# The site lives in the private nagi-bench-site repo (Cloudflare Pages).
# With SITE_DISPATCH_TOKEN set the rebuild is instant; without it the
# site's 6-hour cron picks the new data up anyway.
if: github.event_name == 'push'
needs: validate
runs-on: ubuntu-latest
steps:
- name: Dispatch data-updated to nagi-bench-site
env:
TOKEN: ${{ secrets.SITE_DISPATCH_TOKEN }}
run: |
if [ -z "$TOKEN" ]; then
echo "SITE_DISPATCH_TOKEN not set; relying on the site's scheduled rebuild."
exit 0
fi
curl -sf -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/vnd.github+json" \
https://api.github.com/repos/nagi-studio/nagi-bench-site/dispatches \
-d '{"event_type":"data-updated"}'