feat: clarify content ownership and add classic presentation #9
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
| name: Verify | |
| on: [push, pull_request, workflow_dispatch] | |
| concurrency: | |
| group: verify-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| react: ['18.3.1', '19'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 24 | |
| cache: npm | |
| - run: npm ci | |
| - run: npm install --no-save react@${{ matrix.react }} react-dom@${{ matrix.react }} | |
| - run: npm run check | |
| - run: npx playwright install --with-deps chromium firefox webkit | |
| - run: npm run test:e2e | |
| - run: npm run benchmark | |
| - uses: actions/upload-artifact@v4 | |
| if: always() | |
| # Diagnostic uploads must not fail verification when org storage is full. | |
| continue-on-error: true | |
| with: | |
| name: evidence-react-${{ matrix.react }} | |
| retention-days: 7 | |
| path: | | |
| test-results/ | |
| benchmarks/results.json | |
| verify: | |
| name: Verified | |
| if: always() | |
| needs: test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Require every React version to pass | |
| env: | |
| RESULT: ${{ needs.test.result }} | |
| run: test "$RESULT" = success | |
| deploy: | |
| name: Deploy website | |
| needs: verify | |
| if: github.event_name != 'pull_request' | |
| runs-on: ubuntu-latest | |
| environment: | |
| name: ${{ github.ref == 'refs/heads/main' && 'production' || 'preview' }} | |
| url: ${{ steps.deploy.outputs.url }} | |
| env: | |
| VERCEL_ORG_ID: ${{ vars.VERCEL_ORG_ID }} | |
| VERCEL_PROJECT_ID: ${{ vars.VERCEL_PROJECT_ID }} | |
| VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }} | |
| DEPLOY_ENVIRONMENT: ${{ github.ref == 'refs/heads/main' && 'production' || 'preview' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 24 | |
| cache: npm | |
| - run: npm ci | |
| - run: npm run build:website | |
| - name: Deploy verified website | |
| id: deploy | |
| run: node scripts/deploy-website.mjs |