Book Image

Terraform Cookbook - Second Edition

By : Mikael Krief
4.5 (2)
Book Image

Terraform Cookbook - Second Edition

4.5 (2)
By: Mikael Krief

Overview of this book

Imagine effortlessly provisioning complex cloud infrastructure across various cloud platforms, all while ensuring robustness, reusability, and security. Introducing the Terraform Cookbook, Second Edition - your go-to guide for mastering Infrastructure as Code (IaC) effortlessly. This new edition is packed with real-world examples for provisioning robust Cloud infrastructure mainly across Azure but also with a dedicated chapter for AWS and GCP. You will delve into manual and automated testing with Terraform configurations, creating and managing a balanced, efficient, reusable infrastructure with Terraform modules. You will learn how to automate the deployment of Terraform configurations through continuous integration and continuous delivery (CI/CD), unleashing Terraform's full potential. New chapters have been added that describe the use of Terraform for Docker and Kubernetes, and explain how to test Terraform configurations using different tools to check code and security compliance. The book devotes an entire chapter to achieving proficiency in Terraform Cloud, covering troubleshooting strategies for common issues and offering resolutions to frequently encountered errors. Get the insider knowledge to boost productivity with Terraform - the indispensable guide for anyone adopting Infrastructure as Code solutions.
Table of Contents (20 chapters)
16
Other Books You May Enjoy
17
Index

Filtering Terraform list

In the previous recipes of this chapter, we learn different use cases of loop over Terraform objects like collections using for and for_each expression.

In some scenarios we can have the necessity to create resources from existing list, but the requirement is to filtering only some elements from this list.

In this recipe we will learn how to filter a Terraform list to provision resources.

Let's get started!

Getting ready

To complete this recipe, you'll need to know about loop with for_each expression that will learn in recipe Looping over object collections of this chapter.

The starting element of this recipe is the following Terraform list. This list contains some properties of resources here in our use case is App Services:

web_apps = {
   webapp1 = {
      "name" = "webapptestbook1"
      "os"    = "Linux"
   },
   webapp2 = {
      "name" = "webapptestbook2"
      "os"    = ...