AWS Certified Cloud Practitioner / Question #738 of 719

Question #738

Which AWS service allows users to define and provision AWS resources through declarative templates that can be version-controlled and reused?

A

AWS CodeCommit

B

AWS CodeBuild

C

AWS Service Catalog

D

AWS CloudFormation

Explanation

The correct answer is D. AWS CloudFormation. CloudFormation enables infrastructure-as-code (IaC) by allowing users to define AWS resources in declarative JSON/YAML templates. These templates can be version-controlled (e.g., via Git/CodeCommit) and reused to provision consistent environments.

Why other options are incorrect:
- A. AWS CodeCommit: A managed Git repository service for version control, but it does not provision resources.
- B. AWS CodeBuild: A CI/CD service for building and testing code, unrelated to resource provisioning.
- C. AWS Service Catalog: Manages approved IT service catalogs (including CloudFormation templates) but does not directly provision resources.

Key Points:
- CloudFormation templates are declarative, meaning users specify the desired end state of resources.
- Templates support versioning, reuse, and infrastructure automation.
- Service Catalog uses CloudFormation templates under the hood but focuses on governance, not direct provisioning.

Answer

The correct answer is: D