pulumi-gcp 7.5.0a1704347630__py3-none-any.whl → 7.6.0__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. pulumi_gcp/__init__.py +99 -0
  2. pulumi_gcp/bigqueryanalyticshub/_inputs.py +40 -0
  3. pulumi_gcp/bigqueryanalyticshub/listing.py +117 -3
  4. pulumi_gcp/bigqueryanalyticshub/outputs.py +49 -0
  5. pulumi_gcp/clouddeploy/__init__.py +1 -0
  6. pulumi_gcp/clouddeploy/_inputs.py +239 -0
  7. pulumi_gcp/clouddeploy/automation.py +1103 -0
  8. pulumi_gcp/clouddeploy/outputs.py +246 -0
  9. pulumi_gcp/clouddomains/__init__.py +10 -0
  10. pulumi_gcp/clouddomains/_inputs.py +1098 -0
  11. pulumi_gcp/clouddomains/outputs.py +1156 -0
  12. pulumi_gcp/clouddomains/registration.py +1068 -0
  13. pulumi_gcp/cloudrunv2/job.py +4 -4
  14. pulumi_gcp/composer/_inputs.py +79 -1
  15. pulumi_gcp/composer/outputs.py +131 -4
  16. pulumi_gcp/compute/__init__.py +1 -0
  17. pulumi_gcp/compute/_inputs.py +180 -0
  18. pulumi_gcp/compute/get_instance_template.py +11 -1
  19. pulumi_gcp/compute/get_region_instance_template.py +11 -1
  20. pulumi_gcp/compute/get_reservation.py +212 -0
  21. pulumi_gcp/compute/instance_template.py +47 -0
  22. pulumi_gcp/compute/network_firewall_policy.py +20 -22
  23. pulumi_gcp/compute/outputs.py +325 -0
  24. pulumi_gcp/compute/region_instance_template.py +47 -0
  25. pulumi_gcp/compute/region_network_firewall_policy.py +31 -35
  26. pulumi_gcp/compute/router_peer.py +54 -0
  27. pulumi_gcp/compute/vpn_tunnel.py +8 -4
  28. pulumi_gcp/config/__init__.pyi +2 -0
  29. pulumi_gcp/config/vars.py +4 -0
  30. pulumi_gcp/container/_inputs.py +23 -0
  31. pulumi_gcp/container/aws_node_pool.py +7 -7
  32. pulumi_gcp/container/cluster.py +68 -14
  33. pulumi_gcp/container/get_cluster.py +11 -1
  34. pulumi_gcp/container/outputs.py +49 -0
  35. pulumi_gcp/dataflow/pipeline.py +1 -1
  36. pulumi_gcp/dataproc/_inputs.py +413 -39
  37. pulumi_gcp/dataproc/metastore_service.py +63 -0
  38. pulumi_gcp/dataproc/outputs.py +461 -39
  39. pulumi_gcp/dns/__init__.py +1 -0
  40. pulumi_gcp/dns/_inputs.py +94 -0
  41. pulumi_gcp/dns/get_managed_zones.py +89 -0
  42. pulumi_gcp/dns/outputs.py +62 -0
  43. pulumi_gcp/edgecontainer/vpn_connection.py +10 -10
  44. pulumi_gcp/filestore/__init__.py +1 -0
  45. pulumi_gcp/filestore/get_instance.py +258 -0
  46. pulumi_gcp/filestore/instance.py +7 -7
  47. pulumi_gcp/filestore/outputs.py +126 -0
  48. pulumi_gcp/gkebackup/backup_plan.py +24 -8
  49. pulumi_gcp/gkebackup/restore_plan.py +36 -12
  50. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +36 -12
  51. pulumi_gcp/gkebackup/restore_plan_iam_member.py +36 -12
  52. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +36 -12
  53. pulumi_gcp/gkehub/_inputs.py +502 -2
  54. pulumi_gcp/gkehub/feature.py +34 -0
  55. pulumi_gcp/gkehub/feature_membership.py +177 -0
  56. pulumi_gcp/gkehub/membership.py +18 -6
  57. pulumi_gcp/gkehub/outputs.py +502 -2
  58. pulumi_gcp/gkeonprem/_inputs.py +21 -25
  59. pulumi_gcp/gkeonprem/outputs.py +34 -25
  60. pulumi_gcp/gkeonprem/v_mware_node_pool.py +34 -0
  61. pulumi_gcp/integrationconnectors/__init__.py +1 -0
  62. pulumi_gcp/integrationconnectors/endpoint_attachment.py +669 -0
  63. pulumi_gcp/kms/_inputs.py +42 -0
  64. pulumi_gcp/kms/crypto_key.py +36 -0
  65. pulumi_gcp/kms/get_kms_crypto_key.py +11 -1
  66. pulumi_gcp/kms/outputs.py +62 -0
  67. pulumi_gcp/logging/__init__.py +2 -0
  68. pulumi_gcp/logging/folder_settings.py +490 -0
  69. pulumi_gcp/logging/folder_sink.py +21 -21
  70. pulumi_gcp/logging/organization_settings.py +484 -0
  71. pulumi_gcp/logging/organization_sink.py +21 -21
  72. pulumi_gcp/logging/project_sink.py +7 -14
  73. pulumi_gcp/netapp/__init__.py +3 -0
  74. pulumi_gcp/netapp/active_directory.py +1413 -0
  75. pulumi_gcp/netapp/backup_vault.py +593 -0
  76. pulumi_gcp/netapp/kmsconfig.py +649 -0
  77. pulumi_gcp/orgpolicy/policy.py +28 -0
  78. pulumi_gcp/provider.py +20 -0
  79. pulumi_gcp/pubsub/subscription.py +29 -37
  80. pulumi_gcp/serviceaccount/account.py +47 -0
  81. pulumi_gcp/servicenetworking/connection.py +55 -1
  82. pulumi_gcp/sql/database_instance.py +2 -2
  83. pulumi_gcp/sql/ssl_cert.py +1 -1
  84. pulumi_gcp/sql/user.py +7 -7
  85. pulumi_gcp/storage/transfer_job.py +24 -5
  86. pulumi_gcp/vertex/__init__.py +3 -0
  87. pulumi_gcp/vertex/_inputs.py +339 -0
  88. pulumi_gcp/vertex/ai_feature_group.py +710 -0
  89. pulumi_gcp/vertex/ai_feature_online_store.py +962 -0
  90. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +804 -0
  91. pulumi_gcp/vertex/outputs.py +406 -0
  92. pulumi_gcp/vmwareengine/__init__.py +2 -0
  93. pulumi_gcp/vmwareengine/_inputs.py +84 -0
  94. pulumi_gcp/vmwareengine/external_access_rule.py +947 -0
  95. pulumi_gcp/vmwareengine/get_external_access_rule.py +245 -0
  96. pulumi_gcp/vmwareengine/outputs.py +146 -0
  97. pulumi_gcp/workflows/workflow.py +7 -7
  98. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/METADATA +1 -1
  99. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/RECORD +101 -82
  100. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/WHEEL +0 -0
  101. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/top_level.txt +0 -0
