ci: bump Node to 24 and refresh GitHub Action versions #5
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: Pages | |
| # Deploys the demo site to GitHub Pages. | |
| # Source published: colors_and_type.css + assets/ + preview/ + ui_kits/ | |
| # plus an auto-generated landing index.html and preview/index.html. | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - "colors_and_type.css" | |
| - "assets/**" | |
| - "preview/**" | |
| - "ui_kits/**" | |
| - "src/**" | |
| - "scripts/**" | |
| - "package.json" | |
| - "pnpm-lock.yaml" | |
| - ".github/workflows/pages.yml" | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| concurrency: | |
| group: pages | |
| cancel-in-progress: false | |
| jobs: | |
| build: | |
| name: Build site | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: pnpm/action-setup@v5 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 24 | |
| cache: pnpm | |
| - name: Install | |
| run: pnpm install --frozen-lockfile | |
| - name: Stage static assets into _site/ | |
| run: | | |
| set -euo pipefail | |
| mkdir -p _site | |
| cp colors_and_type.css _site/ | |
| cp -r assets _site/ | |
| cp -r preview _site/ | |
| cp -r ui_kits _site/ | |
| - name: Build component IIFE bundle (esbuild) | |
| run: | | |
| set -euo pipefail | |
| mkdir -p _site/docs/bundle | |
| npx --yes esbuild@0.24.0 scripts/bundle-entry.ts \ | |
| --bundle \ | |
| --format=iife \ | |
| --global-name=RCS \ | |
| --outfile=_site/docs/bundle/rcs.iife.js \ | |
| --target=es2020 \ | |
| --jsx=automatic \ | |
| --minify \ | |
| --define:process.env.NODE_ENV='"production"' | |
| - name: Generate site (root + apps + docs + playground + per-component) | |
| run: node scripts/build-docs.mjs _site | |
| - name: Configure Pages | |
| uses: actions/configure-pages@v6 | |
| with: | |
| enablement: true | |
| - uses: actions/upload-pages-artifact@v5 | |
| with: | |
| path: _site | |
| deploy: | |
| name: Deploy to Pages | |
| needs: build | |
| runs-on: ubuntu-latest | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - id: deployment | |
| uses: actions/deploy-pages@v5 |