… kind of.
Declarative has its advantages which are hyped all over the internet so I’ll skip that part. The painful downside of declarative approach is often the expressivity. Sample proofs:
- People generate CloudFormation files.
- Size of the Puppet standard library, which I mentioned under “Limited DSL limitations” in my older post “Please don’t use Puppet“.
- Terraform is enhancing the DSL (HCL)
- HashiCorp Terraform 0.12 Preview (official blog post)
- Terraform becomes a programming language (my post about this)
Now you can have Python embedded in your CloudFormation file. That is part of the CloudFormation Macros which were introduced on 2018-09-06.
Happy coding, everyone!