pulumi-gcp 8.21.0a1741156431__py3-none-any.whl → 8.22.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_gcp/__init__.py +96 -0
- pulumi_gcp/alloydb/_inputs.py +66 -0
- pulumi_gcp/alloydb/cluster.py +148 -0
- pulumi_gcp/alloydb/instance.py +28 -28
- pulumi_gcp/alloydb/outputs.py +95 -0
- pulumi_gcp/apihub/__init__.py +1 -0
- pulumi_gcp/apihub/host_project_registration.py +535 -0
- pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
- pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
- pulumi_gcp/bigquery/table.py +1 -1
- pulumi_gcp/certificatemanager/certificate.py +53 -7
- pulumi_gcp/certificatemanager/outputs.py +8 -2
- pulumi_gcp/compute/__init__.py +6 -0
- pulumi_gcp/compute/_inputs.py +1370 -17
- pulumi_gcp/compute/backend_service.py +209 -14
- pulumi_gcp/compute/ca_external_account_key.py +48 -3
- pulumi_gcp/compute/disk.py +403 -0
- pulumi_gcp/compute/firewall_policy_association.py +28 -2
- pulumi_gcp/compute/get_backend_service.py +12 -1
- pulumi_gcp/compute/get_disk.py +78 -1
- pulumi_gcp/compute/get_instant_snapshot_iam_policy.py +182 -0
- pulumi_gcp/compute/get_region_disk.py +23 -1
- pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
- pulumi_gcp/compute/instant_snapshot.py +796 -0
- pulumi_gcp/compute/instant_snapshot_iam_binding.py +1087 -0
- pulumi_gcp/compute/instant_snapshot_iam_member.py +1087 -0
- pulumi_gcp/compute/instant_snapshot_iam_policy.py +906 -0
- pulumi_gcp/compute/outputs.py +1952 -29
- pulumi_gcp/compute/region_backend_service.py +207 -14
- pulumi_gcp/compute/region_disk.py +114 -0
- pulumi_gcp/compute/route.py +228 -2
- pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
- pulumi_gcp/compute/subnetwork.py +147 -0
- pulumi_gcp/compute/url_map.py +8 -0
- pulumi_gcp/container/_inputs.py +6 -6
- pulumi_gcp/container/outputs.py +8 -8
- pulumi_gcp/datacatalog/entry.py +4 -0
- pulumi_gcp/datacatalog/tag.py +4 -0
- pulumi_gcp/dataproc/_inputs.py +12 -15
- pulumi_gcp/dataproc/outputs.py +8 -10
- pulumi_gcp/datastream/_inputs.py +273 -0
- pulumi_gcp/datastream/connection_profile.py +54 -2
- pulumi_gcp/datastream/outputs.py +224 -0
- pulumi_gcp/discoveryengine/target_site.py +4 -4
- pulumi_gcp/eventarc/__init__.py +2 -0
- pulumi_gcp/eventarc/_inputs.py +80 -0
- pulumi_gcp/eventarc/channel.py +85 -93
- pulumi_gcp/eventarc/google_api_source.py +997 -0
- pulumi_gcp/eventarc/message_bus.py +927 -0
- pulumi_gcp/eventarc/outputs.py +82 -0
- pulumi_gcp/firebase/data_connect_service.py +40 -2
- pulumi_gcp/gemini/__init__.py +1 -0
- pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +20 -8
- pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +6 -0
- pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +734 -0
- pulumi_gcp/gemini/logging_setting_binding.py +7 -7
- pulumi_gcp/iam/__init__.py +2 -0
- pulumi_gcp/iam/_inputs.py +84 -27
- pulumi_gcp/iam/folders_policy_binding.py +10 -26
- pulumi_gcp/iam/oauth_client.py +979 -0
- pulumi_gcp/iam/oauth_client_credential.py +641 -0
- pulumi_gcp/iam/organizations_policy_binding.py +8 -24
- pulumi_gcp/iam/outputs.py +56 -18
- pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
- pulumi_gcp/iam/projects_policy_binding.py +8 -24
- pulumi_gcp/iam/workforce_pool_provider.py +2 -2
- pulumi_gcp/kms/crypto_key_version.py +14 -7
- pulumi_gcp/memorystore/__init__.py +1 -0
- pulumi_gcp/memorystore/get_instance.py +425 -0
- pulumi_gcp/memorystore/outputs.py +582 -0
- pulumi_gcp/monitoring/_inputs.py +15 -18
- pulumi_gcp/monitoring/alert_policy.py +46 -0
- pulumi_gcp/monitoring/outputs.py +10 -12
- pulumi_gcp/networkconnectivity/hub.py +84 -0
- pulumi_gcp/networksecurity/__init__.py +1 -0
- pulumi_gcp/networksecurity/_inputs.py +30 -18
- pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
- pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
- pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
- pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
- pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
- pulumi_gcp/networksecurity/mirroring_deployment.py +178 -94
- pulumi_gcp/networksecurity/mirroring_deployment_group.py +161 -77
- pulumi_gcp/networksecurity/mirroring_endpoint_group.py +161 -80
- pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +137 -105
- pulumi_gcp/networksecurity/outputs.py +20 -12
- pulumi_gcp/networkservices/endpoint_policy.py +12 -0
- pulumi_gcp/networkservices/grpc_route.py +128 -12
- pulumi_gcp/networkservices/http_route.py +16 -0
- pulumi_gcp/networkservices/mesh.py +16 -0
- pulumi_gcp/networkservices/service_binding.py +14 -0
- pulumi_gcp/networkservices/tcp_route.py +16 -0
- pulumi_gcp/networkservices/tls_route.py +12 -0
- pulumi_gcp/notebooks/location.py +4 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/storage/__init__.py +1 -0
- pulumi_gcp/storage/_inputs.py +74 -0
- pulumi_gcp/storage/anywhere_cache.py +552 -0
- pulumi_gcp/storage/outputs.py +65 -0
- pulumi_gcp/storage/transfer_job.py +67 -0
- pulumi_gcp/tpu/_inputs.py +21 -1
- pulumi_gcp/tpu/outputs.py +13 -1
- pulumi_gcp/tpu/v2_vm.py +2 -0
- pulumi_gcp/vmwareengine/_inputs.py +6 -0
- pulumi_gcp/vmwareengine/outputs.py +8 -0
- pulumi_gcp/workstations/workstation_cluster.py +137 -1
- {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/RECORD +110 -95
- {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/WHEEL +1 -1
- {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/compute/disk.py
CHANGED
@@ -22,7 +22,10 @@ __all__ = ['DiskArgs', 'Disk']
|
|
22
22
|
class DiskArgs:
|
23
23
|
def __init__(__self__, *,
|
24
24
|
access_mode: Optional[pulumi.Input[str]] = None,
|
25
|
+
architecture: Optional[pulumi.Input[str]] = None,
|
25
26
|
async_primary_disk: Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']] = None,
|
27
|
+
create_snapshot_before_destroy: Optional[pulumi.Input[bool]] = None,
|
28
|
+
create_snapshot_before_destroy_prefix: Optional[pulumi.Input[str]] = None,
|
26
29
|
description: Optional[pulumi.Input[str]] = None,
|
27
30
|
disk_encryption_key: Optional[pulumi.Input['DiskDiskEncryptionKeyArgs']] = None,
|
28
31
|
enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
|
@@ -33,6 +36,7 @@ class DiskArgs:
|
|
33
36
|
licenses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
34
37
|
multi_writer: Optional[pulumi.Input[bool]] = None,
|
35
38
|
name: Optional[pulumi.Input[str]] = None,
|
39
|
+
params: Optional[pulumi.Input['DiskParamsArgs']] = None,
|
36
40
|
physical_block_size_bytes: Optional[pulumi.Input[int]] = None,
|
37
41
|
project: Optional[pulumi.Input[str]] = None,
|
38
42
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
@@ -42,7 +46,9 @@ class DiskArgs:
|
|
42
46
|
snapshot: Optional[pulumi.Input[str]] = None,
|
43
47
|
source_disk: Optional[pulumi.Input[str]] = None,
|
44
48
|
source_image_encryption_key: Optional[pulumi.Input['DiskSourceImageEncryptionKeyArgs']] = None,
|
49
|
+
source_instant_snapshot: Optional[pulumi.Input[str]] = None,
|
45
50
|
source_snapshot_encryption_key: Optional[pulumi.Input['DiskSourceSnapshotEncryptionKeyArgs']] = None,
|
51
|
+
source_storage_object: Optional[pulumi.Input[str]] = None,
|
46
52
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
47
53
|
type: Optional[pulumi.Input[str]] = None,
|
48
54
|
zone: Optional[pulumi.Input[str]] = None):
|
@@ -53,8 +59,13 @@ class DiskArgs:
|
|
53
59
|
* READ_WRITE_SINGLE
|
54
60
|
* READ_WRITE_MANY
|
55
61
|
* READ_ONLY_SINGLE
|
62
|
+
:param pulumi.Input[str] architecture: (Optional)
|
56
63
|
:param pulumi.Input['DiskAsyncPrimaryDiskArgs'] async_primary_disk: A nested object resource.
|
57
64
|
Structure is documented below.
|
65
|
+
:param pulumi.Input[bool] create_snapshot_before_destroy: If set to true, a snapshot of the disk will be created before it is destroyed.
|
66
|
+
If your disk is encrypted with customer managed encryption keys these will be reused for the snapshot creation.
|
67
|
+
The name of the snapshot by default will be `{{disk-name}}-YYYYMMDD-HHmm`
|
68
|
+
:param pulumi.Input[str] create_snapshot_before_destroy_prefix: This will set a custom name prefix for the snapshot that's created when the disk is deleted.
|
58
69
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when
|
59
70
|
you create the resource.
|
60
71
|
:param pulumi.Input['DiskDiskEncryptionKeyArgs'] disk_encryption_key: Encrypts the disk using a customer-supplied encryption key.
|
@@ -100,6 +111,8 @@ class DiskArgs:
|
|
100
111
|
|
101
112
|
|
102
113
|
- - -
|
114
|
+
:param pulumi.Input['DiskParamsArgs'] params: Additional params passed with the request, but not persisted as part of resource payload
|
115
|
+
Structure is documented below.
|
103
116
|
:param pulumi.Input[int] physical_block_size_bytes: Physical block size of the persistent disk, in bytes. If not present
|
104
117
|
in a request, a default value is used. Currently supported sizes
|
105
118
|
are 4096 and 16384, other sizes may be added in the future.
|
@@ -148,10 +161,20 @@ class DiskArgs:
|
|
148
161
|
:param pulumi.Input['DiskSourceImageEncryptionKeyArgs'] source_image_encryption_key: The customer-supplied encryption key of the source image. Required if
|
149
162
|
the source image is protected by a customer-supplied encryption key.
|
150
163
|
Structure is documented below.
|
164
|
+
:param pulumi.Input[str] source_instant_snapshot: The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource.
|
165
|
+
For example, the following are valid values:
|
166
|
+
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
167
|
+
* `projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
168
|
+
* `zones/zone/instantSnapshots/instantSnapshot`
|
151
169
|
:param pulumi.Input['DiskSourceSnapshotEncryptionKeyArgs'] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required
|
152
170
|
if the source snapshot is protected by a customer-supplied encryption
|
153
171
|
key.
|
154
172
|
Structure is documented below.
|
173
|
+
:param pulumi.Input[str] source_storage_object: The full Google Cloud Storage URI where the disk image is stored.
|
174
|
+
This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk.
|
175
|
+
Valid URIs may start with gs:// or https://storage.googleapis.com/.
|
176
|
+
This flag is not optimized for creating multiple disks from a source storage object.
|
177
|
+
To create many disks from a source storage object, use gcloud compute images import instead.
|
155
178
|
:param pulumi.Input[str] storage_pool: The URL or the name of the storage pool in which the new disk is created.
|
156
179
|
For example:
|
157
180
|
* https://www.googleapis.com/compute/v1/projects/{project}/zones/{zone}/storagePools/{storagePool}
|
@@ -164,8 +187,14 @@ class DiskArgs:
|
|
164
187
|
"""
|
165
188
|
if access_mode is not None:
|
166
189
|
pulumi.set(__self__, "access_mode", access_mode)
|
190
|
+
if architecture is not None:
|
191
|
+
pulumi.set(__self__, "architecture", architecture)
|
167
192
|
if async_primary_disk is not None:
|
168
193
|
pulumi.set(__self__, "async_primary_disk", async_primary_disk)
|
194
|
+
if create_snapshot_before_destroy is not None:
|
195
|
+
pulumi.set(__self__, "create_snapshot_before_destroy", create_snapshot_before_destroy)
|
196
|
+
if create_snapshot_before_destroy_prefix is not None:
|
197
|
+
pulumi.set(__self__, "create_snapshot_before_destroy_prefix", create_snapshot_before_destroy_prefix)
|
169
198
|
if description is not None:
|
170
199
|
pulumi.set(__self__, "description", description)
|
171
200
|
if disk_encryption_key is not None:
|
@@ -189,6 +218,8 @@ class DiskArgs:
|
|
189
218
|
pulumi.set(__self__, "multi_writer", multi_writer)
|
190
219
|
if name is not None:
|
191
220
|
pulumi.set(__self__, "name", name)
|
221
|
+
if params is not None:
|
222
|
+
pulumi.set(__self__, "params", params)
|
192
223
|
if physical_block_size_bytes is not None:
|
193
224
|
pulumi.set(__self__, "physical_block_size_bytes", physical_block_size_bytes)
|
194
225
|
if project is not None:
|
@@ -207,8 +238,12 @@ class DiskArgs:
|
|
207
238
|
pulumi.set(__self__, "source_disk", source_disk)
|
208
239
|
if source_image_encryption_key is not None:
|
209
240
|
pulumi.set(__self__, "source_image_encryption_key", source_image_encryption_key)
|
241
|
+
if source_instant_snapshot is not None:
|
242
|
+
pulumi.set(__self__, "source_instant_snapshot", source_instant_snapshot)
|
210
243
|
if source_snapshot_encryption_key is not None:
|
211
244
|
pulumi.set(__self__, "source_snapshot_encryption_key", source_snapshot_encryption_key)
|
245
|
+
if source_storage_object is not None:
|
246
|
+
pulumi.set(__self__, "source_storage_object", source_storage_object)
|
212
247
|
if storage_pool is not None:
|
213
248
|
pulumi.set(__self__, "storage_pool", storage_pool)
|
214
249
|
if type is not None:
|
@@ -232,6 +267,18 @@ class DiskArgs:
|
|
232
267
|
def access_mode(self, value: Optional[pulumi.Input[str]]):
|
233
268
|
pulumi.set(self, "access_mode", value)
|
234
269
|
|
270
|
+
@property
|
271
|
+
@pulumi.getter
|
272
|
+
def architecture(self) -> Optional[pulumi.Input[str]]:
|
273
|
+
"""
|
274
|
+
(Optional)
|
275
|
+
"""
|
276
|
+
return pulumi.get(self, "architecture")
|
277
|
+
|
278
|
+
@architecture.setter
|
279
|
+
def architecture(self, value: Optional[pulumi.Input[str]]):
|
280
|
+
pulumi.set(self, "architecture", value)
|
281
|
+
|
235
282
|
@property
|
236
283
|
@pulumi.getter(name="asyncPrimaryDisk")
|
237
284
|
def async_primary_disk(self) -> Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']]:
|
@@ -245,6 +292,32 @@ class DiskArgs:
|
|
245
292
|
def async_primary_disk(self, value: Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']]):
|
246
293
|
pulumi.set(self, "async_primary_disk", value)
|
247
294
|
|
295
|
+
@property
|
296
|
+
@pulumi.getter(name="createSnapshotBeforeDestroy")
|
297
|
+
def create_snapshot_before_destroy(self) -> Optional[pulumi.Input[bool]]:
|
298
|
+
"""
|
299
|
+
If set to true, a snapshot of the disk will be created before it is destroyed.
|
300
|
+
If your disk is encrypted with customer managed encryption keys these will be reused for the snapshot creation.
|
301
|
+
The name of the snapshot by default will be `{{disk-name}}-YYYYMMDD-HHmm`
|
302
|
+
"""
|
303
|
+
return pulumi.get(self, "create_snapshot_before_destroy")
|
304
|
+
|
305
|
+
@create_snapshot_before_destroy.setter
|
306
|
+
def create_snapshot_before_destroy(self, value: Optional[pulumi.Input[bool]]):
|
307
|
+
pulumi.set(self, "create_snapshot_before_destroy", value)
|
308
|
+
|
309
|
+
@property
|
310
|
+
@pulumi.getter(name="createSnapshotBeforeDestroyPrefix")
|
311
|
+
def create_snapshot_before_destroy_prefix(self) -> Optional[pulumi.Input[str]]:
|
312
|
+
"""
|
313
|
+
This will set a custom name prefix for the snapshot that's created when the disk is deleted.
|
314
|
+
"""
|
315
|
+
return pulumi.get(self, "create_snapshot_before_destroy_prefix")
|
316
|
+
|
317
|
+
@create_snapshot_before_destroy_prefix.setter
|
318
|
+
def create_snapshot_before_destroy_prefix(self, value: Optional[pulumi.Input[str]]):
|
319
|
+
pulumi.set(self, "create_snapshot_before_destroy_prefix", value)
|
320
|
+
|
248
321
|
@property
|
249
322
|
@pulumi.getter
|
250
323
|
def description(self) -> Optional[pulumi.Input[str]]:
|
@@ -401,6 +474,19 @@ class DiskArgs:
|
|
401
474
|
def name(self, value: Optional[pulumi.Input[str]]):
|
402
475
|
pulumi.set(self, "name", value)
|
403
476
|
|
477
|
+
@property
|
478
|
+
@pulumi.getter
|
479
|
+
def params(self) -> Optional[pulumi.Input['DiskParamsArgs']]:
|
480
|
+
"""
|
481
|
+
Additional params passed with the request, but not persisted as part of resource payload
|
482
|
+
Structure is documented below.
|
483
|
+
"""
|
484
|
+
return pulumi.get(self, "params")
|
485
|
+
|
486
|
+
@params.setter
|
487
|
+
def params(self, value: Optional[pulumi.Input['DiskParamsArgs']]):
|
488
|
+
pulumi.set(self, "params", value)
|
489
|
+
|
404
490
|
@property
|
405
491
|
@pulumi.getter(name="physicalBlockSizeBytes")
|
406
492
|
def physical_block_size_bytes(self) -> Optional[pulumi.Input[int]]:
|
@@ -548,6 +634,22 @@ class DiskArgs:
|
|
548
634
|
def source_image_encryption_key(self, value: Optional[pulumi.Input['DiskSourceImageEncryptionKeyArgs']]):
|
549
635
|
pulumi.set(self, "source_image_encryption_key", value)
|
550
636
|
|
637
|
+
@property
|
638
|
+
@pulumi.getter(name="sourceInstantSnapshot")
|
639
|
+
def source_instant_snapshot(self) -> Optional[pulumi.Input[str]]:
|
640
|
+
"""
|
641
|
+
The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource.
|
642
|
+
For example, the following are valid values:
|
643
|
+
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
644
|
+
* `projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
645
|
+
* `zones/zone/instantSnapshots/instantSnapshot`
|
646
|
+
"""
|
647
|
+
return pulumi.get(self, "source_instant_snapshot")
|
648
|
+
|
649
|
+
@source_instant_snapshot.setter
|
650
|
+
def source_instant_snapshot(self, value: Optional[pulumi.Input[str]]):
|
651
|
+
pulumi.set(self, "source_instant_snapshot", value)
|
652
|
+
|
551
653
|
@property
|
552
654
|
@pulumi.getter(name="sourceSnapshotEncryptionKey")
|
553
655
|
def source_snapshot_encryption_key(self) -> Optional[pulumi.Input['DiskSourceSnapshotEncryptionKeyArgs']]:
|
@@ -563,6 +665,22 @@ class DiskArgs:
|
|
563
665
|
def source_snapshot_encryption_key(self, value: Optional[pulumi.Input['DiskSourceSnapshotEncryptionKeyArgs']]):
|
564
666
|
pulumi.set(self, "source_snapshot_encryption_key", value)
|
565
667
|
|
668
|
+
@property
|
669
|
+
@pulumi.getter(name="sourceStorageObject")
|
670
|
+
def source_storage_object(self) -> Optional[pulumi.Input[str]]:
|
671
|
+
"""
|
672
|
+
The full Google Cloud Storage URI where the disk image is stored.
|
673
|
+
This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk.
|
674
|
+
Valid URIs may start with gs:// or https://storage.googleapis.com/.
|
675
|
+
This flag is not optimized for creating multiple disks from a source storage object.
|
676
|
+
To create many disks from a source storage object, use gcloud compute images import instead.
|
677
|
+
"""
|
678
|
+
return pulumi.get(self, "source_storage_object")
|
679
|
+
|
680
|
+
@source_storage_object.setter
|
681
|
+
def source_storage_object(self, value: Optional[pulumi.Input[str]]):
|
682
|
+
pulumi.set(self, "source_storage_object", value)
|
683
|
+
|
566
684
|
@property
|
567
685
|
@pulumi.getter(name="storagePool")
|
568
686
|
def storage_pool(self) -> Optional[pulumi.Input[str]]:
|
@@ -610,7 +728,10 @@ class DiskArgs:
|
|
610
728
|
class _DiskState:
|
611
729
|
def __init__(__self__, *,
|
612
730
|
access_mode: Optional[pulumi.Input[str]] = None,
|
731
|
+
architecture: Optional[pulumi.Input[str]] = None,
|
613
732
|
async_primary_disk: Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']] = None,
|
733
|
+
create_snapshot_before_destroy: Optional[pulumi.Input[bool]] = None,
|
734
|
+
create_snapshot_before_destroy_prefix: Optional[pulumi.Input[str]] = None,
|
614
735
|
creation_timestamp: Optional[pulumi.Input[str]] = None,
|
615
736
|
description: Optional[pulumi.Input[str]] = None,
|
616
737
|
disk_encryption_key: Optional[pulumi.Input['DiskDiskEncryptionKeyArgs']] = None,
|
@@ -627,6 +748,7 @@ class _DiskState:
|
|
627
748
|
licenses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
628
749
|
multi_writer: Optional[pulumi.Input[bool]] = None,
|
629
750
|
name: Optional[pulumi.Input[str]] = None,
|
751
|
+
params: Optional[pulumi.Input['DiskParamsArgs']] = None,
|
630
752
|
physical_block_size_bytes: Optional[pulumi.Input[int]] = None,
|
631
753
|
project: Optional[pulumi.Input[str]] = None,
|
632
754
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
@@ -640,8 +762,11 @@ class _DiskState:
|
|
640
762
|
source_disk_id: Optional[pulumi.Input[str]] = None,
|
641
763
|
source_image_encryption_key: Optional[pulumi.Input['DiskSourceImageEncryptionKeyArgs']] = None,
|
642
764
|
source_image_id: Optional[pulumi.Input[str]] = None,
|
765
|
+
source_instant_snapshot: Optional[pulumi.Input[str]] = None,
|
766
|
+
source_instant_snapshot_id: Optional[pulumi.Input[str]] = None,
|
643
767
|
source_snapshot_encryption_key: Optional[pulumi.Input['DiskSourceSnapshotEncryptionKeyArgs']] = None,
|
644
768
|
source_snapshot_id: Optional[pulumi.Input[str]] = None,
|
769
|
+
source_storage_object: Optional[pulumi.Input[str]] = None,
|
645
770
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
646
771
|
type: Optional[pulumi.Input[str]] = None,
|
647
772
|
users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
@@ -653,8 +778,13 @@ class _DiskState:
|
|
653
778
|
* READ_WRITE_SINGLE
|
654
779
|
* READ_WRITE_MANY
|
655
780
|
* READ_ONLY_SINGLE
|
781
|
+
:param pulumi.Input[str] architecture: (Optional)
|
656
782
|
:param pulumi.Input['DiskAsyncPrimaryDiskArgs'] async_primary_disk: A nested object resource.
|
657
783
|
Structure is documented below.
|
784
|
+
:param pulumi.Input[bool] create_snapshot_before_destroy: If set to true, a snapshot of the disk will be created before it is destroyed.
|
785
|
+
If your disk is encrypted with customer managed encryption keys these will be reused for the snapshot creation.
|
786
|
+
The name of the snapshot by default will be `{{disk-name}}-YYYYMMDD-HHmm`
|
787
|
+
:param pulumi.Input[str] create_snapshot_before_destroy_prefix: This will set a custom name prefix for the snapshot that's created when the disk is deleted.
|
658
788
|
:param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
|
659
789
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when
|
660
790
|
you create the resource.
|
@@ -707,6 +837,8 @@ class _DiskState:
|
|
707
837
|
|
708
838
|
|
709
839
|
- - -
|
840
|
+
:param pulumi.Input['DiskParamsArgs'] params: Additional params passed with the request, but not persisted as part of resource payload
|
841
|
+
Structure is documented below.
|
710
842
|
:param pulumi.Input[int] physical_block_size_bytes: Physical block size of the persistent disk, in bytes. If not present
|
711
843
|
in a request, a default value is used. Currently supported sizes
|
712
844
|
are 4096 and 16384, other sizes may be added in the future.
|
@@ -766,6 +898,16 @@ class _DiskState:
|
|
766
898
|
disk. For example, if you created the persistent disk from an image
|
767
899
|
that was later deleted and recreated under the same name, the source
|
768
900
|
image ID would identify the exact version of the image that was used.
|
901
|
+
:param pulumi.Input[str] source_instant_snapshot: The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource.
|
902
|
+
For example, the following are valid values:
|
903
|
+
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
904
|
+
* `projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
905
|
+
* `zones/zone/instantSnapshots/instantSnapshot`
|
906
|
+
:param pulumi.Input[str] source_instant_snapshot_id: The unique ID of the instant snapshot used to create this disk. This value identifies
|
907
|
+
the exact instant snapshot that was used to create this persistent disk.
|
908
|
+
For example, if you created the persistent disk from an instant snapshot that was later
|
909
|
+
deleted and recreated under the same name, the source instant snapshot ID would identify
|
910
|
+
the exact version of the instant snapshot that was used.
|
769
911
|
:param pulumi.Input['DiskSourceSnapshotEncryptionKeyArgs'] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required
|
770
912
|
if the source snapshot is protected by a customer-supplied encryption
|
771
913
|
key.
|
@@ -776,6 +918,11 @@ class _DiskState:
|
|
776
918
|
that was later deleted and recreated under the same name, the source
|
777
919
|
snapshot ID would identify the exact version of the snapshot that was
|
778
920
|
used.
|
921
|
+
:param pulumi.Input[str] source_storage_object: The full Google Cloud Storage URI where the disk image is stored.
|
922
|
+
This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk.
|
923
|
+
Valid URIs may start with gs:// or https://storage.googleapis.com/.
|
924
|
+
This flag is not optimized for creating multiple disks from a source storage object.
|
925
|
+
To create many disks from a source storage object, use gcloud compute images import instead.
|
779
926
|
:param pulumi.Input[str] storage_pool: The URL or the name of the storage pool in which the new disk is created.
|
780
927
|
For example:
|
781
928
|
* https://www.googleapis.com/compute/v1/projects/{project}/zones/{zone}/storagePools/{storagePool}
|
@@ -790,8 +937,14 @@ class _DiskState:
|
|
790
937
|
"""
|
791
938
|
if access_mode is not None:
|
792
939
|
pulumi.set(__self__, "access_mode", access_mode)
|
940
|
+
if architecture is not None:
|
941
|
+
pulumi.set(__self__, "architecture", architecture)
|
793
942
|
if async_primary_disk is not None:
|
794
943
|
pulumi.set(__self__, "async_primary_disk", async_primary_disk)
|
944
|
+
if create_snapshot_before_destroy is not None:
|
945
|
+
pulumi.set(__self__, "create_snapshot_before_destroy", create_snapshot_before_destroy)
|
946
|
+
if create_snapshot_before_destroy_prefix is not None:
|
947
|
+
pulumi.set(__self__, "create_snapshot_before_destroy_prefix", create_snapshot_before_destroy_prefix)
|
795
948
|
if creation_timestamp is not None:
|
796
949
|
pulumi.set(__self__, "creation_timestamp", creation_timestamp)
|
797
950
|
if description is not None:
|
@@ -827,6 +980,8 @@ class _DiskState:
|
|
827
980
|
pulumi.set(__self__, "multi_writer", multi_writer)
|
828
981
|
if name is not None:
|
829
982
|
pulumi.set(__self__, "name", name)
|
983
|
+
if params is not None:
|
984
|
+
pulumi.set(__self__, "params", params)
|
830
985
|
if physical_block_size_bytes is not None:
|
831
986
|
pulumi.set(__self__, "physical_block_size_bytes", physical_block_size_bytes)
|
832
987
|
if project is not None:
|
@@ -853,10 +1008,16 @@ class _DiskState:
|
|
853
1008
|
pulumi.set(__self__, "source_image_encryption_key", source_image_encryption_key)
|
854
1009
|
if source_image_id is not None:
|
855
1010
|
pulumi.set(__self__, "source_image_id", source_image_id)
|
1011
|
+
if source_instant_snapshot is not None:
|
1012
|
+
pulumi.set(__self__, "source_instant_snapshot", source_instant_snapshot)
|
1013
|
+
if source_instant_snapshot_id is not None:
|
1014
|
+
pulumi.set(__self__, "source_instant_snapshot_id", source_instant_snapshot_id)
|
856
1015
|
if source_snapshot_encryption_key is not None:
|
857
1016
|
pulumi.set(__self__, "source_snapshot_encryption_key", source_snapshot_encryption_key)
|
858
1017
|
if source_snapshot_id is not None:
|
859
1018
|
pulumi.set(__self__, "source_snapshot_id", source_snapshot_id)
|
1019
|
+
if source_storage_object is not None:
|
1020
|
+
pulumi.set(__self__, "source_storage_object", source_storage_object)
|
860
1021
|
if storage_pool is not None:
|
861
1022
|
pulumi.set(__self__, "storage_pool", storage_pool)
|
862
1023
|
if type is not None:
|
@@ -882,6 +1043,18 @@ class _DiskState:
|
|
882
1043
|
def access_mode(self, value: Optional[pulumi.Input[str]]):
|
883
1044
|
pulumi.set(self, "access_mode", value)
|
884
1045
|
|
1046
|
+
@property
|
1047
|
+
@pulumi.getter
|
1048
|
+
def architecture(self) -> Optional[pulumi.Input[str]]:
|
1049
|
+
"""
|
1050
|
+
(Optional)
|
1051
|
+
"""
|
1052
|
+
return pulumi.get(self, "architecture")
|
1053
|
+
|
1054
|
+
@architecture.setter
|
1055
|
+
def architecture(self, value: Optional[pulumi.Input[str]]):
|
1056
|
+
pulumi.set(self, "architecture", value)
|
1057
|
+
|
885
1058
|
@property
|
886
1059
|
@pulumi.getter(name="asyncPrimaryDisk")
|
887
1060
|
def async_primary_disk(self) -> Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']]:
|
@@ -895,6 +1068,32 @@ class _DiskState:
|
|
895
1068
|
def async_primary_disk(self, value: Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']]):
|
896
1069
|
pulumi.set(self, "async_primary_disk", value)
|
897
1070
|
|
1071
|
+
@property
|
1072
|
+
@pulumi.getter(name="createSnapshotBeforeDestroy")
|
1073
|
+
def create_snapshot_before_destroy(self) -> Optional[pulumi.Input[bool]]:
|
1074
|
+
"""
|
1075
|
+
If set to true, a snapshot of the disk will be created before it is destroyed.
|
1076
|
+
If your disk is encrypted with customer managed encryption keys these will be reused for the snapshot creation.
|
1077
|
+
The name of the snapshot by default will be `{{disk-name}}-YYYYMMDD-HHmm`
|
1078
|
+
"""
|
1079
|
+
return pulumi.get(self, "create_snapshot_before_destroy")
|
1080
|
+
|
1081
|
+
@create_snapshot_before_destroy.setter
|
1082
|
+
def create_snapshot_before_destroy(self, value: Optional[pulumi.Input[bool]]):
|
1083
|
+
pulumi.set(self, "create_snapshot_before_destroy", value)
|
1084
|
+
|
1085
|
+
@property
|
1086
|
+
@pulumi.getter(name="createSnapshotBeforeDestroyPrefix")
|
1087
|
+
def create_snapshot_before_destroy_prefix(self) -> Optional[pulumi.Input[str]]:
|
1088
|
+
"""
|
1089
|
+
This will set a custom name prefix for the snapshot that's created when the disk is deleted.
|
1090
|
+
"""
|
1091
|
+
return pulumi.get(self, "create_snapshot_before_destroy_prefix")
|
1092
|
+
|
1093
|
+
@create_snapshot_before_destroy_prefix.setter
|
1094
|
+
def create_snapshot_before_destroy_prefix(self, value: Optional[pulumi.Input[str]]):
|
1095
|
+
pulumi.set(self, "create_snapshot_before_destroy_prefix", value)
|
1096
|
+
|
898
1097
|
@property
|
899
1098
|
@pulumi.getter(name="creationTimestamp")
|
900
1099
|
def creation_timestamp(self) -> Optional[pulumi.Input[str]]:
|
@@ -1124,6 +1323,19 @@ class _DiskState:
|
|
1124
1323
|
def name(self, value: Optional[pulumi.Input[str]]):
|
1125
1324
|
pulumi.set(self, "name", value)
|
1126
1325
|
|
1326
|
+
@property
|
1327
|
+
@pulumi.getter
|
1328
|
+
def params(self) -> Optional[pulumi.Input['DiskParamsArgs']]:
|
1329
|
+
"""
|
1330
|
+
Additional params passed with the request, but not persisted as part of resource payload
|
1331
|
+
Structure is documented below.
|
1332
|
+
"""
|
1333
|
+
return pulumi.get(self, "params")
|
1334
|
+
|
1335
|
+
@params.setter
|
1336
|
+
def params(self, value: Optional[pulumi.Input['DiskParamsArgs']]):
|
1337
|
+
pulumi.set(self, "params", value)
|
1338
|
+
|
1127
1339
|
@property
|
1128
1340
|
@pulumi.getter(name="physicalBlockSizeBytes")
|
1129
1341
|
def physical_block_size_bytes(self) -> Optional[pulumi.Input[int]]:
|
@@ -1326,6 +1538,38 @@ class _DiskState:
|
|
1326
1538
|
def source_image_id(self, value: Optional[pulumi.Input[str]]):
|
1327
1539
|
pulumi.set(self, "source_image_id", value)
|
1328
1540
|
|
1541
|
+
@property
|
1542
|
+
@pulumi.getter(name="sourceInstantSnapshot")
|
1543
|
+
def source_instant_snapshot(self) -> Optional[pulumi.Input[str]]:
|
1544
|
+
"""
|
1545
|
+
The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource.
|
1546
|
+
For example, the following are valid values:
|
1547
|
+
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
1548
|
+
* `projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
1549
|
+
* `zones/zone/instantSnapshots/instantSnapshot`
|
1550
|
+
"""
|
1551
|
+
return pulumi.get(self, "source_instant_snapshot")
|
1552
|
+
|
1553
|
+
@source_instant_snapshot.setter
|
1554
|
+
def source_instant_snapshot(self, value: Optional[pulumi.Input[str]]):
|
1555
|
+
pulumi.set(self, "source_instant_snapshot", value)
|
1556
|
+
|
1557
|
+
@property
|
1558
|
+
@pulumi.getter(name="sourceInstantSnapshotId")
|
1559
|
+
def source_instant_snapshot_id(self) -> Optional[pulumi.Input[str]]:
|
1560
|
+
"""
|
1561
|
+
The unique ID of the instant snapshot used to create this disk. This value identifies
|
1562
|
+
the exact instant snapshot that was used to create this persistent disk.
|
1563
|
+
For example, if you created the persistent disk from an instant snapshot that was later
|
1564
|
+
deleted and recreated under the same name, the source instant snapshot ID would identify
|
1565
|
+
the exact version of the instant snapshot that was used.
|
1566
|
+
"""
|
1567
|
+
return pulumi.get(self, "source_instant_snapshot_id")
|
1568
|
+
|
1569
|
+
@source_instant_snapshot_id.setter
|
1570
|
+
def source_instant_snapshot_id(self, value: Optional[pulumi.Input[str]]):
|
1571
|
+
pulumi.set(self, "source_instant_snapshot_id", value)
|
1572
|
+
|
1329
1573
|
@property
|
1330
1574
|
@pulumi.getter(name="sourceSnapshotEncryptionKey")
|
1331
1575
|
def source_snapshot_encryption_key(self) -> Optional[pulumi.Input['DiskSourceSnapshotEncryptionKeyArgs']]:
|
@@ -1358,6 +1602,22 @@ class _DiskState:
|
|
1358
1602
|
def source_snapshot_id(self, value: Optional[pulumi.Input[str]]):
|
1359
1603
|
pulumi.set(self, "source_snapshot_id", value)
|
1360
1604
|
|
1605
|
+
@property
|
1606
|
+
@pulumi.getter(name="sourceStorageObject")
|
1607
|
+
def source_storage_object(self) -> Optional[pulumi.Input[str]]:
|
1608
|
+
"""
|
1609
|
+
The full Google Cloud Storage URI where the disk image is stored.
|
1610
|
+
This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk.
|
1611
|
+
Valid URIs may start with gs:// or https://storage.googleapis.com/.
|
1612
|
+
This flag is not optimized for creating multiple disks from a source storage object.
|
1613
|
+
To create many disks from a source storage object, use gcloud compute images import instead.
|
1614
|
+
"""
|
1615
|
+
return pulumi.get(self, "source_storage_object")
|
1616
|
+
|
1617
|
+
@source_storage_object.setter
|
1618
|
+
def source_storage_object(self, value: Optional[pulumi.Input[str]]):
|
1619
|
+
pulumi.set(self, "source_storage_object", value)
|
1620
|
+
|
1361
1621
|
@property
|
1362
1622
|
@pulumi.getter(name="storagePool")
|
1363
1623
|
def storage_pool(self) -> Optional[pulumi.Input[str]]:
|
@@ -1420,7 +1680,10 @@ class Disk(pulumi.CustomResource):
|
|
1420
1680
|
resource_name: str,
|
1421
1681
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1422
1682
|
access_mode: Optional[pulumi.Input[str]] = None,
|
1683
|
+
architecture: Optional[pulumi.Input[str]] = None,
|
1423
1684
|
async_primary_disk: Optional[pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']]] = None,
|
1685
|
+
create_snapshot_before_destroy: Optional[pulumi.Input[bool]] = None,
|
1686
|
+
create_snapshot_before_destroy_prefix: Optional[pulumi.Input[str]] = None,
|
1424
1687
|
description: Optional[pulumi.Input[str]] = None,
|
1425
1688
|
disk_encryption_key: Optional[pulumi.Input[Union['DiskDiskEncryptionKeyArgs', 'DiskDiskEncryptionKeyArgsDict']]] = None,
|
1426
1689
|
enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
|
@@ -1431,6 +1694,7 @@ class Disk(pulumi.CustomResource):
|
|
1431
1694
|
licenses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1432
1695
|
multi_writer: Optional[pulumi.Input[bool]] = None,
|
1433
1696
|
name: Optional[pulumi.Input[str]] = None,
|
1697
|
+
params: Optional[pulumi.Input[Union['DiskParamsArgs', 'DiskParamsArgsDict']]] = None,
|
1434
1698
|
physical_block_size_bytes: Optional[pulumi.Input[int]] = None,
|
1435
1699
|
project: Optional[pulumi.Input[str]] = None,
|
1436
1700
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
@@ -1440,7 +1704,9 @@ class Disk(pulumi.CustomResource):
|
|
1440
1704
|
snapshot: Optional[pulumi.Input[str]] = None,
|
1441
1705
|
source_disk: Optional[pulumi.Input[str]] = None,
|
1442
1706
|
source_image_encryption_key: Optional[pulumi.Input[Union['DiskSourceImageEncryptionKeyArgs', 'DiskSourceImageEncryptionKeyArgsDict']]] = None,
|
1707
|
+
source_instant_snapshot: Optional[pulumi.Input[str]] = None,
|
1443
1708
|
source_snapshot_encryption_key: Optional[pulumi.Input[Union['DiskSourceSnapshotEncryptionKeyArgs', 'DiskSourceSnapshotEncryptionKeyArgsDict']]] = None,
|
1709
|
+
source_storage_object: Optional[pulumi.Input[str]] = None,
|
1444
1710
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
1445
1711
|
type: Optional[pulumi.Input[str]] = None,
|
1446
1712
|
zone: Optional[pulumi.Input[str]] = None,
|
@@ -1571,8 +1837,13 @@ class Disk(pulumi.CustomResource):
|
|
1571
1837
|
* READ_WRITE_SINGLE
|
1572
1838
|
* READ_WRITE_MANY
|
1573
1839
|
* READ_ONLY_SINGLE
|
1840
|
+
:param pulumi.Input[str] architecture: (Optional)
|
1574
1841
|
:param pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']] async_primary_disk: A nested object resource.
|
1575
1842
|
Structure is documented below.
|
1843
|
+
:param pulumi.Input[bool] create_snapshot_before_destroy: If set to true, a snapshot of the disk will be created before it is destroyed.
|
1844
|
+
If your disk is encrypted with customer managed encryption keys these will be reused for the snapshot creation.
|
1845
|
+
The name of the snapshot by default will be `{{disk-name}}-YYYYMMDD-HHmm`
|
1846
|
+
:param pulumi.Input[str] create_snapshot_before_destroy_prefix: This will set a custom name prefix for the snapshot that's created when the disk is deleted.
|
1576
1847
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when
|
1577
1848
|
you create the resource.
|
1578
1849
|
:param pulumi.Input[Union['DiskDiskEncryptionKeyArgs', 'DiskDiskEncryptionKeyArgsDict']] disk_encryption_key: Encrypts the disk using a customer-supplied encryption key.
|
@@ -1618,6 +1889,8 @@ class Disk(pulumi.CustomResource):
|
|
1618
1889
|
|
1619
1890
|
|
1620
1891
|
- - -
|
1892
|
+
:param pulumi.Input[Union['DiskParamsArgs', 'DiskParamsArgsDict']] params: Additional params passed with the request, but not persisted as part of resource payload
|
1893
|
+
Structure is documented below.
|
1621
1894
|
:param pulumi.Input[int] physical_block_size_bytes: Physical block size of the persistent disk, in bytes. If not present
|
1622
1895
|
in a request, a default value is used. Currently supported sizes
|
1623
1896
|
are 4096 and 16384, other sizes may be added in the future.
|
@@ -1666,10 +1939,20 @@ class Disk(pulumi.CustomResource):
|
|
1666
1939
|
:param pulumi.Input[Union['DiskSourceImageEncryptionKeyArgs', 'DiskSourceImageEncryptionKeyArgsDict']] source_image_encryption_key: The customer-supplied encryption key of the source image. Required if
|
1667
1940
|
the source image is protected by a customer-supplied encryption key.
|
1668
1941
|
Structure is documented below.
|
1942
|
+
:param pulumi.Input[str] source_instant_snapshot: The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource.
|
1943
|
+
For example, the following are valid values:
|
1944
|
+
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
1945
|
+
* `projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
1946
|
+
* `zones/zone/instantSnapshots/instantSnapshot`
|
1669
1947
|
:param pulumi.Input[Union['DiskSourceSnapshotEncryptionKeyArgs', 'DiskSourceSnapshotEncryptionKeyArgsDict']] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required
|
1670
1948
|
if the source snapshot is protected by a customer-supplied encryption
|
1671
1949
|
key.
|
1672
1950
|
Structure is documented below.
|
1951
|
+
:param pulumi.Input[str] source_storage_object: The full Google Cloud Storage URI where the disk image is stored.
|
1952
|
+
This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk.
|
1953
|
+
Valid URIs may start with gs:// or https://storage.googleapis.com/.
|
1954
|
+
This flag is not optimized for creating multiple disks from a source storage object.
|
1955
|
+
To create many disks from a source storage object, use gcloud compute images import instead.
|
1673
1956
|
:param pulumi.Input[str] storage_pool: The URL or the name of the storage pool in which the new disk is created.
|
1674
1957
|
For example:
|
1675
1958
|
* https://www.googleapis.com/compute/v1/projects/{project}/zones/{zone}/storagePools/{storagePool}
|
@@ -1821,7 +2104,10 @@ class Disk(pulumi.CustomResource):
|
|
1821
2104
|
resource_name: str,
|
1822
2105
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1823
2106
|
access_mode: Optional[pulumi.Input[str]] = None,
|
2107
|
+
architecture: Optional[pulumi.Input[str]] = None,
|
1824
2108
|
async_primary_disk: Optional[pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']]] = None,
|
2109
|
+
create_snapshot_before_destroy: Optional[pulumi.Input[bool]] = None,
|
2110
|
+
create_snapshot_before_destroy_prefix: Optional[pulumi.Input[str]] = None,
|
1825
2111
|
description: Optional[pulumi.Input[str]] = None,
|
1826
2112
|
disk_encryption_key: Optional[pulumi.Input[Union['DiskDiskEncryptionKeyArgs', 'DiskDiskEncryptionKeyArgsDict']]] = None,
|
1827
2113
|
enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
|
@@ -1832,6 +2118,7 @@ class Disk(pulumi.CustomResource):
|
|
1832
2118
|
licenses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1833
2119
|
multi_writer: Optional[pulumi.Input[bool]] = None,
|
1834
2120
|
name: Optional[pulumi.Input[str]] = None,
|
2121
|
+
params: Optional[pulumi.Input[Union['DiskParamsArgs', 'DiskParamsArgsDict']]] = None,
|
1835
2122
|
physical_block_size_bytes: Optional[pulumi.Input[int]] = None,
|
1836
2123
|
project: Optional[pulumi.Input[str]] = None,
|
1837
2124
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
@@ -1841,7 +2128,9 @@ class Disk(pulumi.CustomResource):
|
|
1841
2128
|
snapshot: Optional[pulumi.Input[str]] = None,
|
1842
2129
|
source_disk: Optional[pulumi.Input[str]] = None,
|
1843
2130
|
source_image_encryption_key: Optional[pulumi.Input[Union['DiskSourceImageEncryptionKeyArgs', 'DiskSourceImageEncryptionKeyArgsDict']]] = None,
|
2131
|
+
source_instant_snapshot: Optional[pulumi.Input[str]] = None,
|
1844
2132
|
source_snapshot_encryption_key: Optional[pulumi.Input[Union['DiskSourceSnapshotEncryptionKeyArgs', 'DiskSourceSnapshotEncryptionKeyArgsDict']]] = None,
|
2133
|
+
source_storage_object: Optional[pulumi.Input[str]] = None,
|
1845
2134
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
1846
2135
|
type: Optional[pulumi.Input[str]] = None,
|
1847
2136
|
zone: Optional[pulumi.Input[str]] = None,
|
@@ -1855,7 +2144,10 @@ class Disk(pulumi.CustomResource):
|
|
1855
2144
|
__props__ = DiskArgs.__new__(DiskArgs)
|
1856
2145
|
|
1857
2146
|
__props__.__dict__["access_mode"] = access_mode
|
2147
|
+
__props__.__dict__["architecture"] = architecture
|
1858
2148
|
__props__.__dict__["async_primary_disk"] = async_primary_disk
|
2149
|
+
__props__.__dict__["create_snapshot_before_destroy"] = create_snapshot_before_destroy
|
2150
|
+
__props__.__dict__["create_snapshot_before_destroy_prefix"] = create_snapshot_before_destroy_prefix
|
1859
2151
|
__props__.__dict__["description"] = description
|
1860
2152
|
__props__.__dict__["disk_encryption_key"] = disk_encryption_key
|
1861
2153
|
__props__.__dict__["enable_confidential_compute"] = enable_confidential_compute
|
@@ -1866,6 +2158,7 @@ class Disk(pulumi.CustomResource):
|
|
1866
2158
|
__props__.__dict__["licenses"] = licenses
|
1867
2159
|
__props__.__dict__["multi_writer"] = multi_writer
|
1868
2160
|
__props__.__dict__["name"] = name
|
2161
|
+
__props__.__dict__["params"] = params
|
1869
2162
|
__props__.__dict__["physical_block_size_bytes"] = physical_block_size_bytes
|
1870
2163
|
__props__.__dict__["project"] = project
|
1871
2164
|
__props__.__dict__["provisioned_iops"] = provisioned_iops
|
@@ -1875,7 +2168,9 @@ class Disk(pulumi.CustomResource):
|
|
1875
2168
|
__props__.__dict__["snapshot"] = snapshot
|
1876
2169
|
__props__.__dict__["source_disk"] = source_disk
|
1877
2170
|
__props__.__dict__["source_image_encryption_key"] = source_image_encryption_key
|
2171
|
+
__props__.__dict__["source_instant_snapshot"] = source_instant_snapshot
|
1878
2172
|
__props__.__dict__["source_snapshot_encryption_key"] = source_snapshot_encryption_key
|
2173
|
+
__props__.__dict__["source_storage_object"] = source_storage_object
|
1879
2174
|
__props__.__dict__["storage_pool"] = storage_pool
|
1880
2175
|
__props__.__dict__["type"] = type
|
1881
2176
|
__props__.__dict__["zone"] = zone
|
@@ -1889,6 +2184,7 @@ class Disk(pulumi.CustomResource):
|
|
1889
2184
|
__props__.__dict__["self_link"] = None
|
1890
2185
|
__props__.__dict__["source_disk_id"] = None
|
1891
2186
|
__props__.__dict__["source_image_id"] = None
|
2187
|
+
__props__.__dict__["source_instant_snapshot_id"] = None
|
1892
2188
|
__props__.__dict__["source_snapshot_id"] = None
|
1893
2189
|
__props__.__dict__["users"] = None
|
1894
2190
|
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
|
@@ -1904,7 +2200,10 @@ class Disk(pulumi.CustomResource):
|
|
1904
2200
|
id: pulumi.Input[str],
|
1905
2201
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1906
2202
|
access_mode: Optional[pulumi.Input[str]] = None,
|
2203
|
+
architecture: Optional[pulumi.Input[str]] = None,
|
1907
2204
|
async_primary_disk: Optional[pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']]] = None,
|
2205
|
+
create_snapshot_before_destroy: Optional[pulumi.Input[bool]] = None,
|
2206
|
+
create_snapshot_before_destroy_prefix: Optional[pulumi.Input[str]] = None,
|
1908
2207
|
creation_timestamp: Optional[pulumi.Input[str]] = None,
|
1909
2208
|
description: Optional[pulumi.Input[str]] = None,
|
1910
2209
|
disk_encryption_key: Optional[pulumi.Input[Union['DiskDiskEncryptionKeyArgs', 'DiskDiskEncryptionKeyArgsDict']]] = None,
|
@@ -1921,6 +2220,7 @@ class Disk(pulumi.CustomResource):
|
|
1921
2220
|
licenses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1922
2221
|
multi_writer: Optional[pulumi.Input[bool]] = None,
|
1923
2222
|
name: Optional[pulumi.Input[str]] = None,
|
2223
|
+
params: Optional[pulumi.Input[Union['DiskParamsArgs', 'DiskParamsArgsDict']]] = None,
|
1924
2224
|
physical_block_size_bytes: Optional[pulumi.Input[int]] = None,
|
1925
2225
|
project: Optional[pulumi.Input[str]] = None,
|
1926
2226
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
@@ -1934,8 +2234,11 @@ class Disk(pulumi.CustomResource):
|
|
1934
2234
|
source_disk_id: Optional[pulumi.Input[str]] = None,
|
1935
2235
|
source_image_encryption_key: Optional[pulumi.Input[Union['DiskSourceImageEncryptionKeyArgs', 'DiskSourceImageEncryptionKeyArgsDict']]] = None,
|
1936
2236
|
source_image_id: Optional[pulumi.Input[str]] = None,
|
2237
|
+
source_instant_snapshot: Optional[pulumi.Input[str]] = None,
|
2238
|
+
source_instant_snapshot_id: Optional[pulumi.Input[str]] = None,
|
1937
2239
|
source_snapshot_encryption_key: Optional[pulumi.Input[Union['DiskSourceSnapshotEncryptionKeyArgs', 'DiskSourceSnapshotEncryptionKeyArgsDict']]] = None,
|
1938
2240
|
source_snapshot_id: Optional[pulumi.Input[str]] = None,
|
2241
|
+
source_storage_object: Optional[pulumi.Input[str]] = None,
|
1939
2242
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
1940
2243
|
type: Optional[pulumi.Input[str]] = None,
|
1941
2244
|
users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
@@ -1952,8 +2255,13 @@ class Disk(pulumi.CustomResource):
|
|
1952
2255
|
* READ_WRITE_SINGLE
|
1953
2256
|
* READ_WRITE_MANY
|
1954
2257
|
* READ_ONLY_SINGLE
|
2258
|
+
:param pulumi.Input[str] architecture: (Optional)
|
1955
2259
|
:param pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']] async_primary_disk: A nested object resource.
|
1956
2260
|
Structure is documented below.
|
2261
|
+
:param pulumi.Input[bool] create_snapshot_before_destroy: If set to true, a snapshot of the disk will be created before it is destroyed.
|
2262
|
+
If your disk is encrypted with customer managed encryption keys these will be reused for the snapshot creation.
|
2263
|
+
The name of the snapshot by default will be `{{disk-name}}-YYYYMMDD-HHmm`
|
2264
|
+
:param pulumi.Input[str] create_snapshot_before_destroy_prefix: This will set a custom name prefix for the snapshot that's created when the disk is deleted.
|
1957
2265
|
:param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
|
1958
2266
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when
|
1959
2267
|
you create the resource.
|
@@ -2006,6 +2314,8 @@ class Disk(pulumi.CustomResource):
|
|
2006
2314
|
|
2007
2315
|
|
2008
2316
|
- - -
|
2317
|
+
:param pulumi.Input[Union['DiskParamsArgs', 'DiskParamsArgsDict']] params: Additional params passed with the request, but not persisted as part of resource payload
|
2318
|
+
Structure is documented below.
|
2009
2319
|
:param pulumi.Input[int] physical_block_size_bytes: Physical block size of the persistent disk, in bytes. If not present
|
2010
2320
|
in a request, a default value is used. Currently supported sizes
|
2011
2321
|
are 4096 and 16384, other sizes may be added in the future.
|
@@ -2065,6 +2375,16 @@ class Disk(pulumi.CustomResource):
|
|
2065
2375
|
disk. For example, if you created the persistent disk from an image
|
2066
2376
|
that was later deleted and recreated under the same name, the source
|
2067
2377
|
image ID would identify the exact version of the image that was used.
|
2378
|
+
:param pulumi.Input[str] source_instant_snapshot: The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource.
|
2379
|
+
For example, the following are valid values:
|
2380
|
+
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
2381
|
+
* `projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
2382
|
+
* `zones/zone/instantSnapshots/instantSnapshot`
|
2383
|
+
:param pulumi.Input[str] source_instant_snapshot_id: The unique ID of the instant snapshot used to create this disk. This value identifies
|
2384
|
+
the exact instant snapshot that was used to create this persistent disk.
|
2385
|
+
For example, if you created the persistent disk from an instant snapshot that was later
|
2386
|
+
deleted and recreated under the same name, the source instant snapshot ID would identify
|
2387
|
+
the exact version of the instant snapshot that was used.
|
2068
2388
|
:param pulumi.Input[Union['DiskSourceSnapshotEncryptionKeyArgs', 'DiskSourceSnapshotEncryptionKeyArgsDict']] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required
|
2069
2389
|
if the source snapshot is protected by a customer-supplied encryption
|
2070
2390
|
key.
|
@@ -2075,6 +2395,11 @@ class Disk(pulumi.CustomResource):
|
|
2075
2395
|
that was later deleted and recreated under the same name, the source
|
2076
2396
|
snapshot ID would identify the exact version of the snapshot that was
|
2077
2397
|
used.
|
2398
|
+
:param pulumi.Input[str] source_storage_object: The full Google Cloud Storage URI where the disk image is stored.
|
2399
|
+
This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk.
|
2400
|
+
Valid URIs may start with gs:// or https://storage.googleapis.com/.
|
2401
|
+
This flag is not optimized for creating multiple disks from a source storage object.
|
2402
|
+
To create many disks from a source storage object, use gcloud compute images import instead.
|
2078
2403
|
:param pulumi.Input[str] storage_pool: The URL or the name of the storage pool in which the new disk is created.
|
2079
2404
|
For example:
|
2080
2405
|
* https://www.googleapis.com/compute/v1/projects/{project}/zones/{zone}/storagePools/{storagePool}
|
@@ -2092,7 +2417,10 @@ class Disk(pulumi.CustomResource):
|
|
2092
2417
|
__props__ = _DiskState.__new__(_DiskState)
|
2093
2418
|
|
2094
2419
|
__props__.__dict__["access_mode"] = access_mode
|
2420
|
+
__props__.__dict__["architecture"] = architecture
|
2095
2421
|
__props__.__dict__["async_primary_disk"] = async_primary_disk
|
2422
|
+
__props__.__dict__["create_snapshot_before_destroy"] = create_snapshot_before_destroy
|
2423
|
+
__props__.__dict__["create_snapshot_before_destroy_prefix"] = create_snapshot_before_destroy_prefix
|
2096
2424
|
__props__.__dict__["creation_timestamp"] = creation_timestamp
|
2097
2425
|
__props__.__dict__["description"] = description
|
2098
2426
|
__props__.__dict__["disk_encryption_key"] = disk_encryption_key
|
@@ -2109,6 +2437,7 @@ class Disk(pulumi.CustomResource):
|
|
2109
2437
|
__props__.__dict__["licenses"] = licenses
|
2110
2438
|
__props__.__dict__["multi_writer"] = multi_writer
|
2111
2439
|
__props__.__dict__["name"] = name
|
2440
|
+
__props__.__dict__["params"] = params
|
2112
2441
|
__props__.__dict__["physical_block_size_bytes"] = physical_block_size_bytes
|
2113
2442
|
__props__.__dict__["project"] = project
|
2114
2443
|
__props__.__dict__["provisioned_iops"] = provisioned_iops
|
@@ -2122,8 +2451,11 @@ class Disk(pulumi.CustomResource):
|
|
2122
2451
|
__props__.__dict__["source_disk_id"] = source_disk_id
|
2123
2452
|
__props__.__dict__["source_image_encryption_key"] = source_image_encryption_key
|
2124
2453
|
__props__.__dict__["source_image_id"] = source_image_id
|
2454
|
+
__props__.__dict__["source_instant_snapshot"] = source_instant_snapshot
|
2455
|
+
__props__.__dict__["source_instant_snapshot_id"] = source_instant_snapshot_id
|
2125
2456
|
__props__.__dict__["source_snapshot_encryption_key"] = source_snapshot_encryption_key
|
2126
2457
|
__props__.__dict__["source_snapshot_id"] = source_snapshot_id
|
2458
|
+
__props__.__dict__["source_storage_object"] = source_storage_object
|
2127
2459
|
__props__.__dict__["storage_pool"] = storage_pool
|
2128
2460
|
__props__.__dict__["type"] = type
|
2129
2461
|
__props__.__dict__["users"] = users
|
@@ -2142,6 +2474,14 @@ class Disk(pulumi.CustomResource):
|
|
2142
2474
|
"""
|
2143
2475
|
return pulumi.get(self, "access_mode")
|
2144
2476
|
|
2477
|
+
@property
|
2478
|
+
@pulumi.getter
|
2479
|
+
def architecture(self) -> pulumi.Output[Optional[str]]:
|
2480
|
+
"""
|
2481
|
+
(Optional)
|
2482
|
+
"""
|
2483
|
+
return pulumi.get(self, "architecture")
|
2484
|
+
|
2145
2485
|
@property
|
2146
2486
|
@pulumi.getter(name="asyncPrimaryDisk")
|
2147
2487
|
def async_primary_disk(self) -> pulumi.Output[Optional['outputs.DiskAsyncPrimaryDisk']]:
|
@@ -2151,6 +2491,24 @@ class Disk(pulumi.CustomResource):
|
|
2151
2491
|
"""
|
2152
2492
|
return pulumi.get(self, "async_primary_disk")
|
2153
2493
|
|
2494
|
+
@property
|
2495
|
+
@pulumi.getter(name="createSnapshotBeforeDestroy")
|
2496
|
+
def create_snapshot_before_destroy(self) -> pulumi.Output[Optional[bool]]:
|
2497
|
+
"""
|
2498
|
+
If set to true, a snapshot of the disk will be created before it is destroyed.
|
2499
|
+
If your disk is encrypted with customer managed encryption keys these will be reused for the snapshot creation.
|
2500
|
+
The name of the snapshot by default will be `{{disk-name}}-YYYYMMDD-HHmm`
|
2501
|
+
"""
|
2502
|
+
return pulumi.get(self, "create_snapshot_before_destroy")
|
2503
|
+
|
2504
|
+
@property
|
2505
|
+
@pulumi.getter(name="createSnapshotBeforeDestroyPrefix")
|
2506
|
+
def create_snapshot_before_destroy_prefix(self) -> pulumi.Output[Optional[str]]:
|
2507
|
+
"""
|
2508
|
+
This will set a custom name prefix for the snapshot that's created when the disk is deleted.
|
2509
|
+
"""
|
2510
|
+
return pulumi.get(self, "create_snapshot_before_destroy_prefix")
|
2511
|
+
|
2154
2512
|
@property
|
2155
2513
|
@pulumi.getter(name="creationTimestamp")
|
2156
2514
|
def creation_timestamp(self) -> pulumi.Output[str]:
|
@@ -2316,6 +2674,15 @@ class Disk(pulumi.CustomResource):
|
|
2316
2674
|
"""
|
2317
2675
|
return pulumi.get(self, "name")
|
2318
2676
|
|
2677
|
+
@property
|
2678
|
+
@pulumi.getter
|
2679
|
+
def params(self) -> pulumi.Output[Optional['outputs.DiskParams']]:
|
2680
|
+
"""
|
2681
|
+
Additional params passed with the request, but not persisted as part of resource payload
|
2682
|
+
Structure is documented below.
|
2683
|
+
"""
|
2684
|
+
return pulumi.get(self, "params")
|
2685
|
+
|
2319
2686
|
@property
|
2320
2687
|
@pulumi.getter(name="physicalBlockSizeBytes")
|
2321
2688
|
def physical_block_size_bytes(self) -> pulumi.Output[int]:
|
@@ -2466,6 +2833,30 @@ class Disk(pulumi.CustomResource):
|
|
2466
2833
|
"""
|
2467
2834
|
return pulumi.get(self, "source_image_id")
|
2468
2835
|
|
2836
|
+
@property
|
2837
|
+
@pulumi.getter(name="sourceInstantSnapshot")
|
2838
|
+
def source_instant_snapshot(self) -> pulumi.Output[Optional[str]]:
|
2839
|
+
"""
|
2840
|
+
The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource.
|
2841
|
+
For example, the following are valid values:
|
2842
|
+
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
2843
|
+
* `projects/project/zones/zone/instantSnapshots/instantSnapshot`
|
2844
|
+
* `zones/zone/instantSnapshots/instantSnapshot`
|
2845
|
+
"""
|
2846
|
+
return pulumi.get(self, "source_instant_snapshot")
|
2847
|
+
|
2848
|
+
@property
|
2849
|
+
@pulumi.getter(name="sourceInstantSnapshotId")
|
2850
|
+
def source_instant_snapshot_id(self) -> pulumi.Output[str]:
|
2851
|
+
"""
|
2852
|
+
The unique ID of the instant snapshot used to create this disk. This value identifies
|
2853
|
+
the exact instant snapshot that was used to create this persistent disk.
|
2854
|
+
For example, if you created the persistent disk from an instant snapshot that was later
|
2855
|
+
deleted and recreated under the same name, the source instant snapshot ID would identify
|
2856
|
+
the exact version of the instant snapshot that was used.
|
2857
|
+
"""
|
2858
|
+
return pulumi.get(self, "source_instant_snapshot_id")
|
2859
|
+
|
2469
2860
|
@property
|
2470
2861
|
@pulumi.getter(name="sourceSnapshotEncryptionKey")
|
2471
2862
|
def source_snapshot_encryption_key(self) -> pulumi.Output[Optional['outputs.DiskSourceSnapshotEncryptionKey']]:
|
@@ -2490,6 +2881,18 @@ class Disk(pulumi.CustomResource):
|
|
2490
2881
|
"""
|
2491
2882
|
return pulumi.get(self, "source_snapshot_id")
|
2492
2883
|
|
2884
|
+
@property
|
2885
|
+
@pulumi.getter(name="sourceStorageObject")
|
2886
|
+
def source_storage_object(self) -> pulumi.Output[Optional[str]]:
|
2887
|
+
"""
|
2888
|
+
The full Google Cloud Storage URI where the disk image is stored.
|
2889
|
+
This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk.
|
2890
|
+
Valid URIs may start with gs:// or https://storage.googleapis.com/.
|
2891
|
+
This flag is not optimized for creating multiple disks from a source storage object.
|
2892
|
+
To create many disks from a source storage object, use gcloud compute images import instead.
|
2893
|
+
"""
|
2894
|
+
return pulumi.get(self, "source_storage_object")
|
2895
|
+
|
2493
2896
|
@property
|
2494
2897
|
@pulumi.getter(name="storagePool")
|
2495
2898
|
def storage_pool(self) -> pulumi.Output[Optional[str]]:
|