.tfstate
のファイルをGitにコミットするかどうかという疑問に少し困惑しています。 Terraform documentationの状態:.tfstateファイルをGitにコミットする必要がありますか?
テラフォームはデフォルトで
今terraform.tfstate
ファイルに状態を入れます。この状態ファイルは非常に重要です。 Terraformが管理しているものを知るために、さまざまなリソースメタデータを実際のリソースIDにマップします。このファイルは、Terraformを実行する可能性のある人に保存して配布する必要があります。一般的には大きすぎないので、単にバージョンコントロールに入れることをお勧めします。
、Best practices when using Terraform状態の一方で、受け入れられ、upvoted答え:
テラフォームの設定が異なる状態を持つことができ、それぞれが異なるインフラの提供、多くのボックスに使用することができます。複数の人が同時に実行できるので、この状態はS3のような中央の場所にあるはずですが、ではなく gitです。
権利である(元の著者によってではなく、私が強調)
、もしそうなら、なぜですか?
これを見るもう一つの理由があります:バージョンコントロールを使ったソフトウェア開発としてTF + Gitを考えてみましょう。 その場合、ビルド成果物(状態ファイルなど)をVCリポジトリに保存するのではなく、中央のアーティファクトリポジトリ(S3バケットなど)に保存します。 – KJH
ロックを提供するためにTerragruntは必要ありません。これはTerraformに組み込まれています:https://www.terraform.io/docs/state/locking.html –