Answers: <p>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.</p>
  <p>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,</p>
  <p>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.</p>
  <p>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.</p>
  
Answers: CC BY-SA 4.0
Answers: 2021-06-14T10:10:51.690Z
Answers: 2021-06-14T10:10:51.690Z
Answers: Alastair Montgomery
Answers: <p>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.</p>
  <p>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.</p>
  
Answers: CC BY-SA 4.0
Answers: 2021-06-14T20:13:54.747Z
Answers: 2021-06-14T20:13:54.747Z
Answers: Levi
Answers: <p>No sense. As <a href="https://en.wikipedia.org/wiki/Occam%27s_razor" rel="nofollow noreferrer">Occam's razor</a> principle says - &quot;entities should not be multiplied without necessity&quot;. So, two entities for one task is too much.</p>
  
Answers: CC BY-SA 4.0
Answers: 2021-06-14T14:54:51.867Z
Answers: 2021-06-14T14:54:51.867Z
Answers: Vasiliy  Shakhunov
Body: <p>I am not very familiar with AWS, but I know the basics. So please forgive me for any newbie mistakes in the question.</p>
  <p>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 <em>(after incorporating changes to suit our environment)</em>. 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.</p>
  <p>Does it make sense to use Terraform to create CF stack since they can create the IAM role, S3 bucket etc using Terraform itself?</p>
  
Tags: <terraform><aws-cloudformation>
Title: Does it make sense to create CloudFormation Stack using Terraform?
UserDisplayName: Sreeraj
ThreadText: # Does it make sense to create CloudFormation Stack using Terraform?
  
  (Asked by: username_0 on 2021-06-02)
  
  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?
  
  **Tags:** terraform, aws-cloudformation
  
  
  ---
  
  ## 3 answers
  
  ### Answer by username_1 on 2021-06-14. Score: 1
  
  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.
  
  
  ---
  
  ### Answer by username_2 on 2021-06-14. Score: 0
  
  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.
  
  
  ---
  
  ### Answer by username_3 on 2021-06-14. Score: 0
  
  No sense. As [Occam's razor](https://en.wikipedia.org/wiki/Occam%27s_razor) principle says - "entities should not be multiplied without necessity". So, two entities for one task is too much.
  
  
  ---
  
  