Docs as Code¶
Publish module documentation through GitHub Pages with custom domains using DNS-as-Code and Zensical.
Guides¶
- GitHub Pages Setup — set up a GitHub Pages site for an OpsDev.nz module with a custom domain
Overview¶
OpsDev.nz modules publish their documentation through GitHub Pages using a consistent workflow:
- Zensical builds the docs site from
docs/in each module - GitHub Actions deploys the site on merge to
main - OctoDNS manages the DNS records for custom domains
- Metaname is the DNS provider for
opsdev.nzandopstest.nz
This approach keeps documentation close to the code, deploys automatically on merge, and uses the same DNS-as-Code workflow as production infrastructure.
Custom domains¶
Each module gets its own subdomain under opsdev.nz:
| Module | Domain |
|---|---|
op-opsdevnz |
op.opsdev.nz |
octodns-metaname |
octodns-metaname.opsdev.nz |
The DNS records are managed in the OpsDev.nz monorepo's OctoDNS zone files, not in the individual module repositories.