Spec-Zone.ru › OpenTofu 1.10

Команда: state push

Команда tofu state push используется для ручной загрузки локального файла состояния в удалённое состояние. Эта команда также работает с локальным состоянием.

Эту команду следует использовать редко. Она предназначена только для случаев, когда необходимо вручную вмешаться в работу с удалённым состоянием.

Использование​

Использование: tofu state push [options] PATH

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

Если PATH равен "-", данные состояния для отправки считываются из stdin. Эти данные полностью загружаются в память и проверяются перед записью в целевое состояние.

Примечание

Файлы состояния OpenTofu должны иметь формат UTF-8 без метки порядка байтов (BOM). В PowerShell в Windows используйте Set-Content для автоматического кодирования файлов в формате UTF-8. Например, выполните tofu state push | sc terraform.tfstate.

OpenTofu выполнит ряд проверок безопасности, чтобы предотвратить изменения, которые могут показаться небезопасными:

  • Различающаяся lineage: Если значение "lineage" в состоянии отличается, OpenTofu не позволит отправить это состояние. Различающаяся lineage указывает на то, что состояния совершенно разные, и вы можете потерять данные.

  • Более высокий serial удалённого состояния: Если значение "serial" в целевом состоянии выше, чем в отправляемом состоянии, OpenTofu предотвратит отправку. Более высокий serial указывает на то, что в целевом состоянии есть данные, не учтённые в отправляемом локальном состоянии.

Обе эти проверки безопасности можно отключить с помощью флага -force. Это не рекомендуется. Если отключить проверки безопасности и отправить состояние, целевое состояние будет перезаписано.

Для конфигураций, использующих только бэкенд cloud или бэкенд remote, команда tofu state push также принимает параметр -ignore-remote-version.

Примечание

Использование переменных в источниках модулей, конфигурации бэкенда или блоке шифрования требует присваивания значений переменным корневого модуля при выполнении команды tofu state push.

Эта команда также принимает следующие параметры для tofu state push:

  • -lock=false — не блокировать состояние на время операции. Это опасно, если другие пользователи могут одновременно выполнять команды в той же рабочей области.

  • -lock-timeout=DURATION — если блокировка не отключена с помощью -lock=false, указывает OpenTofu повторять попытки получения блокировки в течение заданного времени, прежде чем вернуть ошибку. Длительность задаётся числом и буквой единицы времени, например "3s" — три секунды.

  • ignore-remote-version.

  • -var 'NAME=VALUE' — задаёт значение для одной входной переменной, объявленной в корневом модуле конфигурации. Используйте этот параметр несколько раз, чтобы задать значения для нескольких переменных. Дополнительные сведения см. в разделе Входные переменные в командной строке.

  • -var-file=FILENAME — задаёт значения для нескольких входных переменных, объявленных в корневом модуле конфигурации, используя определения из файла "tfvars". Используйте этот параметр несколько раз, чтобы включить значения из нескольких файлов.

Помимо параметров -var и -var-file, существует несколько других способов задать значения входных переменных корневого модуля. Дополнительные сведения см. в разделе Присваивание значений переменным корневого модуля.

Copyright (c) The OpenTofu Authors
Copyright (c) 2014 HashiCorp, Inc.
Mozilla Public License, version 2.0
https://opentofu.org/docs/v1.10/cli/commands/state/push/

Spec-Zone.ru

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