Экземпляры AWS RDS имеют атрибут latest_restorable_time
, который AWS постоянно обновляет. Этот атрибут не настраивается, это значение только для чтения.
Выходные данные моего плана Terraform всегда показывают, что мои объекты экземпляра RDS изменились за пределами Terraform, потому что этот атрибут изменился. Я хотел бы игнорировать этот атрибут, чтобы избавиться от шума в выходных данных моего плана.
Добавление блока ignore_changes
в мою конфигурацию RDS не работает, потому что атрибут не настраивается.
Вот результат плана:
Terraform detected the following changes made outside of Terraform since the
last "terraform apply":
# module.app_db.aws_db_instance.app_database has changed
~ resource "aws_db_instance" "app_database" {
id = "app-stag"
~ latest_restorable_time = "2023-04-12T16:25:00Z" -> "2023-04-12T17:25:00Z"
tags = {}
# (50 unchanged attributes hidden)
}
Обновлено: для уточнения я хотел бы знать, можно ли игнорировать изменения атрибутов ресурсов, которые не являются настраиваемыми параметрами. Тот, с которым у меня сейчас проблема, является примером атрибута, который не задается в конфигурации, но постоянно обновляется провайдером.
Спасибо за понимание, я задавался вопросом о отрицательном голосовании. Нет соответствующей конфигурации для отображения, параметр latest_restorable_time
не является настраиваемым параметром. Вывод плана не очень интересный, но я его добавлю. Однако я пытался сохранить этот вопрос в общем, я хочу знать, как, как правило, игнорировать атрибут ресурса, который не является частью конфигурации.
Оказывается, это было вызвано ошибкой в Terraform, исправленной в версии 1.2. До версии 1.2 план Terraform показывал все смещения ресурсов в управляемых ресурсах. Начиная с версии 1.2, «будут показаны только внешние изменения, которые могли внести свой вклад в изменения плана».
Моя интеграция Gitlab Terraform использовала Terraform v1.1, поэтому у меня все еще была эта проблема. Я изменил свой файл gitlab-ci.yml, чтобы использовать образ Terraform v1.3, и это устранило проблему; мои конвейеры больше не показывают дрейф ресурсов из-за этого атрибута latest_restorable_time
.
Я предполагаю, что вы получили отрицательный голос, потому что вы не поделились своей конфигурацией терраформирования или фактическим результатом вашего плана терраформирования. При этом у ресурса
aws_db_instance
есть блокrestore_to_point_in_time
с атрибутомrestore_time
иuse_latest_restorable_time
. Registry.terraform.io/providers/hashicorp/aws/latest/docs/…