Skip to content

Deploy Documentation #7

Deploy Documentation

Deploy Documentation #7

Workflow file for this run

name: Deploy Documentation
on:
push:
branches:
- main
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: false
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout this repo
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 24
cache: 'npm'
cache-dependency-path: package-lock.json
- name: Install dependencies
run: npm ci
- name: Checkout docs repo (for versions config)
uses: actions/checkout@v4
with:
repository: diffyne/docs
path: docs-source
token: ${{ secrets.GITHUB_TOKEN }}
ref: main
- name: Copy versions config from docs repo
run: |
if [ -f docs-source/versions.json ]; then
cp docs-source/versions.json docs/.vitepress/versions.json
echo "✅ Copied versions.json from docs repo"
else
echo "⚠️ versions.json not found in docs repo, using default"
fi
- name: Sync all versions from docs repo (branch-based)
run: npm run sync:all
env:
DOCS_SOURCE_PATH: ./docs-source
- name: Build documentation
run: npm run build
- name: Setup Pages
uses: actions/configure-pages@v4
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: docs/.vitepress/dist
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4