pulumi-gcp 8.27.0a1744872023__py3-none-any.whl → 8.28.0a1745044764__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.
Files changed (76) hide show
  1. pulumi_gcp/__init__.py +80 -0
  2. pulumi_gcp/bigquery/_inputs.py +87 -30
  3. pulumi_gcp/bigquery/outputs.py +58 -20
  4. pulumi_gcp/bigquery/table.py +28 -14
  5. pulumi_gcp/cloudrun/service.py +46 -0
  6. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  7. pulumi_gcp/cloudrunv2/service.py +85 -0
  8. pulumi_gcp/compute/_inputs.py +428 -1
  9. pulumi_gcp/compute/image.py +183 -0
  10. pulumi_gcp/compute/outputs.py +362 -3
  11. pulumi_gcp/compute/region_backend_service.py +6 -2
  12. pulumi_gcp/compute/snapshot.py +6 -0
  13. pulumi_gcp/databasemigrationservice/_inputs.py +27 -24
  14. pulumi_gcp/databasemigrationservice/connection_profile.py +168 -0
  15. pulumi_gcp/databasemigrationservice/migration_job.py +6 -0
  16. pulumi_gcp/databasemigrationservice/outputs.py +18 -15
  17. pulumi_gcp/developerconnect/__init__.py +1 -0
  18. pulumi_gcp/developerconnect/_inputs.py +77 -0
  19. pulumi_gcp/developerconnect/account_connector.py +866 -0
  20. pulumi_gcp/developerconnect/outputs.py +64 -0
  21. pulumi_gcp/firestore/database.py +82 -0
  22. pulumi_gcp/firestore/index.py +263 -7
  23. pulumi_gcp/folder/service_identity.py +0 -26
  24. pulumi_gcp/managedkafka/_inputs.py +6 -6
  25. pulumi_gcp/managedkafka/connect_cluster.py +84 -40
  26. pulumi_gcp/managedkafka/connector.py +98 -44
  27. pulumi_gcp/managedkafka/outputs.py +4 -4
  28. pulumi_gcp/memorystore/_inputs.py +69 -0
  29. pulumi_gcp/memorystore/get_instance.py +34 -1
  30. pulumi_gcp/memorystore/instance.py +140 -0
  31. pulumi_gcp/memorystore/outputs.py +80 -0
  32. pulumi_gcp/ml/engine_model.py +0 -22
  33. pulumi_gcp/monitoring/_inputs.py +37 -19
  34. pulumi_gcp/monitoring/outputs.py +39 -11
  35. pulumi_gcp/monitoring/uptime_check_config.py +8 -0
  36. pulumi_gcp/netapp/_inputs.py +3 -3
  37. pulumi_gcp/netapp/outputs.py +2 -2
  38. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  39. pulumi_gcp/orgpolicy/policy.py +2 -2
  40. pulumi_gcp/osconfig/v2_policy_orchestrator.py +8 -0
  41. pulumi_gcp/osconfig/v2_policy_orchestrator_for_organization.py +8 -0
  42. pulumi_gcp/pubsub/subscription.py +6 -6
  43. pulumi_gcp/pulumi-plugin.json +1 -1
  44. pulumi_gcp/redis/_inputs.py +69 -0
  45. pulumi_gcp/redis/cluster.py +140 -0
  46. pulumi_gcp/redis/outputs.py +40 -0
  47. pulumi_gcp/storage/_inputs.py +111 -0
  48. pulumi_gcp/storage/control_folder_intelligence_config.py +32 -0
  49. pulumi_gcp/storage/control_organization_intelligence_config.py +32 -0
  50. pulumi_gcp/storage/control_project_intelligence_config.py +32 -0
  51. pulumi_gcp/storage/get_control_folder_intelligence_config.py +12 -1
  52. pulumi_gcp/storage/get_control_organization_intelligence_config.py +12 -1
  53. pulumi_gcp/storage/get_control_project_intelligence_config.py +12 -1
  54. pulumi_gcp/storage/outputs.py +174 -0
  55. pulumi_gcp/vertex/__init__.py +12 -0
  56. pulumi_gcp/vertex/_inputs.py +294 -0
  57. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  58. pulumi_gcp/vertex/ai_feature_group.py +1 -1
  59. pulumi_gcp/vertex/ai_feature_group_iam_binding.py +583 -0
  60. pulumi_gcp/vertex/ai_feature_group_iam_member.py +583 -0
  61. pulumi_gcp/vertex/ai_feature_group_iam_policy.py +422 -0
  62. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +26 -27
  63. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +614 -0
  64. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +614 -0
  65. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +453 -0
  66. pulumi_gcp/vertex/ai_feature_online_store_iam_binding.py +583 -0
  67. pulumi_gcp/vertex/ai_feature_online_store_iam_member.py +583 -0
  68. pulumi_gcp/vertex/ai_feature_online_store_iam_policy.py +422 -0
  69. pulumi_gcp/vertex/get_ai_feature_group_iam_policy.py +177 -0
  70. pulumi_gcp/vertex/get_ai_feature_online_store_featureview_iam_policy.py +194 -0
  71. pulumi_gcp/vertex/get_ai_feature_online_store_iam_policy.py +177 -0
  72. pulumi_gcp/vertex/outputs.py +168 -0
  73. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.28.0a1745044764.dist-info}/METADATA +1 -1
  74. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.28.0a1745044764.dist-info}/RECORD +76 -63
  75. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.28.0a1745044764.dist-info}/WHEEL +0 -0
  76. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.28.0a1745044764.dist-info}/top_level.txt +0 -0
