Want an advice from a pro? Stick with Cloudformation (CFN). Split stuff smartly between stacks. Use Outputs export/import. This is default IaaC way in AWS. I would not touch anything else, rather insist on full rewrite. Reuse templates using Parameters. Stack can be rolled-back, checked for drift, checked for changes before changes and so on.
CFN has the least LOC between them all and is easy to create in your text editor.
Just don’t use nested stacks :) oh, and multi-cloud is an urban legend, myth.
Well, this works only for AWS. For Azure, there's Bicep (which is just francy wrapper), but I need more than just AWS - I terraform GitHub, Cloudflare, DataDog, Opsgenie, etc. Terraform is not dead, Pulumi is way too commercial; I believe Terraform fork is imminent - the core team of HashiCorp was stuck for years and this needs to get out of their grip, which was focused only on monetizing the overly expensive TFC!
For example, dynamic providers has been the hugest pain! They don't care to fix it, because their foundation is so flaky, it requires tons of work. In the hands of the community, which doesn't care about making TFC catch up with Scalr, Env0, and the numerous other cheaper and mostly better alternatives, this will be accomplished way more easily.
Yeah after working with cloudformation for so long I really despise working with anything else. Terraform isn’t bad but it’s still much more verbose than cloudformation
We're not using terraform for multicloud but to have the same tech stack. Also the terraform documentation for the aws provider is just magnitudes easier to understand than the cloud formation docu. And in some cases more correct.
Our deployments are triggered with bash scripts and this way we can use the best parts of each cloud provider, all with terraform.
Still debating internally what this new license means for us.
CFN has the least LOC between them all and is easy to create in your text editor.
Just don’t use nested stacks :) oh, and multi-cloud is an urban legend, myth.