Spec-Zone.ru › OpenTofu 1.11

Атрибуты только для записи

Примечание

Атрибуты только для записи можно использовать только в OpenTofu версии 1.11 и новее.

Этот атрибут встречается только в managed resources, предназначенных для приема временных значений, которые никогда не будут сохранены в состоянии или плане. Например, секрет можно получить с помощью эфемерного ресурса, а затем передать в атрибут только для записи password_wo управляемого ресурса.

Жизненный цикл этих атрибутов существенно отличается от жизненного цикла других типов атрибутов:

  • Атрибут только для записи существует только в разделе конфигурации ресурса
  • Атрибут только для записи всегда записывается в состояние и план со значением null
  • Провайдер всегда возвращает для атрибута только для записи значение null, даже если в конфигурации было задано фактическое значение
  • Атрибут только для записи может ссылаться на обычные и эфемерные значения (обычные атрибуты не могут ссылаться на эфемерные значения)

Отображение​

Если атрибут присутствует в выводе CLI команд plan/apply, он всегда будет отображаться как (write-only attribute).

Обновление атрибута только для записи​

Поскольку OpenTofu не может узнать, какое значение сейчас задано в удаленном ресурсе (то есть в состоянии хранится значение null), а также не знает, какое значение было сохранено или запланировано к сохранению в удаленном ресурсе (то есть провайдер возвращает для этих атрибутов значение null), он не может сформировать изменение для таких атрибутов. Разработчикам провайдеров рекомендуется включать рядом с атрибутом только для записи также обычный атрибут, предназначенный для указания провайдеру, что значение, заданное в конфигурации атрибута только для записи, следует использовать для обновления ресурса.

Например, в ресурсе aws_secretsmanager_secret_version для этого предусмотрены 2 поля: secret_string_wo — атрибут только для записи, а secret_string_wo_version — обычный атрибут. Если изменить значение secret_string_wo_version по сравнению со значением, которое сейчас хранится в состоянии, провайдер инициирует обновление атрибута secret_string_wo значением, указанным в конфигурации.

Пример​

Подробный пример использования атрибутов только для записи см. в этом примере.

Copyright (c) The OpenTofu Authors
Copyright (c) 2014 HashiCorp, Inc.
Mozilla Public License, version 2.0
https://opentofu.org/docs/v1.11/language/ephemerality/write-only-attributes/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API