@@ -34,8 +34,11 @@ class ImageArgs:
34
34
  raw_disk: Optional[pulumi.Input['ImageRawDiskArgs']] = None,
35
35
  shielded_instance_initial_state: Optional[pulumi.Input['ImageShieldedInstanceInitialStateArgs']] = None,
36
36
  source_disk: Optional[pulumi.Input[builtins.str]] = None,
37
+ source_disk_encryption_key: Optional[pulumi.Input['ImageSourceDiskEncryptionKeyArgs']] = None,
37
38
  source_image: Optional[pulumi.Input[builtins.str]] = None,
39
+ source_image_encryption_key: Optional[pulumi.Input['ImageSourceImageEncryptionKeyArgs']] = None,
38
40
  source_snapshot: Optional[pulumi.Input[builtins.str]] = None,
41
+ source_snapshot_encryption_key: Optional[pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs']] = None,
39
42
  storage_locations: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None):
40
43
  """
41
44
  The set of arguments for constructing a Image resource.
@@ -78,12 +81,18 @@ class ImageArgs:
78
81
  :param pulumi.Input[builtins.str] source_disk: The source disk to create this image based on.
79
82
  You must provide either this property or the
80
83
  rawDisk.source property but not both to create an image.
84
+ :param pulumi.Input['ImageSourceDiskEncryptionKeyArgs'] source_disk_encryption_key: The customer-supplied encryption key of the source disk. Required if
85
+ the source disk is protected by a customer-supplied encryption key.
86
+ Structure is documented below.
81
87
  :param pulumi.Input[builtins.str] source_image: URL of the source image used to create this image. In order to create an image, you must provide the full or partial
82
88
  URL of one of the following:
83
89
  * The selfLink URL
84
90
  * This property
85
91
  * The rawDisk.source URL
86
92
  * The sourceDisk URL
93
+ :param pulumi.Input['ImageSourceImageEncryptionKeyArgs'] source_image_encryption_key: The customer-supplied encryption key of the source image. Required if
94
+ the source image is protected by a customer-supplied encryption key.
95
+ Structure is documented below.
87
96
  :param pulumi.Input[builtins.str] source_snapshot: URL of the source snapshot used to create this image.
88
97
  In order to create an image, you must provide the full or partial URL of one of the following:
89
98
  * The selfLink URL
@@ -91,6 +100,9 @@ class ImageArgs:
91
100
  * The sourceImage URL
92
101
  * The rawDisk.source URL
93
102
  * The sourceDisk URL
103
+ :param pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs'] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required if
104
+ the source snapshot is protected by a customer-supplied encryption key.
105
+ Structure is documented below.
94
106
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] storage_locations: Cloud Storage bucket storage location of the image
95
107
  (regional or multi-regional).
96
108
  Reference link: https://cloud.google.com/compute/docs/reference/rest/v1/images
@@ -119,10 +131,16 @@ class ImageArgs:
119
131
  pulumi.set(__self__, "shielded_instance_initial_state", shielded_instance_initial_state)
120
132
  if source_disk is not None:
121
133
  pulumi.set(__self__, "source_disk", source_disk)
134
+ if source_disk_encryption_key is not None:
135
+ pulumi.set(__self__, "source_disk_encryption_key", source_disk_encryption_key)
122
136
  if source_image is not None:
123
137
  pulumi.set(__self__, "source_image", source_image)
138
+ if source_image_encryption_key is not None:
139
+ pulumi.set(__self__, "source_image_encryption_key", source_image_encryption_key)
124
140
  if source_snapshot is not None:
125
141
  pulumi.set(__self__, "source_snapshot", source_snapshot)
142
+ if source_snapshot_encryption_key is not None:
143
+ pulumi.set(__self__, "source_snapshot_encryption_key", source_snapshot_encryption_key)
126
144
  if storage_locations is not None:
127
145
  pulumi.set(__self__, "storage_locations", storage_locations)
128
146
 
@@ -297,6 +315,20 @@ class ImageArgs:
297
315
  def source_disk(self, value: Optional[pulumi.Input[builtins.str]]):
298
316
  pulumi.set(self, "source_disk", value)
299
317
 
318
+ @property
319
+ @pulumi.getter(name="sourceDiskEncryptionKey")
320
+ def source_disk_encryption_key(self) -> Optional[pulumi.Input['ImageSourceDiskEncryptionKeyArgs']]:
321
+ """
322
+ The customer-supplied encryption key of the source disk. Required if
323
+ the source disk is protected by a customer-supplied encryption key.
324
+ Structure is documented below.
325
+ """
326
+ return pulumi.get(self, "source_disk_encryption_key")
327
+
328
+ @source_disk_encryption_key.setter
329
+ def source_disk_encryption_key(self, value: Optional[pulumi.Input['ImageSourceDiskEncryptionKeyArgs']]):
330
+ pulumi.set(self, "source_disk_encryption_key", value)
331
+
300
332
  @property
301
333
  @pulumi.getter(name="sourceImage")
302
334
  def source_image(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -314,6 +346,20 @@ class ImageArgs:
314
346
  def source_image(self, value: Optional[pulumi.Input[builtins.str]]):
315
347
  pulumi.set(self, "source_image", value)
316
348
 
349
+ @property
350
+ @pulumi.getter(name="sourceImageEncryptionKey")
351
+ def source_image_encryption_key(self) -> Optional[pulumi.Input['ImageSourceImageEncryptionKeyArgs']]:
352
+ """
353
+ The customer-supplied encryption key of the source image. Required if
354
+ the source image is protected by a customer-supplied encryption key.
355
+ Structure is documented below.
356
+ """
357
+ return pulumi.get(self, "source_image_encryption_key")
358
+
359
+ @source_image_encryption_key.setter
360
+ def source_image_encryption_key(self, value: Optional[pulumi.Input['ImageSourceImageEncryptionKeyArgs']]):
361
+ pulumi.set(self, "source_image_encryption_key", value)
362
+
317
363
  @property
318
364
  @pulumi.getter(name="sourceSnapshot")
319
365
  def source_snapshot(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -332,6 +378,20 @@ class ImageArgs:
332
378
  def source_snapshot(self, value: Optional[pulumi.Input[builtins.str]]):
333
379
  pulumi.set(self, "source_snapshot", value)
334
380
 
381
+ @property
382
+ @pulumi.getter(name="sourceSnapshotEncryptionKey")
383
+ def source_snapshot_encryption_key(self) -> Optional[pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs']]:
384
+ """
385
+ The customer-supplied encryption key of the source snapshot. Required if
386
+ the source snapshot is protected by a customer-supplied encryption key.
387
+ Structure is documented below.
388
+ """
389
+ return pulumi.get(self, "source_snapshot_encryption_key")
390
+
391
+ @source_snapshot_encryption_key.setter
392
+ def source_snapshot_encryption_key(self, value: Optional[pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs']]):
393
+ pulumi.set(self, "source_snapshot_encryption_key", value)
394
+
335
395
  @property
336
396
  @pulumi.getter(name="storageLocations")
337
397
  def storage_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
@@ -368,8 +428,11 @@ class _ImageState:
368
428
  self_link: Optional[pulumi.Input[builtins.str]] = None,
369
429
  shielded_instance_initial_state: Optional[pulumi.Input['ImageShieldedInstanceInitialStateArgs']] = None,
370
430
  source_disk: Optional[pulumi.Input[builtins.str]] = None,
431
+ source_disk_encryption_key: Optional[pulumi.Input['ImageSourceDiskEncryptionKeyArgs']] = None,
371
432
  source_image: Optional[pulumi.Input[builtins.str]] = None,
433
+ source_image_encryption_key: Optional[pulumi.Input['ImageSourceImageEncryptionKeyArgs']] = None,
372
434
  source_snapshot: Optional[pulumi.Input[builtins.str]] = None,
435
+ source_snapshot_encryption_key: Optional[pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs']] = None,
373
436
  storage_locations: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None):
374
437
  """
