3 ms·
I'm a heavy terraform user and I want something like this too. HCL and the surrounding tooling is just so nice. I mainly use puppet to manage my hobby machines
by dpedu 4y ago
I'm a heavy terraform user and I want something like this too. HCL and the surrounding tooling is just so nice.
I mainly use puppet to manage my hobby machines & VMs, and puppet does violate the agentless bit you mentioned. What I like about it (over something like Ansible) is that it understands the resource dependency tree like Terraform does. Furthermore, I've set up my implementation so that it restores backups after installing services. So, for me, rebuilding a server is simply running a backup (optional) and then wiping the box.
I saw a libvirt provider for terraform recently that can SSH to a host and then operate the libvirt API on it. That seems like a good starting point for something like this; take the SSH parts and use it to manage resources like files on the remote host.
I've written a few simple terraform providers, it's not that hard to do. This sounds like a fun project and I'm pretty tempted to do this, actually.