@@ -400,6 +400,7 @@ __all__ = [
400
400
  'RouterNatSubnetworkArgs',
401
401
  'RouterPeerAdvertisedIpRangeArgs',
402
402
  'RouterPeerBfdArgs',
403
+ 'RouterPeerMd5AuthenticationKeyArgs',
403
404
  'SecurityPolicyAdaptiveProtectionConfigArgs',
404
405
  'SecurityPolicyAdaptiveProtectionConfigAutoDeployConfigArgs',
405
406
  'SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigArgs',
@@ -5936,6 +5937,8 @@ class InstanceBootDiskInitializeParamsArgs:
5936
5937
  enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
5937
5938
  image: Optional[pulumi.Input[str]] = None,
5938
5939
  labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
5940
+ provisioned_iops: Optional[pulumi.Input[int]] = None,
5941
+ provisioned_throughput: Optional[pulumi.Input[int]] = None,
5939
5942
  resource_manager_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
5940
5943
  size: Optional[pulumi.Input[int]] = None,
5941
5944
  type: Optional[pulumi.Input[str]] = None):
@@ -5952,6 +5955,20 @@ class InstanceBootDiskInitializeParamsArgs:
5952
5955
  These images can be referred by family name here.
5953
5956
  :param pulumi.Input[Mapping[str, Any]] labels: A set of key/value label pairs assigned to the disk. This
5954
5957
  field is only applicable for persistent disks.
