У меня есть группа ресурсов, в которой уже есть несколько приложений функций. Теперь я хочу использовать Terraform для развертывания большего количества функциональных приложений в одной и той же группе ресурсов. Проблема в том, что когда я запускаю план Terraform, он сообщает, что предыдущие ресурсы будут удалены, а новые будут созданы. Я хочу оставить предыдущие ресурсы такими, какие они есть. Я скопировал мой код ниже. Результатом плана Terraform является 5 созданных ресурсов и 5 удаленных.
variable "resource_group_name" {
type = string
}
variable "location" {
type = string
}
variable "resource_name" {
type = string
}
resource "random_string" "random" {
length = 9
special = false
number = true
upper = false
}
variable "storage_account_tier" {
type = string
default = "Standard"
}
variable "storage_account_type" {
type = string
default = "LRS"
}
variable "service_plan_name" {
type = string
}
variable "service_plan_tier" {
type = string
default = "Standard"
}
variable "service_plan_size" {
type = string
default = "S1"
}
resource "azurerm_resource_group" "example" {
name = var.resource_group_name
location = var.location
}
resource "azurerm_storage_account" "example" {
name = replace(join(",",["storageaccount",random_string.random.result]),",","")
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
account_tier = var.storage_account_tier
account_replication_type = var.storage_account_type
}
resource "azurerm_app_service_plan" "example" {
name = var.service_plan_name
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
sku {
tier = var.service_plan_tier
size = var.service_plan_size
}
}
resource "azurerm_function_app" "example" {
name = var.resource_name
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
app_service_plan_id = azurerm_app_service_plan.example.id
storage_connection_string = azurerm_storage_account.example.primary_connection_string
}