メインコンテンツにスキップ

コマンド: 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 [オプション] [ターゲット...]

デフォルトでは、fmtは現在のディレクトリで構成ファイルをスキャンします。 target引数にディレクトリを指定すると、fmtはそのディレクトリを代わりにスキャンします。ファイルを指定すると、fmtはそのファイルのみを処理します。単一のダッシュ(-)を指定すると、fmtは標準入力(STDIN)から読み取ります。

コマンドラインフラグはすべてオプションです。以下のフラグが利用可能です。

  • -list=false - フォーマットの不整合が含まれているファイルのリストを表示しません。
  • -write=false - 入力ファイルを上書きしません。(これは、-checkまたは入力がSTDINの場合に暗示されます。)
  • -diff - フォーマット変更の差分を表示します。
  • -check - 入力がフォーマットされているかどうかを確認します。すべての入力が正しくフォーマットされている場合、終了ステータスは0になります。そうでない場合、終了ステータスはゼロ以外になり、コマンドは正しくフォーマットされていないファイルのファイル名のリストを出力します。
  • -recursive - サブディレクトリのファイルも処理します。デフォルトでは、指定されたディレクトリ(または現在のディレクトリ)のみが処理されます。