Postgresql 为什么可以';不要将标签添加到terraform模块中

Postgresql 为什么可以';不要将标签添加到terraform模块中,postgresql,azure,terraform,terraform-provider-azure,azure-database-postgresql,Postgresql,Azure,Terraform,Terraform Provider Azure,Azure Database Postgresql,我在为PostgreSQL服务的Azure数据库设置标签时遇到了一些问题,我的代码如下 module "postgresql" { source = "./modules/postgresql" service = var.service . . . tags = { test = "test" } 错误发生了 53: tags = { An argument named "tags" is not expected here. 为什么

我在为PostgreSQL服务的Azure数据库设置标签时遇到了一些问题,我的代码如下

module "postgresql" {
  source = "./modules/postgresql"
  service               = var.service
  .
  .
  .
  tags = { test = "test" }
错误发生了

53:  tags = {

An argument named "tags" is not expected here.
为什么总是这样,实际上在Resource_组模块中有标记,但根本没有错误 ,对此我有点困惑。有人知道吗?请帮助我并感谢您的帮助。因为错误说明:“此处不需要名为“tags”的参数”。您应该在您的子模块中定义变量
tags
,因为大多数参数都与模块定义的参数相对应。或者,如果资源不支持参数,则不能在该资源下使用
标记

例如,如果资源支持
标记
,则模块配置文件中将包含输入变量
标记

variable "tags" {

}
...

resource "azurerm_virtual_network" "myterraformnetwork" {
  name                = var.vnetname
  address_space       = var.address_space
  location            = var.location
  resource_group_name = var.rgname
  tags = var.tags
}
正如错误所述:“此处不应出现名为“tags”的参数。”,当需要时,应在子模块中定义变量
tags
,因为大多数参数对应于模块定义的变量。或者,如果资源不支持参数,则不能在该资源下使用
标记

例如,如果资源支持
标记
,则模块配置文件中将包含输入变量
标记

variable "tags" {

}
...

resource "azurerm_virtual_network" "myterraformnetwork" {
  name                = var.vnetname
  address_space       = var.address_space
  location            = var.location
  resource_group_name = var.rgname
  tags = var.tags
}

模块是否公开tags变量?你还没有发布你的模块源代码,所以这并不是真正需要回答的问题。哦,天哪,这太尴尬了,我忘了vars,我以为这是关于版本的,谢谢。如果你解决了这个问题,请添加一个答案来显示解决方案,以帮助其他社区,谢谢。模块是否公开了一个标记变量?你还没有发布你的模块源代码,所以这不是真正的问题。哦,伙计,这太尴尬了,我忘记了vars,我认为这是关于版本的,谢谢。如果你解决了这个问题,请添加一个答案来显示解决方案,以帮助其他社区,谢谢。