すべて小文字のハイフンつなぎ
https://qiita.com/empty948/items/9564858aa4783ffa9cf7
https://thaim.hatenablog.jp/entry/2019/06/27/080000
上記を参考にやってみる
variable "availability_zone_names" { type = list(string) default = ["us-west-1a"] }
variable "ec2_config" { type = "map" #省略化 default = { ami = "ami-4af5022c" instance_type = "t2.micro" instance_key = "id_rsa" } }
localはモジュール内に閉じたものに使う。外部から設定は不可能
variablesはいろんな方法で上書き可能なので環境ごとに代わるものなどやモジュールまたぎに使う
「意図しない値の設定を防ぐためにもtfファイル上で変数を扱う際はまずLocal Valuesを利用し、外部から値の入力が必要な場合のみvariableを利用する」
variable "instance_type" { type = string # default = "t3.nano" }
#コマンドラインで上書き terraform plan --var "instance_type=hoge"
#tfvars (test.tfvars) instance_type="t3.large"
#ファイルで上書き terraform plan -var-file=test.tfvars