I provision a single VPS that acts as Terraform & Ansible control:
- Store and run Terraform setup in git
- Store and distribute SSH keys
- Store and run Ansible scripts for bootstrapping (e.g. Kubernetes clusters on dedicated, or more VPS'es)
- Host VPN and some low-intensity services (I'd delegate both of these if I had a bigger budget)
Specifically, this replaces the use of Terraform Cloud.
I enjoyed using Terraform Cloud for a more cloudy setup with easy GitHub pull-request integration at a past employer.
But I'm specifically aiming for simplicity here. It doesn't scale as well to a team of 2+ without establishing conventions.
I haven't explored what self-hosted alternatives there are to Terraform Cloud.
Have you tried using one of the different terraform backends? I usually have mine backed to a gcs bucket so I can run terraform from a CI job and have it maintain state correctly.
I enjoyed using Terraform Cloud for a more cloudy setup with easy GitHub pull-request integration at a past employer.
But I'm specifically aiming for simplicity here. It doesn't scale as well to a team of 2+ without establishing conventions.
I haven't explored what self-hosted alternatives there are to Terraform Cloud.