Edited at

terraform-landscapeでterraform planのdiffをクッソ見やすく整形する

More than 1 year has passed since last update.

terraform planのdiff見づらいですよね。

JSONが1行の文字列として扱われてどこがdiffだか分からんかったり。

そこで、landscapeですよ。

https://github.com/coinbase/terraform-landscape

Before

After

クッソ見やすい。


インストール

Rubyのgemとして配布されています。

$ gem install terraform_landscape

Macの場合はbrewでインストールできます。私はbrewで入れました。

$ brew install terraform_landscape


使い方

terraform planの出力をパイプで食わせるだけです。使いたいときだけ使えるのが精神衛生上よいです。

$ terraform plan | landscape

ただterraform planの時間が長かったりすると、planが完了するまで出力を食われてしばらくレスポンスがなくて不安になるので、

個人的には生のplanの出力もteeで画面に出すようにしておくのがよいんじゃないかと思います。

$ terraform plan | tee -a /dev/stderr | landscape


おまけ

ちなみに これを書いてる時点(2018/08/03)の最新のTerraformはv0.11系で、本体のリポジトリにもterraform plan見づらいからなんとかしたいってissueはいくつか立ってて、次のv0.12に入るかも?って話があったんだけど、

https://github.com/hashicorp/terraform/issues/15180

issueの流れを見てるとv0.12に入らなさそうな空気感が出てきたので、本体のplanがマシになるしばらくのあいだはlandscape使っておくとよいんじゃないかな。