Команда: untaint
В OpenTofu есть маркер «tainted», который используется для отслеживания объектов, которые могут быть повреждены и поэтому должны быть заменены при следующем плане OpenTofu.
OpenTofu автоматически помечает объект как «tainted», если во время многоэтапного действия «create» возникает ошибка, поскольку OpenTofu не может быть уверен, что объект остался в полностью работоспособном состоянии.
Вы также можете вручную пометить объект как «tainted» с помощью устаревшей команды tofu taint, хотя мы больше не рекомендуем такой подход.
Если OpenTofu в данный момент считает конкретный объект помеченным как tainted, но вы определили, что он на самом деле работает правильно и его не нужно заменять, можно использовать tofu untaint, чтобы удалить маркер taint с этого объекта.
Эта команда не изменяет реальные удалённые объекты, но изменяет состояние, чтобы удалить статус tainted.
Если вы удалили маркер taint с объекта, но позже обнаружили, что он всё же был в нерабочем состоянии, можно создать и применить план для его замены, не помечая объект как tainted повторно, используя команду следующего вида:
tofu apply -replace="aws_instance.example[0]"
Использование
Использование: tofu untaint [options] address
Аргумент address — это адрес ресурса, идентифицирующий конкретный экземпляр ресурса, который в данный момент помечен как tainted.
Использование переменных в источниках модулей, конфигурации бэкенда или блоке шифрования требует присваивания значений переменным корневого модуля при запуске tofu untaint.
Эта команда также поддерживает следующие параметры:
-
-allow-missing— если указан, команда завершится успешно (код выхода 0), даже если ресурс отсутствует. Команда всё ещё может вернуть ошибку в других случаях, например, если возникла проблема при чтении или записи состояния. -
-lock=false— не блокировать состояние на время выполнения операции. Это опасно, если другие пользователи могут одновременно выполнять команды в той же рабочей области. -
-lock-timeout=DURATION— если блокировка не отключена с помощью-lock=false, указывает OpenTofu повторять попытки получения блокировки в течение заданного периода времени, прежде чем вернуть ошибку. Длительность задаётся числом, за которым следует буква единицы времени, например «3s» означает три секунды. -
-no-color— отключает последовательности форматирования терминала в выводе. Используйте этот параметр, если запускаете OpenTofu в контексте, где вывод отображается системой, которая не может интерпретировать форматирование терминала. -
-var 'NAME=VALUE'— задаёт значение для одной входной переменной, объявленной в корневом модуле конфигурации. Используйте этот параметр несколько раз, чтобы задать более одной переменной. Дополнительные сведения см. в разделе Входные переменные в командной строке. -
-var-file=FILENAME— задаёт значения для потенциально большого числа входных переменных, объявленных в корневом модуле конфигурации, используя определения из файла «tfvars». Используйте этот параметр несколько раз, чтобы включить значения из нескольких файлов.
Помимо параметров -var и -var-file, есть несколько других способов задать значения входных переменных в корневом модуле. Дополнительные сведения см. в разделе Присваивание значений переменным корневого модуля.
Для конфигураций, использующих только бэкенд cloud или бэкенд remote, tofu untaint также поддерживает параметр -ignore-remote-version.
Для конфигураций, использующих только бэкенд local, tofu untaint также поддерживает устаревшие параметры -state, -state-out и -backup.
Copyright (c) The OpenTofu Authors
Copyright (c) 2014 HashiCorp, Inc.
Mozilla Public License, version 2.0
https://opentofu.org/docs/v1.10/cli/commands/untaint/