Skip to content

Commit

Permalink
migrate boot disk initialize params (#592)
Browse files Browse the repository at this point in the history
  • Loading branch information
danawillow authored Oct 20, 2017
1 parent 2765290 commit 081e675
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 1 deletion.
13 changes: 12 additions & 1 deletion google/resource_compute_instance_migrate.go
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,18 @@ func migrateStateV3toV4(is *terraform.InstanceState, meta interface{}) (*terrafo
is.Attributes["boot_disk.0.disk_encryption_key_raw"] = is.Attributes["disk.0.disk_encryption_key_raw"]
is.Attributes["boot_disk.0.disk_encryption_key_sha256"] = is.Attributes["disk.0.disk_encryption_key_sha256"]

// Don't worry about initialize_params, since the disk has already been created.
if is.Attributes["disk.0.size"] != "" {
is.Attributes["boot_disk.0.initialize_params.#"] = "1"
is.Attributes["boot_disk.0.initialize_params.0.size"] = is.Attributes["disk.0.size"]
}
if is.Attributes["disk.0.type"] != "" {
is.Attributes["boot_disk.0.initialize_params.#"] = "1"
is.Attributes["boot_disk.0.initialize_params.0.type"] = is.Attributes["disk.0.type"]
}
if is.Attributes["disk.0.image"] != "" {
is.Attributes["boot_disk.0.initialize_params.#"] = "1"
is.Attributes["boot_disk.0.initialize_params.0.image"] = is.Attributes["disk.0.image"]
}
} else if is.Attributes[fmt.Sprintf("disk.%d.scratch", i)] == "true" {
// Note: the GCP API does not allow for scratch disks without auto_delete, so this situation
// should never occur.
Expand Down
6 changes: 6 additions & 0 deletions google/resource_compute_instance_migrate_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,9 @@ func TestAccComputeInstanceMigrateState_bootDisk(t *testing.T) {
"boot_disk.0.device_name": "persistent-disk-0",
"boot_disk.0.disk_encryption_key_raw": "encrypt-key",
"boot_disk.0.disk_encryption_key_sha256": "encrypt-key-sha",
"boot_disk.0.initialize_params.#": "1",
"boot_disk.0.initialize_params.0.size": "12",
"boot_disk.0.initialize_params.0.type": "pd-ssd",
"boot_disk.0.source": instanceName,
"zone": zone,
"create_timeout": "4",
Expand Down Expand Up @@ -218,6 +221,9 @@ func TestAccComputeInstanceMigrateState_v4FixBootDisk(t *testing.T) {
"boot_disk.0.device_name": "persistent-disk-0",
"boot_disk.0.disk_encryption_key_raw": "encrypt-key",
"boot_disk.0.disk_encryption_key_sha256": "encrypt-key-sha",
"boot_disk.0.initialize_params.#": "1",
"boot_disk.0.initialize_params.0.size": "12",
"boot_disk.0.initialize_params.0.type": "pd-ssd",
"boot_disk.0.source": instanceName,
"zone": zone,
}
Expand Down

0 comments on commit 081e675

Please sign in to comment.