solutions/chapter-2/04_expressions/foreach/main.tf (27 lines of code) (raw):

# Create a list of indexes locals { indexes = [for i in range(var.resource_count) : i] } # Resource groups in Azure resource "azurerm_resource_group" "example_rg" { for_each = { for idx in local.indexes : idx => idx } provider = azurerm.default name = "exampleResourceGroup-${each.key}" location = "West Europe" } # GitHub repositories resource "github_repository" "example_repo" { for_each = { for idx in local.indexes : idx => idx } provider = github.jeffreygroneberg name = "exampleRepo-${each.key}" description = "Repository for exampleResourceGroup-${each.key}" visibility = "private" auto_init = true } # README files in GitHub repositories resource "github_repository_file" "readme" { for_each = { for idx in local.indexes : idx => idx } provider = github.jeffreygroneberg repository = github_repository.example_repo[each.key].name file = "README.md" overwrite_on_create = true content = "Content for exampleRepo-${each.key}" branch = "main" depends_on = [github_repository.example_repo] }