terraform consoleっていうREPLみたいなやつがあるの知らなかった
v0.8から導入された模様。俗に言うREPL。今のtfstateをもとにsyntaxを試すことができる。planやapplyなどを発行することはできないので安全。単にこういう時はterraformではどう書くんだろう??みたいなのを試したいときに便利。
例1: moduleのoutputを呼び出して要素を取得する
> "${module.base_network.private_subnet_001_ids}" [ subnet-xxxxxxxxx, subnet-yyyyyyyyy ] > "${module.base_network.private_subnet_001_ids[0]}" subnet-xxxxxxxxx > "${module.base_network.private_subnet_001_ids[1]}" subnet-yyyyyyyyy
例2: 組み込み関数が何を返すか調べる
> cidrsubnet("172.24.0.0/16", 10, 1) 172.24.0.64/26 > cidrsubnet("172.24.0.0/16", 10, 0) 172.24.0.0/26 > cidrsubnet("172.24.0.0/16", 26, 0) cidrsubnet: insufficient address space to extend prefix of 16 by 26 in: > cidrsubnet("172.24.0.0/16", 10, 4) 172.24.1.0/26 > cidrsubnet("172.24.0.0/16", 10, 5) 172.24.1.64/26 > cidrsubnet("172.24.0.0/16", 10, 6) 172.24.1.128/26 > cidrsubnet("172.24.0.0/16", 10, 8) 172.24.2.0/26