Terraformのコードの品質担保するためにできること
awsでTerraformを書いているときに、品質を担保するにはどうしたら良いのか検討してみた。
Terraformのコードをフォーマットする。
terraform fmt
Terraformのfmtコマンドで、コードをフォーマットすることにより、Terraformのコードが綺麗になる。
インデントとか、適当に書いてしまった場合でも、しっかりと整形してくれるので私のようなエンジニアには助かる。
terraform validateコマンドを実行する。
terraform validate
このコマンドでは構文が正しいことを確認してくれる。参照関係で不十分な箇所を解析してくれる。
tflint
tflintは、静的解析ツールである。パラメータの値とかを実際のパラメータの取りうる値で書いているのか、などの解析をして、問題があればエラーを返してくれる。
tflintのコマンドをインストールする必要があるが、とても良いツールだと思う。インストールについては、いろいろな人がやっていると思うので、割愛。
terraform test
最近のterraformのアップデートで追加されたコマンド、実際にplanしたりapplyしてコマンドがきちんと動くのか確認してくれるので、とても助かる。
テストコードを書かないといけないので、作業は増えるが、実際にapplyしてインスタンスやネットワークでエラーがないか、確認してくれるので、良い。
terraform plan
terraform planは terraform apply する前に、どのようにインスタンスが構成されるかを確認することができるコマンドである。terraform testが通っていれば、問題ない気がする。
他にテストコマンドがあれば・・・・
他に、品質を担保するコマンドなどがあれば教えていただけないでしょうか。