Category: Terraform

Nested Loops in Terraform: Create a map from 2 lists

By , March 7, 2020 7:42 pm

Recently I encountered a Terraform task in which I had a list of roles and a list of policies and I needed to create a AWS resource for every combination of role-policy. In a “regular” programming language this would be a simple nested loop. Thankfully Terraform 0.12 added for_each and for attributes to declare recurring resources. But two problems remained:

  1. I needed some kind of way to nest these for declarations
  2. for_each attributes requires a map with a unique key

So let’s tackle these problems one at a time. Let’s we have 2 lists:

locals {
   ROLES = ["developer", "analyst", "manager"]
   POLICIES = ["arn:1", "arn:2", "arn:3"]

Continue reading 'Nested Loops in Terraform: Create a map from 2 lists'»

Panorama Theme by Themocracy