Обновление провайдера смещает фокус с удобства на предсказуемость поведения. Это критично, когда Terraform становится источником истины (source of truth) для observability-конфигурации.
Проблема проявляется на уровне управления состоянием. В больших инсталляциях Terraform должен детерминированно контролировать доступ и интеграции. В предыдущих версиях поведение прав на мониторы могло быть неочевидным, особенно при обновлениях. Параллельно AWS-интеграция была разбита на несколько ресурсов, что усложняло управление и увеличивало вероятность рассинхронизации. Отдельный риск — работа с application keys: существовали пути, при которых ключи могли быть извлечены через Terraform.
Решение в v4 — ужесточение контрактов. Права на мониторы становятся «липкими» (sticky): если ограничения заданы, они сохраняются до явного изменения. Это убирает неявные побочные эффекты при apply. Для AWS вводится единый ресурс datadog_integration_aws_account вместо четырёх разрозненных. В части безопасности убраны механизмы, позволяющие читать существующие application keys через data source. Это компромисс: меньше гибкости, но выше предсказуемость и контроль.
Реализация затрагивает несколько уровней.
- restricted_roles теперь требует явного обнуления ([]) для снятия ограничений.
- управление доступом стандартизируется через restriction_policy; поле locked удалено.
- одновременное использование restricted_roles и restriction_policy может вызывать конфликты — это нужно учитывать при миграции.
- AWS-интеграции консолидируются в один ресурс, при этом API остаются прежними, что снижает риск на уровне backend.
- удалён datadog_application_key data source и импорт существующих ключей — это меняет пайплайны, где ключи подтягивались извне.
- провайдер переходит на Terraform Plugin Framework (protocol v6), что упрощает развитие схем и валидации.
Результат — более строгая и предсказуемая модель управления. Terraform лучше удерживает роль источника истины для прав доступа и интеграций. Упрощается структура конфигурации AWS. Повышается безопасность работы с ключами за счёт сокращения каналов их чтения. Количественные метрики улучшений не приводятся, но изменения направлены на снижение конфигурационных ошибок и неявных изменений при деплое.