Skip to content

Migrate doc generation tooling#6

Merged
nscuro merged 1 commit into
mainfrom
migrate-doc-gen
Apr 24, 2026
Merged

Migrate doc generation tooling#6
nscuro merged 1 commit into
mainfrom
migrate-doc-gen

Conversation

@nscuro

@nscuro nscuro commented Apr 24, 2026

Copy link
Copy Markdown
Member

Migrates workflows and tooling for generating documentation from application.properties, Protobuf schemas, and OpenAPI specs.

The config docs generation has been rewritten from a JBang script to Python, as that aligns better with the existing MkDocs setup.

Migrates workflows and tooling for generating documentation from application.properties, Protobuf schemas, and OpenAPI specs.

The config docs generation has been rewritten from a JBang script to Python, as that aligns better with the existing MkDocs setup.

Signed-off-by: nscuro <nscuro@protonmail.com>
Copilot AI review requested due to automatic review settings April 24, 2026 20:31
@nscuro nscuro added the enhancement New feature or request label Apr 24, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates the documentation generation toolchain to better align with the existing MkDocs/uv-based setup, replacing prior ad-hoc generation approaches with a Python/Jinja2 generator and adding workflows to keep generated reference docs up to date.

Changes:

  • Add a Python-based config documentation generator using Jinja2, plus a Jinja2 template for rendering the config reference page.
  • Add Makefile targets and GitHub Actions workflows to regenerate config docs, protobuf docs, and OpenAPI specs.
  • Update generated configuration properties documentation output and project docs to reflect the new tooling/lint steps.

Reviewed changes

Copilot reviewed 12 out of 14 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
pyproject.toml Adds Jinja2 dependency for the new config docs generator.
uv.lock Updates lockfile for the added Jinja2 dependency.
scripts/generate_config_docs.py New Python implementation for parsing application.properties and rendering docs.
scripts/templates/config-docs.md.j2 New Jinja2 template for the configuration properties reference page.
docs/reference/configuration/properties.md Regenerated configuration properties documentation with the new generator output.
docs/reference/schemas/notification.md.tmpl Adds/updates protoc-gen-doc template used for notification schema docs generation.
docs/reference/schemas/policy.md.tmpl Adds/updates protoc-gen-doc template used for policy schema docs generation.
Makefile Adds lint-python, generate-config-docs, generate-proto-docs; includes Python linting in lint.
README.md Documents new Python linting and generated-docs workflows/commands.
AGENTS.md Adds guidance for Python linting and regenerating generated docs.
.github/workflows/docs.yml Runs Python linting in CI.
.github/workflows/update-config-docs.yml New workflow to regenerate config docs and open a PR.
.github/workflows/update-proto-docs.yml New workflow to regenerate protobuf docs and open a PR.
.github/workflows/update-openapi-docs.yml New workflow to download OpenAPI artifacts and open a PR with updated specs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread Makefile
Comment thread scripts/generate_config_docs.py
Comment thread docs/reference/schemas/policy.md.tmpl
Comment thread docs/reference/schemas/notification.md.tmpl
Comment thread .github/workflows/update-openapi-docs.yml
@nscuro nscuro merged commit 254c1ea into main Apr 24, 2026
9 checks passed
@nscuro nscuro deleted the migrate-doc-gen branch April 24, 2026 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants