追記 :2019/11/07
ついにTerraform 0.12以降のHCL2に対応した模様です!
VSCodeのコンソールから
terraform: install/update language server
-> 現在最新の v0.0.9
を選択
terraform: Enable/Disable Language Server
を実行
でHCL2記法の.tfファイルでもエラーが出なくなりました。
参照issue: feat: Terraform 0.12 support (was hcl2 support) #157
はじめに
VSCodeでTerraformを書くときに
最初にやっておいたほうが良いであろう設定を書いてみます。
環境
- macOS Mojave 10.14.1
- VSCode 1.30.2
- Terraform v0.11.11
できること
全容はVSCodeのTerraform Extensionのページに書いてあるとおりです。
Extensionを素のままインストールするだけでも
シンタックスハイライトやオートコンプリートなどなど 一気に便利になりますが
他にも少し設定をいれることで
- linter(TFLintによる)
- ファイル保存時に自動でterraform fmtをかける
などが使えたりします。
設定
ツールインストール
$ code --install-extension mauve.terraform
-
TFLint
- Homebrewでインストール
- ソースからビルドする方法もあり
$ brew tap wata727/tflint
$ brew install tflint
設定
素のままでもシンタックスハイライトなどは使えますが、以下設定を入れると吉
オートfmt
↓ 例: 不要な改行やスペースをいれて、⌘Sで保存してみた図
ファイル保存時、自動で terraform fmt
で整形してくれるパラメータです。
チェックで有効化されます。
editor.formatOnSave
tflint
↓ 例: 3行目, 11文字目に余計な=
がついているときの警告
文法エラーなどを検出してくれるtflintのパスを指定します。
(もともとログインシェルの方でパス通ってればコマンド書くだけでいいぽいです)
おわりに
おすすめの設定があれば教えてください!