9 Commits
Author SHA1 Message Date
cole-maxwell1 7bbb5b08f9 ops(ansible): prepare rootless app deployment
Create the application user's Ansible temporary directory and rely on the Quadlet install configuration for service enablement.
v0.0.2
2026-08-07 15:31:51 -05:00
cole-maxwell1 94d18ff8e2 fix(handler): preserve origin on form submissions
Use the same-origin referrer policy to prevent Chrome from sending a null Origin header on POST requests.
2026-08-07 15:30:49 -05:00
cole-maxwell1 b8f655ac58 ops(ansible): configure local vault password file
Add an ignored example-backed password file for non-interactive deployments and document the external password file override.
2026-08-07 12:06:39 -05:00
cole-maxwell1 eaf53f8256 docs: add Hetzner architecture diagram 2026-08-07 11:54:22 -05:00
cole-maxwell1 2ff14e6221 ops(ci): automate testing and container image releases
Add PostgreSQL-backed Go validation for application changes and semantic-version release publishing to GHCR.

Default deployments to the public image and prevent host setup from starting the application before deployment.
v0.0.1
2026-08-07 11:38:23 -05:00
cole-maxwell1 d118f52387 ops(ansible): harden provisioning and restore automation
Fail before host changes when required deployment variables are missing.

Precreate the PostgreSQL temporary directory and escape Bash syntax during Jinja rendering.
2026-08-07 09:58:15 -05:00
cole-maxwell1 74dff70b16 docs: clarify Hetzner and Ansible configuration
Add concrete SSH key and bucket examples.

Update group variable paths to match the inventory layout.
2026-08-07 09:53:55 -05:00
cole-maxwell1 dd60bd4a3e chore: align repository and Ansible configuration
Relocate group variable examples beside the inventory for automatic discovery.

Refresh repository guidance, ignore local tooling artifacts, and disable Ansible cows.
2026-08-07 09:52:47 -05:00
cole-maxwell1 1382c42803 feat: add Hetzner-hosted todo application stack
Implement the server-rendered Go todo application with PostgreSQL persistence, Tailwind styling, health checks, and test coverage.

Provision production and staging infrastructure with OpenTofu, including private networking, static IPs, Object Storage backups, and load balancing.

Configure Rocky Linux hosts with Ansible, rootless Podman, PostgreSQL, WAL-G backup automation, staging restores, and generated inventory.
2026-08-06 21:34:56 -05:00