/ .github / workflows / docs-site-checks.yml
docs-site-checks.yml
 1  name: Docs Site Checks
 2  
 3  on:
 4    pull_request:
 5      paths:
 6        - 'website/**'
 7        - '.github/workflows/docs-site-checks.yml'
 8    workflow_dispatch:
 9  
10  permissions:
11    contents: read
12  
13  jobs:
14    docs-site-checks:
15      runs-on: ubuntu-latest
16      steps:
17        - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5  # v4
18  
19        - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020  # v4
20          with:
21            node-version: 20
22            cache: npm
23            cache-dependency-path: website/package-lock.json
24  
25        - name: Install website dependencies
26          run: npm ci
27          working-directory: website
28  
29        - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065  # v5
30          with:
31            python-version: '3.11'
32  
33        - name: Install ascii-guard
34          run: python -m pip install ascii-guard==2.3.0 pyyaml==6.0.3
35  
36        - name: Extract skill metadata for dashboard
37          run: python3 website/scripts/extract-skills.py
38  
39        - name: Regenerate per-skill docs pages + catalogs
40          run: python3 website/scripts/generate-skill-docs.py
41  
42        - name: Lint docs diagrams
43          run: npm run lint:diagrams
44          working-directory: website
45  
46        - name: Build Docusaurus
47          run: npm run build
48          working-directory: website