Команда: fmt
Команда tofu fmt используется для перезаписи файлов конфигурации OpenTofu в каноническом формате и стиле. Эта команда применяет часть соглашений по стилю языка OpenTofu, а также вносит другие небольшие изменения для повышения удобочитаемости.
Другие команды OpenTofu, создающие конфигурацию OpenTofu, создают файлы конфигурации, соответствующие стилю, заданному командой tofu fmt, поэтому использование этого стиля в собственных файлах обеспечит единообразие.
Канонический формат может незначительно меняться между версиями OpenTofu, поэтому после обновления OpenTofu мы рекомендуем заблаговременно запускать tofu fmt для своих модулей наряду с любыми другими изменениями, которые вы вносите при переходе на новую версию.
Мы не считаем новые правила форматирования в tofu fmt нарушающим обратную совместимость изменением в новых версиях OpenTofu, но стремимся свести к минимуму изменения конфигураций, уже соответствующих примерам стиля в документации OpenTofu. Новые правила форматирования обычно призваны распространить на конфигурацию больше правил, уже применяемых в примерах документации, поэтому мы рекомендуем следовать описанному в документации стилю, даже если tofu fmt пока не применяет его автоматически.
Решения по форматированию всегда субъективны, поэтому вы можете не согласиться с решениями, которые принимает tofu fmt. Эта команда намеренно придерживается определённого мнения и не имеет параметров настройки, поскольку её основная цель — способствовать единообразию стиля в разных кодовых базах OpenTofu, хотя выбранный стиль не может нравиться всем.
Мы рекомендуем при написании модулей OpenTofu придерживаться соглашений по стилю, применяемых командой tofu fmt, однако, если результаты покажутся вам особенно неудовлетворительными, вы можете не использовать эту команду и вместо неё выбрать сторонний инструмент форматирования. Если вы решите использовать сторонний инструмент, применяйте его также к файлам, автоматически создаваемым OpenTofu, чтобы написанные вручную файлы соответствовали сгенерированным.
Использование
Использование: tofu fmt [options] [target...]
По умолчанию fmt сканирует текущий каталог в поисках файлов конфигурации. Если в качестве аргумента target указать каталог, fmt просканирует этот каталог. Если указать файл, fmt обработает только этот файл. Если указать одиночный дефис (-), fmt прочитает данные из стандартного ввода (STDIN).
Все флаги командной строки необязательны. Доступны следующие флаги:
-
-list=false— Не выводить список файлов с несоответствиями форматирования. -
-write=false— Не перезаписывать входные файлы. (Это подразумевается при использовании-checkили если входные данные поступают из STDIN.) -
-diff— Отображать различия в форматировании.- При использовании этого флага убедитесь, что инструмент
diffустановлен. Он используется внутри команды для повышения удобства работы.
- При использовании этого флага убедитесь, что инструмент
-
-check— Проверить, отформатированы ли входные данные. Код завершения будет равен 0, если все входные данные отформатированы правильно. В противном случае код завершения будет ненулевым, а команда выведет список имён файлов, отформатированных неправильно. -
-recursive— Также обрабатывать файлы во вложенных каталогах. По умолчанию обрабатывается только указанный каталог (или текущий каталог).
Copyright (c) The OpenTofu Authors
Copyright (c) 2014 HashiCorp, Inc.
Mozilla Public License, version 2.0
https://opentofu.org/docs/v1.10/cli/commands/fmt/