Files
presidio/.github/workflows/release-docs.yml
Sharon Hart 1c44a0fded docs: Material for MkDocs migration to Zensical (#2102)
* docs: migrate documentation site from MkDocs to Zensical

Replace the Material for MkDocs toolchain with Zensical (its successor),
leaving no parallel MkDocs build behind.

- release-docs.yml builds with scripts/zensical_build.py and publishes the
  generated ./site to GitHub Pages (was: pip install requirements-docs.txt
  + mkdocs gh-deploy).
- requirements-docs.txt pins zensical + nbconvert + mkdocstrings-python in
  place of mkdocs / mkdocs-material / mkdocs-jupyter.
- scripts/zensical_build.py pre-converts the notebook samples with nbconvert
  (Zensical has no MkDocs plugin lifecycle, so mkdocs-jupyter never runs) and
  emits a generated zensical.yml from mkdocs.yml, which Zensical reads natively.
- mkdocs.yml: drop the now-unused mkdocs-jupyter plugin (the build script
  handles notebooks); the Material-compatible theme, custom_dir overrides
  (Microsoft Clarity + cookie consent) and mkdocstrings API reference are all
  honored by Zensical.
- docs/stylesheets/extra.css: style the nbconvert-rendered notebook output.
- NOTICE: attribute Zensical (MIT) and nbconvert (BSD-3 Clause); drop the
  MkDocs and mkdocs-jupyter notices, keep mkdocstrings and pymdown-extensions.

Verified locally: 104 pages build, all 18 sample notebooks render, the API
reference and brand styling are intact.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs: improve Zensical mobile homepage

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Omri Mendels <omri374@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-28 11:05:34 +03:00

47 lines
1.4 KiB
YAML

name: Release Documentation
# Builds the docs with Zensical (the successor to Material for MkDocs) via
# scripts/zensical_build.py and publishes the result to GitHub Pages. The script
# pre-converts the notebook samples with nbconvert because Zensical does not run
# the mkdocs-jupyter plugin.
on:
workflow_dispatch:
permissions:
contents: read
jobs:
github-pages-release:
name: Build with Zensical and push to GitHub Pages
runs-on: ubuntu-slim
permissions:
contents: write # Required for pushing to the gh-pages branch
steps:
- name: Checkout repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.0
with:
fetch-depth: 0 # Fetch all history for proper gh-pages deployment
persist-credentials: true # So that the token is available for pushing
- name: Set up Python
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: '3.12'
- name: Install dependencies
run: |
pip install -r docs/requirements-docs.txt
- name: Build docs
run: |
python scripts/zensical_build.py build
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@84c30a85c19949d7eee79c4ff27748b70285e453 # v4.1.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./site