terraformの昔書いた.tfファイルを直す
バージョン0.12からシンタックスに変更が入ったため*1、昔書いた .tf を terraform plan するとSyntax Error出まくりで鬱になる。
実際に引っかかったエラーを記載しておく。
- 関数の結果を取得するとき "${ }" で囲まない
<= 0.11 | >= 0.12 |
"${cidrhost(var.private_subnet1_cidr, var.ad_params.private_ip_hostnum)}" | cidrhost(var.private_subnet1_cidr, var.ad_params.private_ip_hostnum) |
"${format("%s%s", "vpc_", var.vpc_name)}" | format("%s%s", "vpc_", var.vpc_name) |
- aws_iam_* リソースの引数で roles が使えなくなっている
- https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_instance_profile
- 複数のIAM Roleをアタッチしたい場合の書き方は未確認。
<= 0.11 | >= 0.12 |
roles = [ aws_iam_role.iam_role1.name ] | role = aws_iam_role.iam_role1.name |