You can split the difference with the Proxmox provider for Terraform[1]. The workflow would be:
- provision VMs with Terraform - configure/maintain your VM with something like Ansible
The provider also allows your to schedule LXC if you'd like to target that instead.