我正在尝试在订阅级别(而不是资源或资源组)上管理Azure标记。我们是not
创建Terraform订阅,我们不能。创建订阅后,我们将为该订阅创建一个配置模板。在那里,我们管理诸如访问控制和所有权记录之类的事情。下面是订阅的标准配置模板。
module "subscription-project-pegasus" {
source = "./modules/subscription/"
subscription_access = [
{
aad_group = "all-employees-group"
role = "Reader"
},
{
spn = "spn-pegasus"
role = "Contributor"
}
]
ownership = {
team = "Team Pegasus",
pagerduty_id = "pegasus"
}
}
我想在这里添加另一个可以在订阅级别应用的tags
对象。
tags = {
owner = "pegasus"
environment = "nonprod"
}
自定义模块./modules/subscriptions
使用azurerm_role_assignment
模块提供角色分配。但是,除了主要用于提供订阅的主azurerm_subscription
模块之外,我找不到可以进行标记的模块。如果我使用这个,我相信Terraform将开始跟踪订阅的状态,这将是不理想的。
我正在寻找一种方法来添加这些标签的订阅级别,而不使用azurerm_subscription
模块。请指教!
1条答案
按热度按时间ryhaxcpt1#
我尝试在不使用
azurerm_subscription
模块的情况下使用Terraform添加/更新Azure订阅标签,并成功地提供了需求。如果您希望在订阅级别上管理标记而不使用
azurerm_subscription
模块(由于其状态跟踪),则可以使用local-exec provider来运行Azure CLI命令以将标记添加到订阅。我的地形配置
main.tf
输出:
这里我使用
vinay
作为所有者名称,env作为non-prod