Oli*_*ver 6 terraform terraform-provider-aws
我default_tags在根模块中使用 terraform aws 提供程序块my_terraform。该模块有一个名为 的子模块my_submodule,我想在该子模块中添加其他默认标签。我在以下位置尝试过my_terraform/my_submodule/main.tf:
provider "aws" {\n default_tags {\n tags = {\n "extra_tag" = "something"\n }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n但我收到这个错误:
\n$ terraform init\nInitializing modules...\n- my_terraform.my_submodule in my_terraform/my_submodule\nThere are some problems with the configuration, described below.\n\nThe Terraform configuration must be valid before initialization so that\nTerraform can determine which modules and providers need to be installed.\n\xe2\x95\xb7\n\xe2\x94\x82 Error: Module module.my_submodule contains provider configuration\n\xe2\x94\x82 \n\xe2\x94\x82 Providers cannot be configured within modules using count, for_each or depends_on.\nRun Code Online (Sandbox Code Playgroud)\n有没有办法解决?
\n解决方法是为每个所需的标签集创建不同的别名提供程序块,并将其显式传递给每个子模块。
provider "aws" {
default_tags {
tags = {
default_tag = "asdf"
}
}
}
provider "aws" {
alias = "foo"
default_tags {
tags = {
default_tag = "asdf"
extra_tag = "foo"
}
}
}
provider "aws" {
alias = "bar"
default_tags {
tags = {
default_tag = "asdf"
extra_tag = "bar"
}
}
}
module "foo" {
source = "something"
providers = {
aws = aws.foo
}
}
module "bar" {
source = "something"
providers = {
aws = aws.bar
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3590 次 |
| 最近记录: |