I am not very familiar with AWS, but I know the basics. So please forgive me for any newbie mistakes in the question.

I am trying to integrate our AWS accounts with a vendor app. The vendor has provided a CloudFormation template to create a CF stack that will create the required IAM role, S3 bucket, SNS topic etc for the integration. I looked at the CF template, broke down the steps in the CF template, and wrote the resources that need to be created in our AWS for our vendor (after incorporating changes to suit our environment). When I gave the broken down steps along with the CF template to our DevOps team, I was expecting them to Terraformize the CF template and create the IAM role, etc through terraform. But I see that they are trying to write a Terraform code to create the CloudFormation Stack. No one else in our organization would log into AWS account's console and create stuff, only the DevOps team does it and they do everything through Terraform.

Does it make sense to use Terraform to create CF stack since they can create the IAM role, S3 bucket etc using Terraform itself?

3 Answers 3


Initially, I though no it does not make sense to use Terraform to create the infra structure to run Cloud Formation script to do create resources you can do using Terraform.

If you are experience in Terraform and use it for your other infrastructure, it does not make sense to introduce another way of doing it,

The only reason I could see to create the Cloud Formation stack and run their provide script would to be to remove the possibility of the introductions of errors during the conversion to Terraform.

If their Cloud Formation script is complex this could be an issue, but if it is just creating an IAM role and some policies it is probably not much of a concern.


No sense. As Occam's razor principle says - "entities should not be multiplied without necessity". So, two entities for one task is too much.


If the vendor is going to change the Cloudformation template often or if the Terraform resources don't need to interact with the Cloudformation resource then it's fine to deploy the Cloudformation stack with Terraform.

If both of these things are false you might want to migrate the resources to Terraform. If one is false and the other is true you should consider the trade offs.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.