我有一个Terraform模块,可在Azure中创建SQL服务器和防火墙规则
insert into payment_methods_assigned_to_users (user_id, name)
VALUES (1, select name from payment_methods_default);
每次执行计划或应用时,Terraform都会尝试创建这些防火墙规则(而不破坏旧规则)。 输出:
resource "azurerm_sql_server" "sqlServer" {
name = "sql-server"
resource_group_name = azurerm_resource_group.resourceGroup.name
location = var.location
version = "12.0"
administrator_login = ""
administrator_login_password = ""
}
resource "azurerm_sql_database" "sqlDatabase" {
name = "DbName"
resource_group_name = azurerm_resource_group.resourceGroup.name
location = var.location
server_name = azurerm_sql_server.sqlServer.name
...
}
resource "azurerm_sql_firewall_rule" "firewall" {
name = "firewall"
resource_group_name = azurerm_resource_group.resourceGroup.name
server_name = azurerm_sql_server.sqlServer.name
start_ip_address = "0.0.0.0"
end_ip_address = "0.0.0.0"
}
这不是问题,因为规则存在,如果我运行计划,规则就已经存在,因此尚未创建,但是对于任何想要使用此Terraform脚本的人来说都是误导。
其他人有这个吗? 谢谢您的帮助