| name: Docs |
| |
| on: |
| push: |
| branches: |
| - main |
| pull_request: |
| workflow_dispatch: |
| |
| env: |
| FORCE_COLOR: 2 |
| NODE: 22 |
| |
| permissions: |
| contents: read |
| |
| jobs: |
| build-dist: |
| runs-on: ubuntu-latest |
| |
| steps: |
| - name: Clone repository |
| uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 |
| with: |
| persist-credentials: false |
| |
| - name: Set up Node.js |
| uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0 |
| with: |
| node-version: "${{ env.NODE }}" |
| cache: npm |
| |
| - name: Install npm dependencies |
| run: npm ci |
| |
| - name: Build CSS |
| run: npm run css |
| |
| - name: Build JS |
| run: npm run js |
| |
| - name: Upload CSS artifacts |
| id: css-artifact |
| uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 |
| with: |
| name: css-dist |
| path: dist/css/ |
| retention-days: 1 |
| |
| - name: Upload JS artifacts |
| id: js-artifact |
| uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 |
| with: |
| name: js-dist |
| path: dist/js/ |
| retention-days: 1 |
| |
| docs: |
| needs: build-dist |
| runs-on: ubuntu-latest |
| |
| steps: |
| - name: Clone repository |
| uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 |
| with: |
| persist-credentials: false |
| |
| - name: Set up Node.js |
| uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0 |
| with: |
| node-version: "${{ env.NODE }}" |
| cache: npm |
| |
| - name: Install npm dependencies |
| run: npm ci |
| |
| - name: Download CSS artifacts |
| uses: actions/download-artifact@v4 |
| with: |
| name: css-dist |
| path: dist/css/ |
| |
| - name: Download JS artifacts |
| uses: actions/download-artifact@v4 |
| with: |
| name: js-dist |
| path: dist/js/ |
| |
| - name: Build docs |
| run: npm run docs-build |
| |
| - name: Validate HTML |
| run: npm run docs-html-validate |
| |
| - name: Run linkinator |
| uses: JustinBeckwith/linkinator-action@3d5ba091319fa7b0ac14703761eebb7d100e6f6d # v1.11.0 |
| with: |
| paths: _site |
| recurse: true |
| verbosity: error |
| skip: "^http://localhost" |