From 34dc9b40afc34e2a3b4b84cad5041412e3b3a07e Mon Sep 17 00:00:00 2001 From: badra001 Date: Mon, 20 Dec 2021 11:05:21 -0500 Subject: [PATCH] update az for for_each --- .pre-commit-config.yaml | 2 ++ common/availabilty_zones.tf | 21 ++++++++------------- common/versions.tf.off | 9 +++++++++ examples/README.md | 3 +++ 4 files changed, 22 insertions(+), 13 deletions(-) create mode 100644 common/versions.tf.off create mode 100644 examples/README.md diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6f20ddd..93cda0b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -8,8 +8,10 @@ repos: args: ['table'] exclude: common/*.tf exclude: version.tf + exclude: examples/ - id: terraform_tflint args: [ "--args=--config=__GIT_WORKING_DIR__/.tflint.hcl"] + exclude: examples/ - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.4.0 hooks: diff --git a/common/availabilty_zones.tf b/common/availabilty_zones.tf index fdf50d3..0684edb 100644 --- a/common/availabilty_zones.tf +++ b/common/availabilty_zones.tf @@ -1,30 +1,25 @@ -# locals { -# az_list = data.aws_availability_zones.zones.names -# az_count = length(local.az_list) -# az_count_list = range(local.az_count) -# } - data "aws_availability_zones" "zones" { state = "available" } data "aws_availability_zone" "zone" { - count = length(data.aws_availability_zones.zones.names) - state = "available" - name = data.aws_availability_zones.zones.names[count.index] + for_each = toset(data.aws_availability_zones.zones.names) + state = "available" + name = each.key } + output "availability_zone_names" { - description = "VPC Availability zone name list (3)" + description = "VPC Availability zone name list" value = data.aws_availability_zones.zones.names } output "availability_zone_ids" { - description = "VPC Availability zone id list (3)" + description = "VPC Availability zone id list" value = data.aws_availability_zones.zones.zone_ids } output "availability_zone_suffixes" { - description = "VPC Availability zone suffix list (3)" - value = data.aws_availability_zone.zone[*].name_suffix + description = "VPC Availability zone suffix list" + value = [for k, v in data.aws_availability_zone.zone : v.name_suffix] } diff --git a/common/versions.tf.off b/common/versions.tf.off new file mode 100644 index 0000000..e4a44dc --- /dev/null +++ b/common/versions.tf.off @@ -0,0 +1,9 @@ +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = ">= 3.66.0" + } + } + required_version = ">= 0.13" +} diff --git a/examples/README.md b/examples/README.md new file mode 100644 index 0000000..262d64b --- /dev/null +++ b/examples/README.md @@ -0,0 +1,3 @@ +# Examples + +Create directories with specific examples and describe how to use the module in a variety of ways.