LoginSignup
114
69

More than 3 years have passed since last update.

VSCodeでTerraformを書くときの設定(2019/11/07追記: HCL2対応)

Last updated at Posted at 2019-02-06

追記 :2019/11/07

ついにTerraform 0.12以降のHCL2に対応した模様です!

VSCodeのコンソールから
terraform: install/update language server -> 現在最新の v0.0.9 を選択
terraform: Enable/Disable Language Server を実行
でHCL2記法の.tfファイルでもエラーが出なくなりました。
スクリーンショット 2019-11-07 22.55.11.png

参照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をかける

などが使えたりします。

設定

ツールインストール

  • Terraform (VSCode Extension)
    • codeコマンドが使えないときはGUIで入れるかこちらの記事を参照してパスを通す
 $ code --install-extension mauve.terraform
  • TFLint
    • Homebrewでインストール
    • ソースからビルドする方法もあり
$ brew tap wata727/tflint
$ brew install tflint

設定

素のままでもシンタックスハイライトなどは使えますが、以下設定を入れると吉

オートfmt

↓ 例: 不要な改行やスペースをいれて、⌘Sで保存してみた図
Feb-06-2019 21-15-49.gif

ファイル保存時、自動で terraform fmt で整形してくれるパラメータです。
チェックで有効化されます。

  • editor.formatOnSave

スクリーンショット 2019-02-06 20.48.11.png

tflint

↓ 例: 3行目, 11文字目に余計な=がついているときの警告
スクリーンショット 2019-02-06 21.02.13.png

文法エラーなどを検出してくれるtflintのパスを指定します。
(もともとログインシェルの方でパス通ってればコマンド書くだけでいいぽいです)

  • terraform.lintPath スクリーンショット 2019-02-06 20.53.33.png

おわりに

おすすめの設定があれば教えてください!

114
69
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
114
69