This site was built with Zola, an open source static site generator. I chose to use a prebuilt web server as it would allow me to focus on the content rather than building out a custom service, why reinvent the wheel?

Zola allows me to select a template then just drop in my content as Markdown files, with front matter, and Zola handles presenting the content.

The site is stored in a git repo, that is stored in my personal self-hosted git forge (Forgejo). Using Forgejo Actions, when I push/merge to the main branch on this project it builds a Container image that is then stored in Forgejo.

GitOps Pipeline

The full workflow can be seen at build.yaml.

From there on, the VPS, our Flux ImageRepository is watching that repo for new versions. When a new version is available it will pull it down and update our container running on the server. Documentation updates entirely automated!