5958
+ :param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk.
5959
+ This sets the number of I/O operations per second that the disk can handle.
5960
+ Values must be between 10,000 and 120,000. For more details,see the
5961
+ [Extreme persistent disk documentation](https://cloud.google.com/compute/docs/disks/extreme-persistent-disk).
5962
+ Note: Updating currently is only supported for hyperdisk skus via disk update
5963
+ api/gcloud without the need to delete and recreate the disk, hyperdisk allows
5964
+ for an update of IOPS every 4 hours. To update your hyperdisk more frequently,
5965
+ you'll need to manually delete and recreate it.
5966
+ :param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk.
5967
+ This sets the number of throughput mb per second that the disk can handle.
5968
+ Values must be between 1 and 7,124. Note: Updating currently is only supported
5969
+ for hyperdisk skus via disk update api/gcloud without the need to delete and
5970
+ recreate the disk, hyperdisk allows for an update of throughput every 4 hours.
5971
+ To update your hyperdisk more frequently, you'll need to manually delete and recreate it.
5955
5972
  :param pulumi.Input[int] size: The size of the image in gigabytes. If not specified, it
5956
5973
  will inherit the size of its base image.
5957
5974
  :param pulumi.Input[str] type: The GCE disk type. Such as pd-standard, pd-balanced or pd-ssd.
@@ -5962,6 +5979,10 @@ class InstanceBootDiskInitializeParamsArgs:
5962
5979
  pulumi.set(__self__, "image", image)
5963
5980
  if labels is not None:
5964
5981
  pulumi.set(__self__, "labels", labels)
5982
+ if provisioned_iops is not None:
5983
+ pulumi.set(__self__, "provisioned_iops", provisioned_iops)
5984
+ if provisioned_throughput is not None:
5985
+ pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
5965
5986
  if resource_manager_tags is not None:
5966
5987
  pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
5967
5988
  if size is not None:
@@ -6014,6 +6035,42 @@ class InstanceBootDiskInitializeParamsArgs:
6014
6035
  def labels(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
6015
6036
  pulumi.set(self, "labels", value)
6016
6037
 
6038
+ @property
6039
+ @pulumi.getter(name="provisionedIops")
6040
+ def provisioned_iops(self) -> Optional[pulumi.Input[int]]:
6041
+ """
6042
+ Indicates how many IOPS to provision for the disk.
6043
+ This sets the number of I/O operations per second that the disk can handle.
6044
+ Values must be between 10,000 and 120,000. For more details,see the
6045
+ [Extreme persistent disk documentation](https://cloud.google.com/compute/docs/disks/extreme-persistent-disk).
6046
+ Note: Updating currently is only supported for hyperdisk skus via disk update
6047
+ api/gcloud without the need to delete and recreate the disk, hyperdisk allows
6048
+ for an update of IOPS every 4 hours. To update your hyperdisk more frequently,
6049
+ you'll need to manually delete and recreate it.
6050
+ """
6051
+ return pulumi.get(self, "provisioned_iops")
6052
+
6053
+ @provisioned_iops.setter
6054
+ def provisioned_iops(self, value: Optional[pulumi.Input[int]]):
6055
+ pulumi.set(self, "provisioned_iops", value)
6056
+
6057
+ @property
6058
+ @pulumi.getter(name="provisionedThroughput")
6059
+ def provisioned_throughput(self) -> Optional[pulumi.Input[int]]:
6060
+ """
6061
+ Indicates how much throughput to provision for the disk.
6062
+ This sets the number of throughput mb per second that the disk can handle.
6063
+ Values must be between 1 and 7,124. Note: Updating currently is only supported
6064
+ for hyperdisk skus via disk update api/gcloud without the need to delete and
6065
+ recreate the disk, hyperdisk allows for an update of throughput every 4 hours.
6066
+ To update your hyperdisk more frequently, you'll need to manually delete and recreate it.
6067
+ """
6068
+ return pulumi.get(self, "provisioned_throughput")
6069
+
6070
+ @provisioned_throughput.setter
6071
+ def provisioned_throughput(self, value: Optional[pulumi.Input[int]]):
6072
+ pulumi.set(self, "provisioned_throughput", value)
6073
+
6017
6074
  @property
6018
6075
  @pulumi.getter(name="resourceManagerTags")
6019
6076
  def resource_manager_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
@@ -6295,6 +6352,8 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
6295
6352
  enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
6296
6353
  image: Optional[pulumi.Input[str]] = None,
6297
6354
  labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
6355
+ provisioned_iops: Optional[pulumi.Input[int]] = None,
6356
+ provisioned_throughput: Optional[pulumi.Input[int]] = None,
6298
6357
  resource_manager_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
6299
6358
  size: Optional[pulumi.Input[int]] = None,
6300
6359
  type: Optional[pulumi.Input[str]] = None):
@@ -6304,6 +6363,10 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
6304
6363
  pulumi.set(__self__, "image", image)
6305
6364
  if labels is not None:
6306
6365
  pulumi.set(__self__, "labels", labels)
6366
+ if provisioned_iops is not None:
6367
+ pulumi.set(__self__, "provisioned_iops", provisioned_iops)
6368
+ if provisioned_throughput is not None:
6369
+ pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
6307
6370
  if resource_manager_tags is not None:
6308
6371
  pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
6309
6372
  if size is not None:
@@ -6338,6 +6401,24 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
6338
6401
  def labels(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
6339
6402
  pulumi.set(self, "labels", value)
6340
6403
 
6404
+ @property
6405
+ @pulumi.getter(name="provisionedIops")
6406
+ def provisioned_iops(self) -> Optional[pulumi.Input[int]]:
6407
+ return pulumi.get(self, "provisioned_iops")
6408
+
6409
+ @provisioned_iops.setter
6410
+ def provisioned_iops(self, value: Optional[pulumi.Input[int]]):
6411
+ pulumi.set(self, "provisioned_iops", value)
6412
+
6413
+ @property
6414
+ @pulumi.getter(name="provisionedThroughput")
6415
+ def provisioned_throughput(self) -> Optional[pulumi.Input[int]]:
6416
+ return pulumi.get(self, "provisioned_throughput")
6417
+
6418
+ @provisioned_throughput.setter
6419
+ def provisioned_throughput(self, value: Optional[pulumi.Input[int]]):
6420
+ pulumi.set(self, "provisioned_throughput", value)
6421
+
6341
6422
  @property
6342
6423
  @pulumi.getter(name="resourceManagerTags")
6343
6424
  def resource_manager_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
@@ -7419,6 +7500,8 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
7419
7500
  enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
7420
7501
  image: Optional[pulumi.Input[str]] = None,
7421
7502
  labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
7503
+ provisioned_iops: Optional[pulumi.Input[int]] = None,
7504
+ provisioned_throughput: Optional[pulumi.Input[int]] = None,
7422
7505
  resource_manager_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
7423
7506
  size: Optional[pulumi.Input[int]] = None,
7424
7507
  type: Optional[pulumi.Input[str]] = None):
@@ -7428,6 +7511,10 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
7428
7511
  pulumi.set(__self__, "image", image)
7429
7512
  if labels is not None:
7430
7513
  pulumi.set(__self__, "labels", labels)
7514
+ if provisioned_iops is not None:
7515
+ pulumi.set(__self__, "provisioned_iops", provisioned_iops)
7516
+ if provisioned_throughput is not None:
7517
+ pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
7431
7518
  if resource_manager_tags is not None:
7432
7519
  pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
7433
7520
  if size is not None:
@@ -7462,6 +7549,24 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
7462
7549
  def labels(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
7463
7550
  pulumi.set(self, "labels", value)
7464
7551
 
7552
+ @property
7553
+ @pulumi.getter(name="provisionedIops")
7554
+ def provisioned_iops(self) -> Optional[pulumi.Input[int]]:
7555
+ return pulumi.get(self, "provisioned_iops")
7556
+
7557
+ @provisioned_iops.setter
7558
+ def provisioned_iops(self, value: Optional[pulumi.Input[int]]):
7559
+ pulumi.set(self, "provisioned_iops", value)
7560
+
7561
+ @property
7562
+ @pulumi.getter(name="provisionedThroughput")
7563
+ def provisioned_throughput(self) -> Optional[pulumi.Input[int]]:
7564
+ return pulumi.get(self, "provisioned_throughput")
7565
+
7566
+ @provisioned_throughput.setter
7567
+ def provisioned_throughput(self, value: Optional[pulumi.Input[int]]):
7568
+ pulumi.set(self, "provisioned_throughput", value)
7569
+
7465
7570
  @property
7466
7571
  @pulumi.getter(name="resourceManagerTags")
7467
7572
  def resource_manager_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
@@ -10444,6 +10549,7 @@ class InstanceTemplateDiskArgs:
10444
10549
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
10445
10550
  mode: Optional[pulumi.Input[str]] = None,
10446
10551
  provisioned_iops: Optional[pulumi.Input[int]] = None,
10552
+ resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
10447
10553
  resource_policies: Optional[pulumi.Input[str]] = None,
10448
10554
  source: Optional[pulumi.Input[str]] = None,
10449
10555
  source_image: Optional[pulumi.Input[str]] = None,
@@ -10487,6 +10593,7 @@ class InstanceTemplateDiskArgs:
10487
10593
  sets the number of I/O operations per second that the disk can handle.
10488
10594
  Values must be between 10,000 and 120,000. For more details, see the
10489
10595
  [Extreme persistent disk documentation](https://cloud.google.com/compute/docs/disks/extreme-persistent-disk).
10596
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] resource_manager_tags: A set of key/value resource manager tag pairs to bind to this disk. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456.
10490
10597
  :param pulumi.Input[str] resource_policies: - A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported.
10491
10598
  :param pulumi.Input[str] source: The name (**not self_link**)
10492
10599
  of the disk (such as those managed by `compute.Disk`) to attach.
@@ -10536,6 +10643,8 @@ class InstanceTemplateDiskArgs:
10536
10643
  pulumi.set(__self__, "mode", mode)
10537
10644
  if provisioned_iops is not None:
10538
10645
  pulumi.set(__self__, "provisioned_iops", provisioned_iops)
10646
+ if resource_manager_tags is not None:
10647
+ pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
10539
10648
  if resource_policies is not None:
10540
10649
  pulumi.set(__self__, "resource_policies", resource_policies)
10541
10650
  if source is not None:
@@ -10707,6 +10816,18 @@ class InstanceTemplateDiskArgs:
10707
10816
  def provisioned_iops(self, value: Optional[pulumi.Input[int]]):
10708
10817
  pulumi.set(self, "provisioned_iops", value)
10709
10818
 
10819
+ @property
10820
+ @pulumi.getter(name="resourceManagerTags")
10821
+ def resource_manager_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
10822
+ """
10823
+ A set of key/value resource manager tag pairs to bind to this disk. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456.
10824
+ """
10825
+ return pulumi.get(self, "resource_manager_tags")
10826
+
10827
+ @resource_manager_tags.setter
10828
+ def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
10829
+ pulumi.set(self, "resource_manager_tags", value)
10830
+
10710
10831
  @property
10711
10832
  @pulumi.getter(name="resourcePolicies")
10712
10833
  def resource_policies(self) -> Optional[pulumi.Input[str]]:
@@ -18192,6 +18313,7 @@ class RegionInstanceTemplateDiskArgs:
18192
18313
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
18193
18314
  mode: Optional[pulumi.Input[str]] = None,
18194
18315
  provisioned_iops: Optional[pulumi.Input[int]] = None,
18316
+ resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
18195
18317
  resource_policies: Optional[pulumi.Input[str]] = None,
18196
18318
  source: Optional[pulumi.Input[str]] = None,
18197
18319
  source_image: Optional[pulumi.Input[str]] = None,
@@ -18235,6 +18357,7 @@ class RegionInstanceTemplateDiskArgs:
18235
18357
  sets the number of I/O operations per second that the disk can handle.
18236
18358
  Values must be between 10,000 and 120,000. For more details, see the
18237
18359
  [Extreme persistent disk documentation](https://cloud.google.com/compute/docs/disks/extreme-persistent-disk).
18360
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] resource_manager_tags: A set of key/value resource manager tag pairs to bind to this disk. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456.
18238
18361
  :param pulumi.Input[str] resource_policies: - A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported.
18239
18362
  :param pulumi.Input[str] source: The name (**not self_link**)
18240
18363
  of the disk (such as those managed by `compute.Disk`) to attach.
@@ -18284,6 +18407,8 @@ class RegionInstanceTemplateDiskArgs:
18284
18407
  pulumi.set(__self__, "mode", mode)
18285
18408
  if provisioned_iops is not None:
18286
18409
  pulumi.set(__self__, "provisioned_iops", provisioned_iops)
18410
+ if resource_manager_tags is not None:
18411
+ pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
18287
18412
  if resource_policies is not None:
18288
18413
  pulumi.set(__self__, "resource_policies", resource_policies)
18289
18414
  if source is not None:
@@ -18455,6 +18580,18 @@ class RegionInstanceTemplateDiskArgs:
18455
18580
  def provisioned_iops(self, value: Optional[pulumi.Input[int]]):
18456
18581
  pulumi.set(self, "provisioned_iops", value)
18457
18582
 
18583
+ @property
18584
+ @pulumi.getter(name="resourceManagerTags")
18585
+ def resource_manager_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
18586
+ """
18587
+ A set of key/value resource manager tag pairs to bind to this disk. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456.
18588
+ """
18589
+ return pulumi.get(self, "resource_manager_tags")
18590
+
18591
+ @resource_manager_tags.setter
18592
+ def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
18593
+ pulumi.set(self, "resource_manager_tags", value)
18594
+
18458
18595
  @property
18459
18596
  @pulumi.getter(name="resourcePolicies")
18460
18597
  def resource_policies(self) -> Optional[pulumi.Input[str]]:
@@ -27291,6 +27428,49 @@ class RouterPeerBfdArgs:
27291
27428
  pulumi.set(self, "multiplier", value)
27292
27429
 
27293
27430
 
27431
+ @pulumi.input_type
27432
+ class RouterPeerMd5AuthenticationKeyArgs:
27433
+ def __init__(__self__, *,
27434
+ key: pulumi.Input[str],
27435
+ name: pulumi.Input[str]):
27436
+ """
27437
+ :param pulumi.Input[str] name: Name of this BGP peer. The name must be 1-63 characters long,
27438
+ and comply with RFC1035. Specifically, the name must be 1-63 characters
27439
+ long and match the regular expression `a-z?` which
27440
+ means the first character must be a lowercase letter, and all
27441
+ following characters must be a dash, lowercase letter, or digit,
27442
+ except the last character, which cannot be a dash.
27443
+ """
27444
+ pulumi.set(__self__, "key", key)
27445
+ pulumi.set(__self__, "name", name)
27446
+
27447
+ @property
27448
+ @pulumi.getter
27449
+ def key(self) -> pulumi.Input[str]:
27450
+ return pulumi.get(self, "key")
27451
+
27452
+ @key.setter
27453
+ def key(self, value: pulumi.Input[str]):
27454
+ pulumi.set(self, "key", value)
27455
+
27456
+ @property
27457
+ @pulumi.getter
27458
+ def name(self) -> pulumi.Input[str]:
27459
+ """
27460
+ Name of this BGP peer. The name must be 1-63 characters long,
27461
+ and comply with RFC1035. Specifically, the name must be 1-63 characters
27462
+ long and match the regular expression `a-z?` which
27463
+ means the first character must be a lowercase letter, and all
27464
+ following characters must be a dash, lowercase letter, or digit,
27465
+ except the last character, which cannot be a dash.
27466
+ """
27467
+ return pulumi.get(self, "name")
27468
+
27469
+ @name.setter
27470
+ def name(self, value: pulumi.Input[str]):
27471
+ pulumi.set(self, "name", value)
27472
+
27473
+
27294
27474
  @pulumi.input_type
27295
27475
  class SecurityPolicyAdaptiveProtectionConfigArgs:
27296
27476
  def __init__(__self__, *,
@@ -22,7 +22,7 @@ class GetInstanceTemplateResult:
22
22
  """
23
23
  A collection of values returned by getInstanceTemplate.
24
24
  """
25
- def __init__(__self__, advanced_machine_features=None, can_ip_forward=None, confidential_instance_configs=None, description=None, disks=None, effective_labels=None, enable_display=None, filter=None, guest_accelerators=None, id=None, instance_description=None, labels=None, machine_type=None, metadata=None, metadata_fingerprint=None, metadata_startup_script=None, min_cpu_platform=None, most_recent=None, name=None, name_prefix=None, network_interfaces=None, network_performance_configs=None, project=None, pulumi_labels=None, region=None, reservation_affinities=None, resource_policies=None, schedulings=None, self_link=None, self_link_unique=None, service_accounts=None, shielded_instance_configs=None, tags=None, tags_fingerprint=None):
25
+ def __init__(__self__, advanced_machine_features=None, can_ip_forward=None, confidential_instance_configs=None, description=None, disks=None, effective_labels=None, enable_display=None, filter=None, guest_accelerators=None, id=None, instance_description=None, labels=None, machine_type=None, metadata=None, metadata_fingerprint=None, metadata_startup_script=None, min_cpu_platform=None, most_recent=None, name=None, name_prefix=None, network_interfaces=None, network_performance_configs=None, project=None, pulumi_labels=None, region=None, reservation_affinities=None, resource_manager_tags=None, resource_policies=None, schedulings=None, self_link=None, self_link_unique=None, service_accounts=None, shielded_instance_configs=None, tags=None, tags_fingerprint=None):
26
26
  if advanced_machine_features and not isinstance(advanced_machine_features, list):
27
27
  raise TypeError("Expected argument 'advanced_machine_features' to be a list")
28
28
  pulumi.set(__self__, "advanced_machine_features", advanced_machine_features)
@@ -101,6 +101,9 @@ class GetInstanceTemplateResult:
101
101
  if reservation_affinities and not isinstance(reservation_affinities, list):
102
102
  raise TypeError("Expected argument 'reservation_affinities' to be a list")
103
103
  pulumi.set(__self__, "reservation_affinities", reservation_affinities)
104
+ if resource_manager_tags and not isinstance(resource_manager_tags, dict):
105
+ raise TypeError("Expected argument 'resource_manager_tags' to be a dict")
106
+ pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
104
107
  if resource_policies and not isinstance(resource_policies, list):
105
108
  raise TypeError("Expected argument 'resource_policies' to be a list")
106
109
  pulumi.set(__self__, "resource_policies", resource_policies)
@@ -333,6 +336,11 @@ class GetInstanceTemplateResult:
333
336
  def reservation_affinities(self) -> Sequence['outputs.GetInstanceTemplateReservationAffinityResult']:
334
337
  return pulumi.get(self, "reservation_affinities")
335
338
 
339
+ @property
340
+ @pulumi.getter(name="resourceManagerTags")
341
+ def resource_manager_tags(self) -> Mapping[str, str]:
342
+ return pulumi.get(self, "resource_manager_tags")
343
+
336
344
  @property
337
345
  @pulumi.getter(name="resourcePolicies")
338
346
  def resource_policies(self) -> Sequence[str]:
@@ -433,6 +441,7 @@ class AwaitableGetInstanceTemplateResult(GetInstanceTemplateResult):
433
441
  pulumi_labels=self.pulumi_labels,
434
442
  region=self.region,
435
443
  reservation_affinities=self.reservation_affinities,
444
+ resource_manager_tags=self.resource_manager_tags,
436
445
  resource_policies=self.resource_policies,
437
446
  schedulings=self.schedulings,
438
447
  self_link=self.self_link,
@@ -515,6 +524,7 @@ def get_instance_template(filter: Optional[str] = None,
515
524
  pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
516
525
  region=pulumi.get(__ret__, 'region'),
517
526
  reservation_affinities=pulumi.get(__ret__, 'reservation_affinities'),
527
+ resource_manager_tags=pulumi.get(__ret__, 'resource_manager_tags'),
518
528
  resource_policies=pulumi.get(__ret__, 'resource_policies'),
519
529
  schedulings=pulumi.get(__ret__, 'schedulings'),
520
530
  self_link=pulumi.get(__ret__, 'self_link'),
@@ -22,7 +22,7 @@ class GetRegionInstanceTemplateResult:
22
22
  """
23
23
  A collection of values returned by getRegionInstanceTemplate.
24
24
  """
25
- def __init__(__self__, advanced_machine_features=None, can_ip_forward=None, confidential_instance_configs=None, description=None, disks=None, effective_labels=None, enable_display=None, filter=None, guest_accelerators=None, id=None, instance_description=None, labels=None, machine_type=None, metadata=None, metadata_fingerprint=None, metadata_startup_script=None, min_cpu_platform=None, most_recent=None, name=None, name_prefix=None, network_interfaces=None, network_performance_configs=None, project=None, pulumi_labels=None, region=None, reservation_affinities=None, resource_policies=None, schedulings=None, self_link=None, service_accounts=None, shielded_instance_configs=None, tags=None, tags_fingerprint=None):
25
+ def __init__(__self__, advanced_machine_features=None, can_ip_forward=None, confidential_instance_configs=None, description=None, disks=None, effective_labels=None, enable_display=None, filter=None, guest_accelerators=None, id=None, instance_description=None, labels=None, machine_type=None, metadata=None, metadata_fingerprint=None, metadata_startup_script=None, min_cpu_platform=None, most_recent=None, name=None, name_prefix=None, network_interfaces=None, network_performance_configs=None, project=None, pulumi_labels=None, region=None, reservation_affinities=None, resource_manager_tags=None, resource_policies=None, schedulings=None, self_link=None, service_accounts=None, shielded_instance_configs=None, tags=None, tags_fingerprint=None):
26
26
  if advanced_machine_features and not isinstance(advanced_machine_features, list):
27
27
  raise TypeError("Expected argument 'advanced_machine_features' to be a list")
28
28
  pulumi.set(__self__, "advanced_machine_features", advanced_machine_features)
@@ -101,6 +101,9 @@ class GetRegionInstanceTemplateResult:
101
101
  if reservation_affinities and not isinstance(reservation_affinities, list):
102
102
  raise TypeError("Expected argument 'reservation_affinities' to be a list")
103
103
  pulumi.set(__self__, "reservation_affinities", reservation_affinities)
104
+ if resource_manager_tags and not isinstance(resource_manager_tags, dict):
105
+ raise TypeError("Expected argument 'resource_manager_tags' to be a dict")
106
+ pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
104
107
  if resource_policies and not isinstance(resource_policies, list):
105
108
  raise TypeError("Expected argument 'resource_policies' to be a list")
106
109
  pulumi.set(__self__, "resource_policies", resource_policies)
@@ -323,6 +326,11 @@ class GetRegionInstanceTemplateResult:
323
326
  def reservation_affinities(self) -> Sequence['outputs.GetRegionInstanceTemplateReservationAffinityResult']:
324
327
  return pulumi.get(self, "reservation_affinities")
325
328
 
329
+ @property
330
+ @pulumi.getter(name="resourceManagerTags")
331
+ def resource_manager_tags(self) -> Mapping[str, str]:
332
+ return pulumi.get(self, "resource_manager_tags")
333
+
326
334
  @property
327
335
  @pulumi.getter(name="resourcePolicies")
328
336
  def resource_policies(self) -> Sequence[str]:
@@ -414,6 +422,7 @@ class AwaitableGetRegionInstanceTemplateResult(GetRegionInstanceTemplateResult):
414
422
  pulumi_labels=self.pulumi_labels,
415
423
  region=self.region,
416
424
  reservation_affinities=self.reservation_affinities,
425
+ resource_manager_tags=self.resource_manager_tags,
417
426
  resource_policies=self.resource_policies,
418
427
  schedulings=self.schedulings,
419
428
  self_link=self.self_link,
@@ -493,6 +502,7 @@ def get_region_instance_template(filter: Optional[str] = None,
493
502
  pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
494
503
  region=pulumi.get(__ret__, 'region'),
495
504
  reservation_affinities=pulumi.get(__ret__, 'reservation_affinities'),
505
+ resource_manager_tags=pulumi.get(__ret__, 'resource_manager_tags'),
496
506
  resource_policies=pulumi.get(__ret__, 'resource_policies'),
497
507
  schedulings=pulumi.get(__ret__, 'schedulings'),
498
508
  self_link=pulumi.get(__ret__, 'self_link'),
@@ -0,0 +1,212 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'GetReservationResult',
15
+ 'AwaitableGetReservationResult',
16
+ 'get_reservation',
17
+ 'get_reservation_output',
18
+ ]
19
+
20
+ @pulumi.output_type
21
+ class GetReservationResult:
22
+ """
23
+ A collection of values returned by getReservation.
24
+ """
25
+ def __init__(__self__, commitment=None, creation_timestamp=None, description=None, id=None, name=None, project=None, self_link=None, share_settings=None, specific_reservation_required=None, specific_reservations=None, status=None, zone=None):
26
+ if commitment and not isinstance(commitment, str):
27
+ raise TypeError("Expected argument 'commitment' to be a str")
28
+ pulumi.set(__self__, "commitment", commitment)
29
+ if creation_timestamp and not isinstance(creation_timestamp, str):
30
+ raise TypeError("Expected argument 'creation_timestamp' to be a str")
31
+ pulumi.set(__self__, "creation_timestamp", creation_timestamp)
32
+ if description and not isinstance(description, str):
33
+ raise TypeError("Expected argument 'description' to be a str")
34
+ pulumi.set(__self__, "description", description)
35
+ if id and not isinstance(id, str):
36
+ raise TypeError("Expected argument 'id' to be a str")
37
+ pulumi.set(__self__, "id", id)
38
+ if name and not isinstance(name, str):
39
+ raise TypeError("Expected argument 'name' to be a str")
40
+ pulumi.set(__self__, "name", name)
41
+ if project and not isinstance(project, str):
42
+ raise TypeError("Expected argument 'project' to be a str")
43
+ pulumi.set(__self__, "project", project)
44
+ if self_link and not isinstance(self_link, str):
45
+ raise TypeError("Expected argument 'self_link' to be a str")
46
+ pulumi.set(__self__, "self_link", self_link)
47
+ if share_settings and not isinstance(share_settings, list):
48
+ raise TypeError("Expected argument 'share_settings' to be a list")
49
+ pulumi.set(__self__, "share_settings", share_settings)
50
+ if specific_reservation_required and not isinstance(specific_reservation_required, bool):
51
+ raise TypeError("Expected argument 'specific_reservation_required' to be a bool")
52
+ pulumi.set(__self__, "specific_reservation_required", specific_reservation_required)
53
+ if specific_reservations and not isinstance(specific_reservations, list):
54
+ raise TypeError("Expected argument 'specific_reservations' to be a list")
55
+ pulumi.set(__self__, "specific_reservations", specific_reservations)
56
+ if status and not isinstance(status, str):
57
+ raise TypeError("Expected argument 'status' to be a str")
58
+ pulumi.set(__self__, "status", status)
59
+ if zone and not isinstance(zone, str):
60
+ raise TypeError("Expected argument 'zone' to be a str")
61
+ pulumi.set(__self__, "zone", zone)
62
+
63
+ @property
64
+ @pulumi.getter
65
+ def commitment(self) -> str:
66
+ return pulumi.get(self, "commitment")
67
+
68
+ @property
69
+ @pulumi.getter(name="creationTimestamp")
70
+ def creation_timestamp(self) -> str:
71
+ return pulumi.get(self, "creation_timestamp")
72
+
73
+ @property
74
+ @pulumi.getter
75
+ def description(self) -> str:
76
+ return pulumi.get(self, "description")
77
+
78
+ @property
79
+ @pulumi.getter
80
+ def id(self) -> str:
81
+ """
82
+ The provider-assigned unique ID for this managed resource.
83
+ """
84
+ return pulumi.get(self, "id")
85
+
86
+ @property
87
+ @pulumi.getter
88
+ def name(self) -> str:
89
+ return pulumi.get(self, "name")
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def project(self) -> Optional[str]:
94
+ return pulumi.get(self, "project")
95
+
96
+ @property
97
+ @pulumi.getter(name="selfLink")
98
+ def self_link(self) -> str:
99
+ return pulumi.get(self, "self_link")
100
+
101
+ @property
102
+ @pulumi.getter(name="shareSettings")
103
+ def share_settings(self) -> Sequence['outputs.GetReservationShareSettingResult']:
104
+ return pulumi.get(self, "share_settings")
105
+
106
+ @property
107
+ @pulumi.getter(name="specificReservationRequired")
108
+ def specific_reservation_required(self) -> bool:
109
+ return pulumi.get(self, "specific_reservation_required")
110
+
111
+ @property
112
+ @pulumi.getter(name="specificReservations")
113
+ def specific_reservations(self) -> Sequence['outputs.GetReservationSpecificReservationResult']:
114
+ return pulumi.get(self, "specific_reservations")
115
+
116
+ @property
117
+ @pulumi.getter
118
+ def status(self) -> str:
119
+ return pulumi.get(self, "status")
120
+
121
+ @property
122
+ @pulumi.getter
123
+ def zone(self) -> str:
124
+ return pulumi.get(self, "zone")
125
+
126
+
127
+ class AwaitableGetReservationResult(GetReservationResult):
128
+ # pylint: disable=using-constant-test
129
+ def __await__(self):
130
+ if False:
131
+ yield self
132
+ return GetReservationResult(
133
+ commitment=self.commitment,
134
+ creation_timestamp=self.creation_timestamp,
135
+ description=self.description,
136
+ id=self.id,
137
+ name=self.name,
138
+ project=self.project,
139
+ self_link=self.self_link,
140
+ share_settings=self.share_settings,
141
+ specific_reservation_required=self.specific_reservation_required,
142
+ specific_reservations=self.specific_reservations,
143
+ status=self.status,
144
+ zone=self.zone)
145
+
146
+
147
+ def get_reservation(name: Optional[str] = None,
148
+ project: Optional[str] = None,
149
+ zone: Optional[str] = None,
150
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetReservationResult:
151
+ """
152
+ Provides access to available Google Compute Reservation Resources for a given project.
153
+ See more about [Reservations of Compute Engine resources](https://cloud.google.com/compute/docs/instances/reservations-overview) in the upstream docs.
154
+
155
+ ```python
156
+ import pulumi
157
+ import pulumi_gcp as gcp
158
+
159
+ reservation = gcp.compute.get_reservation(name="gce-reservation",
160
+ zone="us-central1-a")
161
+ ```
162
+
163
+
164
+ :param str name: The name of the Compute Reservation.
165
+ :param str project: Project from which to list the Compute Reservation. Defaults to project declared in the provider.
166
+ :param str zone: Zone where the Compute Reservation resides.
167
+ """
168
+ __args__ = dict()
169
+ __args__['name'] = name
170
+ __args__['project'] = project
171
+ __args__['zone'] = zone
172
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
173
+ __ret__ = pulumi.runtime.invoke('gcp:compute/getReservation:getReservation', __args__, opts=opts, typ=GetReservationResult).value
174
+
175
+ return AwaitableGetReservationResult(
176
+ commitment=pulumi.get(__ret__, 'commitment'),
177
+ creation_timestamp=pulumi.get(__ret__, 'creation_timestamp'),
178
+ description=pulumi.get(__ret__, 'description'),
179
+ id=pulumi.get(__ret__, 'id'),
180
+ name=pulumi.get(__ret__, 'name'),
181
+ project=pulumi.get(__ret__, 'project'),
182
+ self_link=pulumi.get(__ret__, 'self_link'),
183
+ share_settings=pulumi.get(__ret__, 'share_settings'),
184
+ specific_reservation_required=pulumi.get(__ret__, 'specific_reservation_required'),
185
+ specific_reservations=pulumi.get(__ret__, 'specific_reservations'),
186
+ status=pulumi.get(__ret__, 'status'),
187
+ zone=pulumi.get(__ret__, 'zone'))
188
+
189
+
190
+ @_utilities.lift_output_func(get_reservation)
191
+ def get_reservation_output(name: Optional[pulumi.Input[str]] = None,
192
+ project: Optional[pulumi.Input[Optional[str]]] = None,
193
+ zone: Optional[pulumi.Input[str]] = None,
194
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetReservationResult]:
195
+ """
196
+ Provides access to available Google Compute Reservation Resources for a given project.
197
+ See more about [Reservations of Compute Engine resources](https://cloud.google.com/compute/docs/instances/reservations-overview) in the upstream docs.
198
+
199
+ ```python
200
+ import pulumi
201
+ import pulumi_gcp as gcp
202
+
203
+ reservation = gcp.compute.get_reservation(name="gce-reservation",
204
+ zone="us-central1-a")
205
+ ```
206
+
207
+
208
+ :param str name: The name of the Compute Reservation.
209
+ :param str project: Project from which to list the Compute Reservation. Defaults to project declared in the provider.
210
+ :param str zone: Zone where the Compute Reservation resides.
211
+ """
212
+ ...