375
438
  Input properties used for looking up and filtering Image resources.
@@ -421,12 +484,18 @@ class _ImageState:
421
484
  :param pulumi.Input[builtins.str] source_disk: The source disk to create this image based on.
422
485
  You must provide either this property or the
423
486
  rawDisk.source property but not both to create an image.
487
+ :param pulumi.Input['ImageSourceDiskEncryptionKeyArgs'] source_disk_encryption_key: The customer-supplied encryption key of the source disk. Required if
488
+ the source disk is protected by a customer-supplied encryption key.
489
+ Structure is documented below.
424
490
  :param pulumi.Input[builtins.str] source_image: URL of the source image used to create this image. In order to create an image, you must provide the full or partial
425
491
  URL of one of the following:
426
492
  * The selfLink URL
427
493
  * This property
428
494
  * The rawDisk.source URL
429
495
  * The sourceDisk URL
496
+ :param pulumi.Input['ImageSourceImageEncryptionKeyArgs'] source_image_encryption_key: The customer-supplied encryption key of the source image. Required if
497
+ the source image is protected by a customer-supplied encryption key.
498
+ Structure is documented below.
430
499
  :param pulumi.Input[builtins.str] source_snapshot: URL of the source snapshot used to create this image.
431
500
  In order to create an image, you must provide the full or partial URL of one of the following:
