久しぶりにterraform使ってAWSコード化していましたが、
あれからもうv0.9.8(現)にもなっていました。。
↓前回のブログより
確かv0.8はインスタンスタイプを変更して$ terraform applyとかやると
勝手にinstance-idがすり替わって再作成されてデータ抹消。
アーーーーーーッ!!!!
と詰むレベル。
そんなわけて待望のv0.8.8から消えることはなくなりました。(神アプデ)
■provider/aws: Allow aws_instances to be resized rather than forcing a new instance (#11998)
https://github.com/hashicorp/terraform/pull/11998
新しいインスタンスを強制終了するのではなく、aws_instancesを変更できるように変更した。(訳)
Yeah!!!!!
マジなのか試してみた。
■variables.tf
1 2 3 4 5 6 7 8 9 |
$ cat variables.tf variable "ami" { default = "ami-xxxxxxx" } variable "instance_type" { default = "t2.micro" #default = "t2.small" } |
とりあえずインスタンスタイプを変数化しているので
t2.smallからt2.microに変更して適当にホームディレクトリにtestファイルをぶち込んでplanしてみる。
■terraform plan
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
$ terraform plan Refreshing Terraform state in-memory prior to plan... The refreshed state will be used to calculate this plan, but will not be persisted to local or remote state storage. ~省略~ ~ aws_instance.web01 instance_type: "t2.small" => "t2.micro" ~ aws_instance.web02 instance_type: "t2.small" => "t2.micro" ~ aws_instance.web03 instance_type: "t2.small" => "t2.micro" ~ aws_instance.web04 instance_type: "t2.small" => "t2.micro" ~ aws_instance.web05 instance_type: "t2.small" => "t2.micro" |
ほう。
■terraform apply
1 2 3 4 5 6 7 8 9 10 11 |
$ terraform apply ~省略~ instance_type: "t2.small" => "t2.micro" aws_instance.web01: Modifying... (ID: i-xxxxxxxxxxx) instance_type: "t2.small" => "t2.micro" aws_instance.web02: Modifying... (ID: i-xxxxxxxxxxx) instance_type: "t2.small" => "t2.micro" aws_instance.web03: Modifying... (ID: i-xxxxxxxxxxx) instance_type: "t2.small" => "t2.micro" aws_instance.web04: Modifying... (ID: i-xxxxxxxxxxx) instance_type: "t2.small" => "t2.micro" |
おおおインスタンスID変わってない!
しかもコンソールでもstopからのstartしてる!teminateはしてない!
ちゃんとファイル残ってた。
■まとめ
昔はterraformバグだらけだったけど
どんどん修正されてこれは便利!
今度からアプデ追っていこう….
0件のコメント