Инициализация рабочих каталогов
OpenTofu следует запускать из рабочего каталога, содержащего файлы конфигурации, написанные на языке OpenTofu. OpenTofu использует содержимое конфигурации из этого каталога, а также хранит в нём настройки, кэшированные плагины и модули, а иногда и данные состояния.
Перед выполнением любых операций в рабочем каталоге (например, развёртыванием инфраструктуры или изменением состояния) необходимо инициализировать его.
Содержимое рабочего каталога
Рабочий каталог OpenTofu обычно содержит:
- Конфигурацию OpenTofu, описывающую ресурсы, которыми должна управлять система. Эта конфигурация со временем может изменяться.
- Скрытый каталог
.terraform, который OpenTofu использует для управления кэшированными плагинами провайдеров и модулями, хранения сведений о том, какая рабочая область активна в данный момент, а также последней известной конфигурации бэкенда на случай, если при следующем запуске потребуется перенести состояние. Этот каталог автоматически управляется OpenTofu и создаётся при инициализации. - Данные состояния, если в конфигурации используется бэкенд
localпо умолчанию. OpenTofu управляет ими в файлеterraform.tfstate(если в каталоге используется только рабочая область по умолчанию) или в каталогеterraform.tfstate.d(если в каталоге используется несколько рабочих областей).
Инициализация
Выполните команду tofu init, чтобы инициализировать рабочий каталог, содержащий конфигурацию OpenTofu. После инициализации можно будет выполнять другие команды, например tofu plan и tofu apply.
Если попытаться выполнить команду, для работы которой требуется инициализация, не выполнив её предварительно, команда завершится с ошибкой и сообщит, что необходимо запустить init.
Инициализация выполняет несколько задач по подготовке каталога, включая доступ к состоянию в настроенном бэкенде, загрузку и установку плагинов провайдеров, а также загрузку модулей. В некоторых случаях (обычно при переходе с одного бэкенда на другой) система может запросить у пользователя инструкции или подтверждение.
Подробнее см. в описании команды tofu init.
Повторная инициализация
Некоторые изменения конфигурации OpenTofu требуют повторной инициализации, прежде чем можно будет продолжить обычные операции. К ним относятся изменения требований к провайдерам, источников модулей или ограничений версий, а также конфигураций бэкенда.
Чтобы повторно инициализировать каталог, снова выполните команду tofu init. На самом деле повторную инициализацию можно выполнить в любой момент: команда init идемпотентна и не окажет эффекта, если изменения не требуются.
Если требуется повторная инициализация, любые команды, для работы которых она необходима, завершатся с ошибкой и сообщат об этом.
Повторная инициализация только модулей
Команда tofu get загружает модули, указанные в конфигурации, но не выполняет другие необходимые задачи инициализации. Эта команда полезна лишь в узкоспециализированных сценариях, и большинство пользователей OpenTofu могут не использовать её, предпочтя команду tofu init.
Copyright (c) The OpenTofu Authors
Copyright (c) 2014 HashiCorp, Inc.
Mozilla Public License, version 2.0
https://opentofu.org/docs/v1.12/cli/init/