Using the AWS Provider Flashcards
What is CloudFormation?
The native tool within AWS to work with Infrastructure as Code.
What language formats does Terraform vs CloudFormation support?
Terraform: HCL
CloudFormation: JSON and YAML
What does HCL stand for?
HashiCorp Configuration Language
How does HCL relate to JSON?
HCL is kind of an abstraction from JSON.
ps. We could technically write our Terraform in raw JSON but it’s not recommended.
What are the values that you give the template to use called in Terraform vs CloudFormation?
Terraform: Variables
CloudFormation: Parameters
What are the local values that are computed within a template and can be reused throughout the configuration called in Terraform vs CloudFormation?
Terraform: Local Variables
CloudFormation: Mapping
How do we process and make a decision based on a logic in Terraform vs CloudFormation?
Terraform: Logical Operators
CloudFormation: Conditions
What are AWS resources represented by in Terraform vs CloudFormation?
Terraform: Resources
CloudFormation: Resources
What are the reusable pieces of logic/code that are used to either manipulate values or refer to other values within the configuration in Terraform vs CloudFormation?
Terraform: Functions
CloudFormation: Intrinsic Functions
If you want to use an existing stack to augment the stack we’re creating, what do we use in Terraform vs CloudFormation?
Terraform: Modules
CloudFormation: Nested Stacks
How do the concepts of dependency compare between Terraform vs CloudFormation?
Terraform: Automatic Dependency
CloudFormation: Implicit Dependency
What does Terraform and CloudFormation have in common when working out dependencies and what resources to create first?
They both create a dependency graph when we’re running a plan, and if they see a dependency between resources, they will create the resource that the other one is dependent on first.
What are providers in Terraform?
Providers are what Terraform uses to communicate with all the different cloud services and other pieces of software that are out there.
What does the fact that Terraform providers are versioned mean practically?
When a new version of a provider comes out, we can wait on that version by specifying the version we want to use in our configuration.
What are the two major “thing”s we can find in Terraform providers?
- Data Sources
2. Resources