A startup is looking for a solution to automate the setup of their cloud-based infrastructure, ensuring they can easily replicate environments for different stages of their product lifecycle. Which option would allow them to define their web application's resources in code, offering a repeatable way to deploy and manage the infrastructure?
Use an application deployment service that abstracts away most of the underlying configuration details.
Adopt a service that allows them to declare their infrastructure as code through templates.
Implement a configuration management service to automate the platform setup.
Utilize a container management service to orchestrate their deployment processes.