@Ram Kumar G We are a big org with a lot of decisions that have been made, so we were trying to rock the boat as gently as possible 😒imple_smile:
There are a few underlying reasons outside of the political. Primary problem was that developers didn’t want or didn’t have time to learn “terraform”, which in our company means cloud infrastructure. They all know how to hit a RESTful endpoint though. Next, we have a large investment in terraform already, including modules and third-party providers; so instead of injecting a brand new tool, we decided to try and provide a pierceable abstraction into our existing IaC platform. You could write terraform, use our existing modules, etc. or you could use a simple form, which used our modules in the end anyway.
Pulumi’s experience was also not as nice, from a developer perspective, when we examined it. We did look at pulumi and just using cloud SDKs, but for the reasons specified above, we went with cdktf. I really like how you can render terraform json from a configuration, making it easy to integrate with a simple terraform plan or apply, allowing your execution model to happen the same regardless of if someone wants to write terraform themselves from scratch, use modules, or use our abstraction.