Изначально у меня был скрипт Terraform, который создает группу логов CloudWatch.
resource "aws_cloudwatch_log_group" "main_server_log_group" {
name = "server_name"
retention_in_days = 60
}
Я применил его, позже переместил в специальный модуль и переименовал
resource "aws_cloudwatch_log_group" "server_log_group" {
name = "${var.server_name}"
retention_in_days = 60
}
и используя этот модуль в main.tf
module "main_server" {
source = "./modules/server"
server_name = "${local.main_server_name}"
}
Теперь приложение Terrafrom уничтожает исходную группу CloudWatch и создает новую.
module.main_server.aws_cloudwatch_log_group.main_server_log_group[0]: Creating...
aws_cloudwatch_log_group.main_server_log_group: Destroying... [id=xxxx]
Я предполагаю, что это потому, что изменилось название ресурса Terraform, не так ли? Этого не ожидалось. Название группы CW не изменилось.
Есть ли обходной путь для сохранения существующих ресурсов при рефакторинге кода Terraform?