命名規約を決める

バックエンドのファイル名も環境名入れとかないと交じるかも!

list

variable "availability_zone_names" {
  type    = list(string)
  default = ["us-west-1a"]
}

map

variable "ec2_config" {
  type = "map" #省略化
  default = {
    ami = "ami-4af5022c" 
    instance_type = "t2.micro" 
    instance_key = "id_rsa" 
  }
}

localとvariables

localはモジュール内に閉じたものに使う。外部から設定は不可能

variablesはいろんな方法で上書き可能なので環境ごとに代わるものなどやモジュールまたぎに使う

「意図しない値の設定を防ぐためにもtfファイル上で変数を扱う際はまずLocal Valuesを利用し、外部から値の入力が必要な場合のみvariableを利用する」

varの上書き

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

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS