Contributing
The documentation is written in Markdown and built with MkDocs Material. All source files live in the docs/ directory of the ansible-epic repository. Builds are handled automatically by Cloudflare Pages — no local build tooling is required to contribute.
Workflow
Previewing Locally
The local preview works best when the repository is cloned directly on a Windows machine rather than inside a remote development container, where the browser and the dev server are on different hosts and livereload is unreliable.
Prerequisites (Windows)
Install Python and Git if not already present:
Clone the repository:
Install the MkDocs dependencies:
Serve
The site will be available at http://localhost:8000. The --livereload flag automatically refreshes the browser whenever a file is saved.
Editing Existing Pages
- Open a pull request with your changes to any
.mdfile underdocs/. - Cloudflare Pages automatically builds a preview of the site and posts a link as a comment on the PR.
- Review the preview to confirm formatting and links look correct.
- Once the PR is approved and merged into
main, Cloudflare Pages rebuilds the production site at https://ansible-docs.sapphirehealth.org.
Adding New Pages
- Create the
.mdfile in the appropriate subdirectory underdocs/. - Add an entry for it in the
navsection ofmkdocs.ymlat the root of the repository. Pages not listed innavare built but will not appear in the sidebar. - Open a PR as above.
Formatting Reference
The following MkDocs Material extensions are enabled:
Admonitions
Callout blocks for notes, tips, warnings, and similar:
Add ??? instead of !!! to make a block collapsible.
Code Blocks
Fenced code blocks with syntax highlighting:
Add a title with:
Content Tabs
Side-by-side tab groups — used throughout this documentation for Bash / PowerShell examples:
Note
The indentation under each === tab label must be exactly four spaces.
Tables
Standard Markdown tables are supported. Columns are sortable in the browser via the tablesort plugin included in the site.