将terraform v0.15的代码转换为0.11版tf代码,作为回路,而不是terraform v0.11中的回路

将terraform v0.15的代码转换为0.11版tf代码,作为回路,而不是terraform v0.11中的回路,terraform,terraform0.11,Terraform,Terraform0.11,我正在尝试将现有的地形代码版本v0.15转换为v0.11,由于v0.11不支持循环,我面临转换代码的问题 enter code here terraform { required_version = ">= 0.11.14" } /* Simple module to get AZ's that support instance types */ data "aws_availability_zones" "available&qu

我正在尝试将现有的地形代码版本v0.15转换为v0.11,由于v0.11不支持循环,我面临转换代码的问题

enter code here

terraform {
  required_version = ">= 0.11.14"
}

/*
Simple module to get AZ's that support instance types
*/
data "aws_availability_zones" "available" {
  state = "available"
}

data "aws_ec2_instance_type_offerings" "arch_zones" {
  for_each = toset(data.aws_availability_zones.available.names)

  filter {
    name   = "instance-type"
    values = var.instance_types
  }

  filter {
    name   = "location"
    values = [each.value]
  }

  location_type = "availability-zone"
}

output "azs" {
  value = keys({ for az, details in data.aws_ec2_instance_type_offerings.arch_zones : az => 
  details.instance_types if length(details.instance_types) != 0 })
}

variable "instance_types" {
  type = list(string)
}

请澄清。这段代码是您试图绕过V0.11中的限制的代码吗?如果是的话,有什么问题吗?你有错误吗?还是输出不正确?或者这是您开始使用的原始代码?(如果是这样,我看不到任何
for
循环…)。对于每个和内部键()我们都有for循环,因为我使用的是代码0.15,但我希望使代码0.11版本兼容。在V0.11中,它不支持循环。请编辑您的问题,以清楚地表明您正在展示在V0.15中工作的内容。我不知道地形,无法帮助了解具体情况。但是,如果您发布了一个版本的代码,试图与v0.11兼容,并突出显示了您被卡住的地方(带有注释,或者使用了您希望可以工作但会产生错误的代码),那么您将更有可能从其他人那里获得帮助。