name: Deploy Documentation
on:
push:
branches:
- main
paths:
- "docs/**"
- "mkdocs.yml"
- "README.md"
- "apexe-logo.svg"
- ".github/workflows/deploy-docs.yml"
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 with:
python-version: "3.x"
- run: pip install mkdocs-material
- name: Prepare docs for MkDocs
run: |
# Copy README as index page
cp README.md docs/index.md
# Copy logo into docs assets
mkdir -p docs/assets
cp apexe-logo.svg docs/assets/
# Fix links in index.md: docs/X → X (since we're now inside docs/)
sed -i 's|\./docs/|./|g' docs/index.md
sed -i 's|(docs/|(|g' docs/index.md
# Fix logo reference in index.md
sed -i 's|\./apexe-logo\.svg|./assets/apexe-logo.svg|g' docs/index.md
- run: mkdocs build
- uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa with:
path: site
deploy:
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac553fd0d28