432
501
  * The selfLink URL
@@ -434,6 +503,9 @@ class _ImageState:
434
503
  * The sourceImage URL
435
504
  * The rawDisk.source URL
436
505
  * The sourceDisk URL
506
+ :param pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs'] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required if
507
+ the source snapshot is protected by a customer-supplied encryption key.
508
+ Structure is documented below.
437
509
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] storage_locations: Cloud Storage bucket storage location of the image
438
510
  (regional or multi-regional).
439
511
  Reference link: https://cloud.google.com/compute/docs/reference/rest/v1/images
@@ -474,10 +546,16 @@ class _ImageState:
474
546
  pulumi.set(__self__, "shielded_instance_initial_state", shielded_instance_initial_state)
475
547
  if source_disk is not None:
476
548
  pulumi.set(__self__, "source_disk", source_disk)
549
+ if source_disk_encryption_key is not None:
550
+ pulumi.set(__self__, "source_disk_encryption_key", source_disk_encryption_key)
477
551
  if source_image is not None:
478
552
  pulumi.set(__self__, "source_image", source_image)
553
+ if source_image_encryption_key is not None:
554
+ pulumi.set(__self__, "source_image_encryption_key", source_image_encryption_key)
479
555
  if source_snapshot is not None:
480
556
  pulumi.set(__self__, "source_snapshot", source_snapshot)
557
+ if source_snapshot_encryption_key is not None:
558
+ pulumi.set(__self__, "source_snapshot_encryption_key", source_snapshot_encryption_key)
481
559
  if storage_locations is not None:
482
560
  pulumi.set(__self__, "storage_locations", storage_locations)
483
561
 
@@ -727,6 +805,20 @@ class _ImageState:
727
805
  def source_disk(self, value: Optional[pulumi.Input[builtins.str]]):
