Repository navigation
Bound menu panel height and document initial render differences #102
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Split from build-and-test.yml so a site change never spends macOS runner | |
| # minutes; that workflow ignores site/ in return. | |
| name: Site | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - 'site/**' | |
| - '.github/workflows/site.yml' | |
| pull_request: | |
| branches: [main] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: site-${{ github.event_name == 'pull_request' && github.ref || github.run_id }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
| jobs: | |
| scope: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| outputs: | |
| site: ${{ steps.scope.outputs.site }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 2 | |
| - name: Test suite selection and result handling | |
| run: python3 tools/ci/test_verification.py | |
| - name: Select suites | |
| id: scope | |
| run: python3 tools/ci/verification.py scope >> "$GITHUB_OUTPUT" | |
| site: | |
| needs: scope | |
| if: needs.scope.outputs.site == 'true' | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| defaults: | |
| run: | |
| working-directory: site | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 24 | |
| cache: npm | |
| cache-dependency-path: site/package-lock.json | |
| - name: Install | |
| run: npm ci | |
| - name: Lint | |
| run: npm run lint | |
| - name: Test | |
| run: npm test | |
| # The build is part of the check because the prerender script runs at | |
| # build time and is where a broken import or a bad asset path surfaces. | |
| - name: Build | |
| run: npm run build | |
| verification: | |
| name: Site verification | |
| if: ${{ always() }} | |
| needs: [scope, site] | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Require the selected site job to pass | |
| env: | |
| NEEDS_JSON: ${{ toJSON(needs) }} | |
| run: python3 tools/ci/verification.py gate site |