From 213881741974cdc4b15c6c6696b657b9000b0142 Mon Sep 17 00:00:00 2001 From: Roberto Jung Drebes Date: Wed, 13 Mar 2019 23:58:36 +0100 Subject: [PATCH] Terraform: Support for (Regional)Disk physicalBlockSizeBytes (#1513) Merged PR #1513. --- build/ansible | 2 +- build/inspec | 2 +- build/terraform | 2 +- build/terraform-beta | 2 +- build/terraform-mapper | 2 +- products/compute/ansible_version_added.yaml | 4 ++++ products/compute/disks.yaml | 8 ++++++++ products/compute/terraform.yaml | 4 ++++ templates/terraform/examples/disk_basic.tf.erb | 1 + templates/terraform/examples/region_disk_basic.tf.erb | 1 + 10 files changed, 23 insertions(+), 5 deletions(-) diff --git a/build/ansible b/build/ansible index 295a10a11105..382b07a7942c 160000 --- a/build/ansible +++ b/build/ansible @@ -1 +1 @@ -Subproject commit 295a10a11105231f2b932eff3961f2ece2408ad7 +Subproject commit 382b07a7942c1e96f41d89e42a28ddc046b8050b diff --git a/build/inspec b/build/inspec index 8b24d8b0c016..f882debe979c 160000 --- a/build/inspec +++ b/build/inspec @@ -1 +1 @@ -Subproject commit 8b24d8b0c016a110aa98350c362cd7d43cc08397 +Subproject commit f882debe979c7f93a70c1597d10470d73791cb2f diff --git a/build/terraform b/build/terraform index 6aabf318478a..a99e032a361d 160000 --- a/build/terraform +++ b/build/terraform @@ -1 +1 @@ -Subproject commit 6aabf318478afd5978e3be6de7f0494aab0533e4 +Subproject commit a99e032a361d8bdb11fcbee8ab9d450762a69784 diff --git a/build/terraform-beta b/build/terraform-beta index 831a16f184c0..3770b4028dad 160000 --- a/build/terraform-beta +++ b/build/terraform-beta @@ -1 +1 @@ -Subproject commit 831a16f184c0a18a4e1b4b1f9d948a5c59c88472 +Subproject commit 3770b4028dadf07418c8ff7cbaca74cd3b4750c7 diff --git a/build/terraform-mapper b/build/terraform-mapper index f51473dd08fa..2c7fab7c0051 160000 --- a/build/terraform-mapper +++ b/build/terraform-mapper @@ -1 +1 @@ -Subproject commit f51473dd08fa13a1096804e8d8afbd28cc6f552e +Subproject commit 2c7fab7c00519adcc0f3d64a96d257b9c5ae6a1b diff --git a/products/compute/ansible_version_added.yaml b/products/compute/ansible_version_added.yaml index 7e89f4e38e8d..12ff914fbf0c 100644 --- a/products/compute/ansible_version_added.yaml +++ b/products/compute/ansible_version_added.yaml @@ -201,6 +201,8 @@ :version_added: '2.6' :kmsKeyName: :version_added: '2.6' + :physicalBlockSizeBytes: + :version_added: '2.8' :Firewall: :version_added: '2.6' :allowed: @@ -793,6 +795,8 @@ :version_added: '2.8' :kmsKeyName: :version_added: '2.8' + :physicalBlockSizeBytes: + :version_added: '2.8' :Route: :version_added: '2.6' :destRange: diff --git a/products/compute/disks.yaml b/products/compute/disks.yaml index 4147395526ba..4084eeea0cdf 100644 --- a/products/compute/disks.yaml +++ b/products/compute/disks.yaml @@ -84,3 +84,11 @@ imports: 'selfLink' description: 'A reference to a user of this disk' output: true +- !ruby/object:Api::Type::Integer + name: 'physicalBlockSizeBytes' + description: | + Physical block size of the persistent disk, in bytes. If not present + in a request, a default value is used. Currently supported sizes + are 4096 and 16384, other sizes may be added in the future. + If an unsupported value is requested, the error message will list + the supported values for the caller's project. diff --git a/products/compute/terraform.yaml b/products/compute/terraform.yaml index bb70cdf3dec1..759d37e5d8ec 100644 --- a/products/compute/terraform.yaml +++ b/products/compute/terraform.yaml @@ -201,6 +201,8 @@ overrides: !ruby/object:Overrides::ResourceOverrides in the cloud console. In order to use this additional IAM permissions need to be set on the Compute Engine Service Agent. See https://cloud.google.com/compute/docs/disks/customer-managed-encryption#encrypt_a_new_persistent_disk_with_your_own_keys + physicalBlockSizeBytes: !ruby/object:Overrides::Terraform::PropertyOverride + default_from_api: true custom_code: !ruby/object:Provider::Terraform::CustomCode pre_delete: templates/terraform/pre_delete/detach_disk.erb constants: templates/terraform/constants/disk.erb @@ -629,6 +631,8 @@ overrides: !ruby/object:Overrides::ResourceOverrides required: false default_from_api: true custom_flatten: 'templates/terraform/custom_flatten/name_from_self_link.erb' + physicalBlockSizeBytes: !ruby/object:Overrides::Terraform::PropertyOverride + default_from_api: true custom_code: !ruby/object:Provider::Terraform::CustomCode pre_delete: templates/terraform/pre_delete/detach_disk.erb encoder: templates/terraform/encoders/disk.erb diff --git a/templates/terraform/examples/disk_basic.tf.erb b/templates/terraform/examples/disk_basic.tf.erb index eefe43676579..7e3028d9b806 100644 --- a/templates/terraform/examples/disk_basic.tf.erb +++ b/templates/terraform/examples/disk_basic.tf.erb @@ -6,4 +6,5 @@ resource "google_compute_disk" "default" { labels = { environment = "dev" } + physical_block_size_bytes = 4096 } diff --git a/templates/terraform/examples/region_disk_basic.tf.erb b/templates/terraform/examples/region_disk_basic.tf.erb index d43b293ae1ec..dc00113d21f2 100644 --- a/templates/terraform/examples/region_disk_basic.tf.erb +++ b/templates/terraform/examples/region_disk_basic.tf.erb @@ -3,6 +3,7 @@ resource "google_compute_region_disk" "regiondisk" { snapshot = "${google_compute_snapshot.snapdisk.self_link}" type = "pd-ssd" region = "us-central1" + physical_block_size_bytes = 4096 replica_zones = ["us-central1-a", "us-central1-f"] }