San*_*ver 5 amazon-web-services terraform terraform-provider-aws terraform0.12+
在 aws_lb_listener_rule 中收到此错误
错误:不支持的参数
在 ....\euc-terraformcontrol-alb\alb.tf 第 127 行,资源 "aws_alb_listener_rule" "alb_listener_rule": 127: field = "${element(split(",", var.listener_rule_field), count.index )}"
这里不需要名为“field”的参数。
错误:不支持的参数
在 ....\euc-terraformcontrol-alb\alb.tf 第 128 行,资源“aws_alb_listener_rule”“alb_listener_rule”:128:值= [“$ {element(split(”,”,var.listener_rule_value),计数。指数)}”]
resource "aws_alb_listener_rule" "alb_listener_rule" {
count = "${length(compact(split(",", var.priority))) > 0 ? "${length(compact(split(",", var.priority)))}" : 0}"
listener_arn = "${var.listener_arn}"
priority = "${element(split(",", var.priority), count.index)}"
action {
type = "forward"
target_group_arn = "${element(split(",", var.target_group_arn), count.index)}"
}
condition {
//field = "${element(split(",", var.listener_rule_field), count.index)}"
//values = "${element(split(",", var.listener_rule_value), count.index)}"
}
}
Run Code Online (Sandbox Code Playgroud)
这是新版本中的重大更改
在旧版本中,我们可以使用以下代码进行条件路由
condition {
field = "host-header"
values = ["api.example.com"]
}
Run Code Online (Sandbox Code Playgroud)
将您的 Terraform 配置切换为使用host_header
或path_pattern
配置块。
那么上面的条件就会变成
condition {
host_header {
values = ["api.example.com"]
}
}
Run Code Online (Sandbox Code Playgroud)
如果您在某些 CI/CD 平台上运行代码,那么最好在配置中添加版本,以避免将来出现此类问题并保持代码兼容。
provider "aws" {
version = "~> 2.31.0"
}
Run Code Online (Sandbox Code Playgroud)
version
meta-argument
指定 的版本约束provider
,其工作方式与 required_providers 块中的版本参数相同。仅当 required_providers 不包含该提供程序的版本约束时,才会使用提供程序配置中的版本约束。
归档时间: |
|
查看次数: |
3202 次 |
最近记录: |