Skip to content

Adding extensive documentation & GH pages configuration#233

Open
Jakub Wlodek (jwlodek) wants to merge 3 commits into
NSLS2:mainfrom
jwlodek:docs
Open

Adding extensive documentation & GH pages configuration#233
Jakub Wlodek (jwlodek) wants to merge 3 commits into
NSLS2:mainfrom
jwlodek:docs

Conversation

@jwlodek

Copy link
Copy Markdown
Collaborator

Adding documentation & mkdocs build configuration that goes over the repository structure, usage patterns, etc.

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

This PR introduces an MkDocs-based documentation site (with GitHub Pages deployment) and adds repository documentation covering structure, workflows, and testing, plus a script to auto-generate the “supported modules / device roles” reference table from the repo’s vars files.

Changes:

  • Add MkDocs configuration + a GitHub Actions workflow to build and publish docs to GitHub Pages.
  • Add extensive markdown documentation under docs/ (getting started, guides, reference, testing).
  • Add scripts/generate_docs_table.py and pixi/make tasks to regenerate the supported modules/device roles tables.

Reviewed changes

Copilot reviewed 23 out of 25 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
scripts/generate_docs_table.py New script to generate and inject module/role tables into the docs reference page.
pixi.toml Adds docs tasks (docs-table, docs-build, docs-serve) and the mkdocs dependency.
mkdocs.yml New MkDocs site configuration and navigation structure.
Makefile Adds docs-table target to run the table generator via pixi.
docs/testing/verification-tests.md New documentation describing verify.yml structure and best practices.
docs/testing/local-testing.md New documentation for container-based local testing workflow.
docs/testing/ci-workflows.md New documentation for the repository’s CI workflows and triggers.
docs/reference/supported-modules.md New generated reference page with module + device role tables and regeneration instructions.
docs/reference/install-module-reference.md New reference documentation for install_module role behavior and schema.
docs/reference/deploy-ioc-defaults.md New reference documentation for deploy_ioc defaults and behavior.
docs/index.md New documentation home page describing architecture and key commands.
docs/guides/updating-roles.md New guide for updating modules and modifying roles safely.
docs/guides/adding-an-areadetector-role.md New guide detailing patterns and requirements for AD-based roles.
docs/guides/adding-a-module.md New guide for adding/installing modules (interactive + manual).
docs/guides/adding-a-device-role.md New guide for creating device roles (interactive + manual).
docs/getting-started/usage-patterns.md New “intended workflow” + deployment flow/precedence documentation.
docs/getting-started/installation.md New installation/setup documentation (pixi, containers, optional utilities).
.pre-commit-config.yaml Updates ansible-lint exclusions to avoid linting docs output paths.
.gitignore Ignores MkDocs build output directory (site/).
.github/workflows/deploy-docs.yml New workflow to generate tables, build MkDocs, and deploy to GitHub Pages.

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

Comment thread scripts/generate_docs_table.py Outdated
Comment thread docs/reference/supported-modules.md
Comment thread .pre-commit-config.yaml
Comment on lines 18 to 26
entry: >
ansible-lint --offline
--exclude roles/install_module/vars/*
--exclude scripts/deploy_ioc.yml
--exclude docs/*
--exclude site/*
--exclude roles/device_roles/adpilatus/*
description: Perform ansible linting
types: [yaml]
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants