| I use Azure. When I need to provision anything I have a powershell script that interacts with Azure CLI. My script sets up a new resource group for every service we create, logging, key vault, webapp/functions, and if needed some kind of data storage or queuing. In my powershell script I can via a variable indicate which environment I want to spin up: dev, staging, prod. I have one yaml file which is for my build and a build trigger which points to the above powershell script with the given environment. All environments: dev, staging or prod are setup manually with manual user assignments for deployment access etc. It's really lightweight but I also believe it's lightweight because we run a small services setup where each service takes care of its own provisioning. Terraform and Yaml are so verbose but that's not the most problematic. You can't execute those files from your local machine. |
Have you ever actually used terraform? You execute it from your own local computer, or from CI/CD. It runs in a compute resource you own, not the cloud provider.