728
806
  pulumi.set(self, "source_disk", value)
729
807
 
808
+ @property
809
+ @pulumi.getter(name="sourceDiskEncryptionKey")
810
+ def source_disk_encryption_key(self) -> Optional[pulumi.Input['ImageSourceDiskEncryptionKeyArgs']]:
811
+ """
812
+ The customer-supplied encryption key of the source disk. Required if
813
+ the source disk is protected by a customer-supplied encryption key.
814
+ Structure is documented below.
815
+ """
816
+ return pulumi.get(self, "source_disk_encryption_key")
817
+
818
+ @source_disk_encryption_key.setter
819
+ def source_disk_encryption_key(self, value: Optional[pulumi.Input['ImageSourceDiskEncryptionKeyArgs']]):
820
+ pulumi.set(self, "source_disk_encryption_key", value)
821
+
730
822
  @property
731
823
  @pulumi.getter(name="sourceImage")
732
824
  def source_image(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -744,6 +836,20 @@ class _ImageState:
744
836
  def source_image(self, value: Optional[pulumi.Input[builtins.str]]):
745
837
  pulumi.set(self, "source_image", value)
746
838
 
839
+ @property
840
+ @pulumi.getter(name="sourceImageEncryptionKey")
841
+ def source_image_encryption_key(self) -> Optional[pulumi.Input['ImageSourceImageEncryptionKeyArgs']]:
842
+ """
843
+ The customer-supplied encryption key of the source image. Required if
844
+ the source image is protected by a customer-supplied encryption key.
845
+ Structure is documented below.
846
+ """
847
+ return pulumi.get(self, "source_image_encryption_key")
848
+
849
+ @source_image_encryption_key.setter
850
+ def source_image_encryption_key(self, value: Optional[pulumi.Input['ImageSourceImageEncryptionKeyArgs']]):
851
+ pulumi.set(self, "source_image_encryption_key", value)
852
+
747
853
  @property
748
854
  @pulumi.getter(name="sourceSnapshot")
749
855
  def source_snapshot(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -762,6 +868,20 @@ class _ImageState:
762
868
  def source_snapshot(self, value: Optional[pulumi.Input[builtins.str]]):
763
869
  pulumi.set(self, "source_snapshot", value)
764
870
 
871
+ @property
872
+ @pulumi.getter(name="sourceSnapshotEncryptionKey")
873
+ def source_snapshot_encryption_key(self) -> Optional[pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs']]:
874
+ """
875
+ The customer-supplied encryption key of the source snapshot. Required if
876
+ the source snapshot is protected by a customer-supplied encryption key.
877
+ Structure is documented below.
878
+ """
879
+ return pulumi.get(self, "source_snapshot_encryption_key")
880
+
881
+ @source_snapshot_encryption_key.setter
882
+ def source_snapshot_encryption_key(self, value: Optional[pulumi.Input['ImageSourceSnapshotEncryptionKeyArgs']]):
883
+ pulumi.set(self, "source_snapshot_encryption_key", value)
884
+
765
885
  @property
766
886
  @pulumi.getter(name="storageLocations")
767
887
  def storage_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
@@ -794,8 +914,11 @@ class Image(pulumi.CustomResource):
794
914
  raw_disk: Optional[pulumi.Input[Union['ImageRawDiskArgs', 'ImageRawDiskArgsDict']]] = None,
795
915
  shielded_instance_initial_state: Optional[pulumi.Input[Union['ImageShieldedInstanceInitialStateArgs', 'ImageShieldedInstanceInitialStateArgsDict']]] = None,
796
916
  source_disk: Optional[pulumi.Input[builtins.str]] = None,
917
+ source_disk_encryption_key: Optional[pulumi.Input[Union['ImageSourceDiskEncryptionKeyArgs', 'ImageSourceDiskEncryptionKeyArgsDict']]] = None,
797
918
  source_image: Optional[pulumi.Input[builtins.str]] = None,
919
+ source_image_encryption_key: Optional[pulumi.Input[Union['ImageSourceImageEncryptionKeyArgs', 'ImageSourceImageEncryptionKeyArgsDict']]] = None,
798
920
  source_snapshot: Optional[pulumi.Input[builtins.str]] = None,
921
+ source_snapshot_encryption_key: Optional[pulumi.Input[Union['ImageSourceSnapshotEncryptionKeyArgs', 'ImageSourceSnapshotEncryptionKeyArgsDict']]] = None,
799
922
  storage_locations: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
800
923
  __props__=None):
801
924
  """
@@ -962,12 +1085,18 @@ class Image(pulumi.CustomResource):
962
1085
  :param pulumi.Input[builtins.str] source_disk: The source disk to create this image based on.
963
1086
  You must provide either this property or the
964
1087
  rawDisk.source property but not both to create an image.
1088
+ :param pulumi.Input[Union['ImageSourceDiskEncryptionKeyArgs', 'ImageSourceDiskEncryptionKeyArgsDict']] source_disk_encryption_key: The customer-supplied encryption key of the source disk. Required if
1089
+ the source disk is protected by a customer-supplied encryption key.
1090
+ Structure is documented below.
965
1091
  :param pulumi.Input[builtins.str] source_image: URL of the source image used to create this image. In order to create an image, you must provide the full or partial
966
1092
  URL of one of the following:
967
1093
  * The selfLink URL
968
1094
  * This property
969
1095
  * The rawDisk.source URL
970
1096
  * The sourceDisk URL
1097
+ :param pulumi.Input[Union['ImageSourceImageEncryptionKeyArgs', 'ImageSourceImageEncryptionKeyArgsDict']] source_image_encryption_key: The customer-supplied encryption key of the source image. Required if
1098
+ the source image is protected by a customer-supplied encryption key.
1099
+ Structure is documented below.
971
1100
  :param pulumi.Input[builtins.str] source_snapshot: URL of the source snapshot used to create this image.
972
1101
  In order to create an image, you must provide the full or partial URL of one of the following:
973
1102
  * The selfLink URL
@@ -975,6 +1104,9 @@ class Image(pulumi.CustomResource):
975
1104
  * The sourceImage URL
976
1105
  * The rawDisk.source URL
977
1106
  * The sourceDisk URL
1107
+ :param pulumi.Input[Union['ImageSourceSnapshotEncryptionKeyArgs', 'ImageSourceSnapshotEncryptionKeyArgsDict']] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required if
1108
+ the source snapshot is protected by a customer-supplied encryption key.
1109
+ Structure is documented below.
978
1110
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] storage_locations: Cloud Storage bucket storage location of the image
979
1111
  (regional or multi-regional).
980
1112
  Reference link: https://cloud.google.com/compute/docs/reference/rest/v1/images
@@ -1135,8 +1267,11 @@ class Image(pulumi.CustomResource):
1135
1267
  raw_disk: Optional[pulumi.Input[Union['ImageRawDiskArgs', 'ImageRawDiskArgsDict']]] = None,
1136
1268
  shielded_instance_initial_state: Optional[pulumi.Input[Union['ImageShieldedInstanceInitialStateArgs', 'ImageShieldedInstanceInitialStateArgsDict']]] = None,
1137
1269
  source_disk: Optional[pulumi.Input[builtins.str]] = None,
1270
+ source_disk_encryption_key: Optional[pulumi.Input[Union['ImageSourceDiskEncryptionKeyArgs', 'ImageSourceDiskEncryptionKeyArgsDict']]] = None,
1138
1271
  source_image: Optional[pulumi.Input[builtins.str]] = None,
1272
+ source_image_encryption_key: Optional[pulumi.Input[Union['ImageSourceImageEncryptionKeyArgs', 'ImageSourceImageEncryptionKeyArgsDict']]] = None,
1139
1273
  source_snapshot: Optional[pulumi.Input[builtins.str]] = None,
1274
+ source_snapshot_encryption_key: Optional[pulumi.Input[Union['ImageSourceSnapshotEncryptionKeyArgs', 'ImageSourceSnapshotEncryptionKeyArgsDict']]] = None,
1140
1275
  storage_locations: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1141
1276
  __props__=None):
1142
1277
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1159,8 +1294,11 @@ class Image(pulumi.CustomResource):
1159
1294
  __props__.__dict__["raw_disk"] = raw_disk
1160
1295
  __props__.__dict__["shielded_instance_initial_state"] = shielded_instance_initial_state
1161
1296
  __props__.__dict__["source_disk"] = source_disk
1297
+ __props__.__dict__["source_disk_encryption_key"] = source_disk_encryption_key
1162
1298
  __props__.__dict__["source_image"] = source_image
1299
+ __props__.__dict__["source_image_encryption_key"] = source_image_encryption_key
1163
1300
  __props__.__dict__["source_snapshot"] = source_snapshot
1301
+ __props__.__dict__["source_snapshot_encryption_key"] = source_snapshot_encryption_key
1164
1302
  __props__.__dict__["storage_locations"] = storage_locations
1165
1303
  __props__.__dict__["archive_size_bytes"] = None
1166
1304
  __props__.__dict__["creation_timestamp"] = None
@@ -1198,8 +1336,11 @@ class Image(pulumi.CustomResource):
1198
1336
  self_link: Optional[pulumi.Input[builtins.str]] = None,
1199
1337
  shielded_instance_initial_state: Optional[pulumi.Input[Union['ImageShieldedInstanceInitialStateArgs', 'ImageShieldedInstanceInitialStateArgsDict']]] = None,
1200
1338
  source_disk: Optional[pulumi.Input[builtins.str]] = None,
1339
+ source_disk_encryption_key: Optional[pulumi.Input[Union['ImageSourceDiskEncryptionKeyArgs', 'ImageSourceDiskEncryptionKeyArgsDict']]] = None,
1201
1340
  source_image: Optional[pulumi.Input[builtins.str]] = None,
1341
+ source_image_encryption_key: Optional[pulumi.Input[Union['ImageSourceImageEncryptionKeyArgs', 'ImageSourceImageEncryptionKeyArgsDict']]] = None,
1202
1342
  source_snapshot: Optional[pulumi.Input[builtins.str]] = None,
1343
+ source_snapshot_encryption_key: Optional[pulumi.Input[Union['ImageSourceSnapshotEncryptionKeyArgs', 'ImageSourceSnapshotEncryptionKeyArgsDict']]] = None,
1203
1344
  storage_locations: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None) -> 'Image':
1204
1345
  """
1205
1346
  Get an existing Image resource's state with the given name, id, and optional extra
@@ -1256,12 +1397,18 @@ class Image(pulumi.CustomResource):
1256
1397
  :param pulumi.Input[builtins.str] source_disk: The source disk to create this image based on.
1257
1398
  You must provide either this property or the
1258
1399
  rawDisk.source property but not both to create an image.
1400
+ :param pulumi.Input[Union['ImageSourceDiskEncryptionKeyArgs', 'ImageSourceDiskEncryptionKeyArgsDict']] source_disk_encryption_key: The customer-supplied encryption key of the source disk. Required if
1401
+ the source disk is protected by a customer-supplied encryption key.
1402
+ Structure is documented below.
1259
1403
  :param pulumi.Input[builtins.str] source_image: URL of the source image used to create this image. In order to create an image, you must provide the full or partial
1260
1404
  URL of one of the following:
1261
1405
  * The selfLink URL
1262
1406
  * This property
1263
1407
  * The rawDisk.source URL
1264
1408
  * The sourceDisk URL
1409
+ :param pulumi.Input[Union['ImageSourceImageEncryptionKeyArgs', 'ImageSourceImageEncryptionKeyArgsDict']] source_image_encryption_key: The customer-supplied encryption key of the source image. Required if
1410
+ the source image is protected by a customer-supplied encryption key.
1411
+ Structure is documented below.
1265
1412
  :param pulumi.Input[builtins.str] source_snapshot: URL of the source snapshot used to create this image.
1266
1413
  In order to create an image, you must provide the full or partial URL of one of the following:
1267
1414
  * The selfLink URL
@@ -1269,6 +1416,9 @@ class Image(pulumi.CustomResource):
1269
1416
  * The sourceImage URL
1270
1417
  * The rawDisk.source URL
1271
1418
  * The sourceDisk URL
1419
+ :param pulumi.Input[Union['ImageSourceSnapshotEncryptionKeyArgs', 'ImageSourceSnapshotEncryptionKeyArgsDict']] source_snapshot_encryption_key: The customer-supplied encryption key of the source snapshot. Required if
1420
+ the source snapshot is protected by a customer-supplied encryption key.
1421
+ Structure is documented below.
1272
1422
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] storage_locations: Cloud Storage bucket storage location of the image
1273
1423
  (regional or multi-regional).
1274
1424
  Reference link: https://cloud.google.com/compute/docs/reference/rest/v1/images
@@ -1295,8 +1445,11 @@ class Image(pulumi.CustomResource):
1295
1445
  __props__.__dict__["self_link"] = self_link
1296
1446
  __props__.__dict__["shielded_instance_initial_state"] = shielded_instance_initial_state
1297
1447
  __props__.__dict__["source_disk"] = source_disk
1448
+ __props__.__dict__["source_disk_encryption_key"] = source_disk_encryption_key
1298
1449
  __props__.__dict__["source_image"] = source_image
1450
+ __props__.__dict__["source_image_encryption_key"] = source_image_encryption_key
1299
1451
  __props__.__dict__["source_snapshot"] = source_snapshot
1452
+ __props__.__dict__["source_snapshot_encryption_key"] = source_snapshot_encryption_key
1300
1453
  __props__.__dict__["storage_locations"] = storage_locations
1301
1454
  return Image(resource_name, opts=opts, __props__=__props__)
1302
1455
 
@@ -1474,6 +1627,16 @@ class Image(pulumi.CustomResource):
1474
1627
  """
1475
1628
  return pulumi.get(self, "source_disk")
1476
1629
 
1630
+ @property
1631
+ @pulumi.getter(name="sourceDiskEncryptionKey")
1632
+ def source_disk_encryption_key(self) -> pulumi.Output[Optional['outputs.ImageSourceDiskEncryptionKey']]:
1633
+ """
1634
+ The customer-supplied encryption key of the source disk. Required if
1635
+ the source disk is protected by a customer-supplied encryption key.
1636
+ Structure is documented below.
1637
+ """
1638
+ return pulumi.get(self, "source_disk_encryption_key")
1639
+
1477
1640
  @property
1478
1641
  @pulumi.getter(name="sourceImage")
1479
1642
  def source_image(self) -> pulumi.Output[Optional[builtins.str]]:
@@ -1487,6 +1650,16 @@ class Image(pulumi.CustomResource):
1487
1650
  """
1488
1651
  return pulumi.get(self, "source_image")
1489
1652
 
1653
+ @property
1654
+ @pulumi.getter(name="sourceImageEncryptionKey")
1655
+ def source_image_encryption_key(self) -> pulumi.Output[Optional['outputs.ImageSourceImageEncryptionKey']]:
1656
+ """
1657
+ The customer-supplied encryption key of the source image. Required if
1658
+ the source image is protected by a customer-supplied encryption key.
1659
+ Structure is documented below.
1660
+ """
1661
+ return pulumi.get(self, "source_image_encryption_key")
1662
+
1490
1663
  @property
1491
1664
  @pulumi.getter(name="sourceSnapshot")
1492
1665
  def source_snapshot(self) -> pulumi.Output[Optional[builtins.str]]:
@@ -1501,6 +1674,16 @@ class Image(pulumi.CustomResource):
1501
1674
  """
1502
1675
  return pulumi.get(self, "source_snapshot")
1503
1676
 
1677
+ @property
1678
+ @pulumi.getter(name="sourceSnapshotEncryptionKey")
1679
+ def source_snapshot_encryption_key(self) -> pulumi.Output[Optional['outputs.ImageSourceSnapshotEncryptionKey']]:
1680
+ """
1681
+ The customer-supplied encryption key of the source snapshot. Required if
1682
+ the source snapshot is protected by a customer-supplied encryption key.
1683
+ Structure is documented below.
1684
+ """
1685
+ return pulumi.get(self, "source_snapshot_encryption_key")
1686
+
1504
1687
  @property
1505
1688
  @pulumi.getter(name="storageLocations")
1506
1689
  def storage_locations(self) -> pulumi.Output[Sequence[builtins.str]]: