pulumi-gcp 8.1.0a1726293903__py3-none-any.whl → 8.2.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.
Files changed (128) hide show
  1. pulumi_gcp/__init__.py +62 -0
  2. pulumi_gcp/alloydb/_inputs.py +94 -0
  3. pulumi_gcp/alloydb/cluster.py +94 -1
  4. pulumi_gcp/alloydb/outputs.py +79 -0
  5. pulumi_gcp/assuredworkloads/workload.py +135 -16
  6. pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
  7. pulumi_gcp/backupdisasterrecovery/backup_vault.py +1203 -0
  8. pulumi_gcp/bigquery/__init__.py +1 -0
  9. pulumi_gcp/bigquery/_inputs.py +33 -0
  10. pulumi_gcp/bigquery/data_transfer_config.py +134 -6
  11. pulumi_gcp/bigquery/get_tables.py +143 -0
  12. pulumi_gcp/bigquery/outputs.py +66 -0
  13. pulumi_gcp/bigqueryanalyticshub/_inputs.py +169 -7
  14. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +96 -3
  15. pulumi_gcp/bigqueryanalyticshub/listing.py +114 -0
  16. pulumi_gcp/bigqueryanalyticshub/outputs.py +138 -5
  17. pulumi_gcp/bigtable/_inputs.py +21 -1
  18. pulumi_gcp/bigtable/outputs.py +13 -1
  19. pulumi_gcp/bigtable/table.py +34 -0
  20. pulumi_gcp/certificateauthority/authority.py +14 -7
  21. pulumi_gcp/certificatemanager/__init__.py +1 -0
  22. pulumi_gcp/certificatemanager/certificate.py +28 -0
  23. pulumi_gcp/certificatemanager/get_certificates.py +150 -0
  24. pulumi_gcp/certificatemanager/outputs.py +322 -0
  25. pulumi_gcp/cloudbuild/_inputs.py +6 -6
  26. pulumi_gcp/cloudbuild/outputs.py +4 -4
  27. pulumi_gcp/cloudrun/_inputs.py +6 -12
  28. pulumi_gcp/cloudrun/outputs.py +8 -16
  29. pulumi_gcp/cloudrunv2/_inputs.py +72 -15
  30. pulumi_gcp/cloudrunv2/outputs.py +82 -16
  31. pulumi_gcp/cloudrunv2/service.py +50 -4
  32. pulumi_gcp/cloudtasks/_inputs.py +630 -0
  33. pulumi_gcp/cloudtasks/outputs.py +479 -0
  34. pulumi_gcp/cloudtasks/queue.py +238 -0
  35. pulumi_gcp/compute/__init__.py +1 -0
  36. pulumi_gcp/compute/_inputs.py +2300 -257
  37. pulumi_gcp/compute/get_instance.py +4 -1
  38. pulumi_gcp/compute/health_check.py +114 -0
  39. pulumi_gcp/compute/instance.py +86 -4
  40. pulumi_gcp/compute/instance_template.py +66 -0
  41. pulumi_gcp/compute/interconnect.py +28 -21
  42. pulumi_gcp/compute/network_firewall_policy_with_rules.py +826 -0
  43. pulumi_gcp/compute/node_template.py +93 -0
  44. pulumi_gcp/compute/outputs.py +1491 -6
  45. pulumi_gcp/compute/region_target_http_proxy.py +159 -0
  46. pulumi_gcp/compute/region_target_https_proxy.py +175 -0
  47. pulumi_gcp/compute/service_attachment.py +75 -0
  48. pulumi_gcp/compute/target_http_proxy.py +49 -28
  49. pulumi_gcp/compute/target_https_proxy.py +77 -28
  50. pulumi_gcp/config/__init__.pyi +4 -0
  51. pulumi_gcp/config/vars.py +8 -0
  52. pulumi_gcp/container/_inputs.py +236 -3
  53. pulumi_gcp/container/attached_cluster.py +61 -8
  54. pulumi_gcp/container/outputs.py +276 -2
  55. pulumi_gcp/databasemigrationservice/_inputs.py +176 -148
  56. pulumi_gcp/databasemigrationservice/connection_profile.py +206 -0
  57. pulumi_gcp/databasemigrationservice/outputs.py +109 -87
  58. pulumi_gcp/dataloss/_inputs.py +353 -1
  59. pulumi_gcp/dataloss/outputs.py +274 -3
  60. pulumi_gcp/dataproc/_inputs.py +27 -27
  61. pulumi_gcp/dataproc/metastore_federation.py +8 -8
  62. pulumi_gcp/dataproc/metastore_service.py +2 -0
  63. pulumi_gcp/dataproc/outputs.py +18 -18
  64. pulumi_gcp/datastream/_inputs.py +69 -1
  65. pulumi_gcp/datastream/outputs.py +44 -2
  66. pulumi_gcp/datastream/stream.py +201 -7
  67. pulumi_gcp/developerconnect/__init__.py +11 -0
  68. pulumi_gcp/developerconnect/_inputs.py +301 -0
  69. pulumi_gcp/developerconnect/connection.py +1034 -0
  70. pulumi_gcp/developerconnect/git_repository_link.py +873 -0
  71. pulumi_gcp/developerconnect/outputs.py +247 -0
  72. pulumi_gcp/discoveryengine/_inputs.py +188 -0
  73. pulumi_gcp/discoveryengine/data_store.py +14 -14
  74. pulumi_gcp/discoveryengine/outputs.py +153 -1
  75. pulumi_gcp/firebase/database_instance.py +7 -7
  76. pulumi_gcp/gkehub/_inputs.py +25 -1
  77. pulumi_gcp/gkehub/feature_membership.py +12 -6
  78. pulumi_gcp/gkehub/outputs.py +17 -1
  79. pulumi_gcp/gkeonprem/_inputs.py +3 -3
  80. pulumi_gcp/gkeonprem/outputs.py +2 -2
  81. pulumi_gcp/iam/_inputs.py +196 -0
  82. pulumi_gcp/iam/get_workload_identity_pool_provider.py +13 -3
  83. pulumi_gcp/iam/outputs.py +295 -0
  84. pulumi_gcp/iam/workload_identity_pool_provider.py +164 -3
  85. pulumi_gcp/kms/__init__.py +2 -0
  86. pulumi_gcp/kms/autokey_config.py +10 -2
  87. pulumi_gcp/kms/get_crypto_key_latest_version.py +222 -0
  88. pulumi_gcp/kms/get_crypto_key_versions.py +175 -0
  89. pulumi_gcp/kms/outputs.py +164 -0
  90. pulumi_gcp/memorystore/__init__.py +10 -0
  91. pulumi_gcp/memorystore/_inputs.py +731 -0
  92. pulumi_gcp/memorystore/instance.py +1663 -0
  93. pulumi_gcp/memorystore/outputs.py +598 -0
  94. pulumi_gcp/netapp/active_directory.py +6 -6
  95. pulumi_gcp/netapp/backup.py +6 -6
  96. pulumi_gcp/netapp/backup_policy.py +6 -6
  97. pulumi_gcp/netapp/backup_vault.py +6 -6
  98. pulumi_gcp/netapp/storage_pool.py +4 -4
  99. pulumi_gcp/netapp/volume.py +108 -0
  100. pulumi_gcp/networkconnectivity/_inputs.py +21 -1
  101. pulumi_gcp/networkconnectivity/outputs.py +15 -1
  102. pulumi_gcp/networkconnectivity/spoke.py +8 -0
  103. pulumi_gcp/networksecurity/client_tls_policy.py +24 -22
  104. pulumi_gcp/networksecurity/server_tls_policy.py +20 -32
  105. pulumi_gcp/organizations/folder.py +52 -33
  106. pulumi_gcp/organizations/get_project.py +13 -3
  107. pulumi_gcp/organizations/project.py +88 -3
  108. pulumi_gcp/parallelstore/instance.py +121 -121
  109. pulumi_gcp/projects/iam_member_remove.py +26 -0
  110. pulumi_gcp/projects/usage_export_bucket.py +38 -0
  111. pulumi_gcp/provider.py +40 -0
  112. pulumi_gcp/pubsub/_inputs.py +40 -0
  113. pulumi_gcp/pubsub/outputs.py +51 -1
  114. pulumi_gcp/pubsub/subscription.py +6 -0
  115. pulumi_gcp/pulumi-plugin.json +1 -1
  116. pulumi_gcp/redis/_inputs.py +419 -0
  117. pulumi_gcp/redis/cluster.py +123 -0
  118. pulumi_gcp/redis/outputs.py +315 -0
  119. pulumi_gcp/securitycenter/__init__.py +2 -0
  120. pulumi_gcp/securitycenter/v2_folder_scc_big_query_export.py +857 -0
  121. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +4 -4
  122. pulumi_gcp/securitycenter/v2_project_mute_config.py +2 -2
  123. pulumi_gcp/securitycenter/v2_project_scc_big_query_export.py +796 -0
  124. pulumi_gcp/vpcaccess/connector.py +21 -28
  125. {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.2.0.dist-info}/METADATA +1 -1
  126. {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.2.0.dist-info}/RECORD +128 -111
  127. {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.2.0.dist-info}/WHEEL +1 -1
  128. {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.2.0.dist-info}/top_level.txt +0 -0
@@ -468,7 +468,7 @@ class Backup(pulumi.CustomResource):
468
468
  from a volume or from an existing volume snapshot. Scheduled backups
469
469
  require a backup policy.
470
470
 
471
- To get more information about backup, see:
471
+ To get more information about Backup, see:
472
472
 
473
473
  * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupVaults.backups)
474
474
  * How-to Guides
@@ -512,7 +512,7 @@ class Backup(pulumi.CustomResource):
512
512
 
513
513
  ## Import
514
514
 
515
- backup can be imported using any of these accepted formats:
515
+ Backup can be imported using any of these accepted formats:
516
516
 
517
517
  * `projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}`
518
518
 
@@ -520,7 +520,7 @@ class Backup(pulumi.CustomResource):
520
520
 
521
521
  * `{{location}}/{{vault_name}}/{{name}}`
522
522
 
523
- When using the `pulumi import` command, backup can be imported using one of the formats above. For example:
523
+ When using the `pulumi import` command, Backup can be imported using one of the formats above. For example:
524
524
 
525
525
  ```sh
526
526
  $ pulumi import gcp:netapp/backup:Backup default projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}
@@ -576,7 +576,7 @@ class Backup(pulumi.CustomResource):
576
576
  from a volume or from an existing volume snapshot. Scheduled backups
577
577
  require a backup policy.
578
578
 
579
- To get more information about backup, see:
579
+ To get more information about Backup, see:
580
580
 
581
581
  * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupVaults.backups)
582
582
  * How-to Guides
@@ -620,7 +620,7 @@ class Backup(pulumi.CustomResource):
620
620
 
621
621
  ## Import
622
622
 
623
- backup can be imported using any of these accepted formats:
623
+ Backup can be imported using any of these accepted formats:
624
624
 
625
625
  * `projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}`
626
626
 
@@ -628,7 +628,7 @@ class Backup(pulumi.CustomResource):
628
628
 
629
629
  * `{{location}}/{{vault_name}}/{{name}}`
630
630
 
631
- When using the `pulumi import` command, backup can be imported using one of the formats above. For example:
631
+ When using the `pulumi import` command, Backup can be imported using one of the formats above. For example:
632
632
 
633
633
  ```sh
634
634
  $ pulumi import gcp:netapp/backup:Backup default projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}
@@ -450,7 +450,7 @@ class BackupPolicy(pulumi.CustomResource):
450
450
  Backup policies allow you to attach a backup schedule to a volume.
451
451
  The policy defines how many backups to retain at daily, weekly, or monthly intervals.
452
452
 
453
- To get more information about backupPolicy, see:
453
+ To get more information about BackupPolicy, see:
454
454
 
455
455
  * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupPolicies)
456
456
  * How-to Guides
@@ -479,7 +479,7 @@ class BackupPolicy(pulumi.CustomResource):
479
479
 
480
480
  ## Import
481
481
 
482
- backupPolicy can be imported using any of these accepted formats:
482
+ BackupPolicy can be imported using any of these accepted formats:
483
483
 
484
484
  * `projects/{{project}}/locations/{{location}}/backupPolicies/{{name}}`
485
485
 
@@ -487,7 +487,7 @@ class BackupPolicy(pulumi.CustomResource):
487
487
 
488
488
  * `{{location}}/{{name}}`
489
489
 
490
- When using the `pulumi import` command, backupPolicy can be imported using one of the formats above. For example:
490
+ When using the `pulumi import` command, BackupPolicy can be imported using one of the formats above. For example:
491
491
 
492
492
  ```sh
493
493
  $ pulumi import gcp:netapp/backupPolicy:BackupPolicy default projects/{{project}}/locations/{{location}}/backupPolicies/{{name}}
@@ -532,7 +532,7 @@ class BackupPolicy(pulumi.CustomResource):
532
532
  Backup policies allow you to attach a backup schedule to a volume.
533
533
  The policy defines how many backups to retain at daily, weekly, or monthly intervals.
534
534
 
535
- To get more information about backupPolicy, see:
535
+ To get more information about BackupPolicy, see:
536
536
 
537
537
  * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupPolicies)
538
538
  * How-to Guides
@@ -561,7 +561,7 @@ class BackupPolicy(pulumi.CustomResource):
561
561
 
562
562
  ## Import
563
563
 
564
- backupPolicy can be imported using any of these accepted formats:
564
+ BackupPolicy can be imported using any of these accepted formats:
565
565
 
566
566
  * `projects/{{project}}/locations/{{location}}/backupPolicies/{{name}}`
567
567
 
@@ -569,7 +569,7 @@ class BackupPolicy(pulumi.CustomResource):
569
569
 
570
570
  * `{{location}}/{{name}}`
571
571
 
572
- When using the `pulumi import` command, backupPolicy can be imported using one of the formats above. For example:
572
+ When using the `pulumi import` command, BackupPolicy can be imported using one of the formats above. For example:
573
573
 
574
574
  ```sh
575
575
  $ pulumi import gcp:netapp/backupPolicy:BackupPolicy default projects/{{project}}/locations/{{location}}/backupPolicies/{{name}}
@@ -300,7 +300,7 @@ class BackupVault(pulumi.CustomResource):
300
300
  A backup vault is the location where backups are stored. You can only create one backup vault per region.
301
301
  A vault can hold multiple backups for multiple volumes in that region.
302
302
 
303
- To get more information about backupVault, see:
303
+ To get more information about BackupVault, see:
304
304
 
305
305
  * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupVaults)
306
306
  * How-to Guides
@@ -325,7 +325,7 @@ class BackupVault(pulumi.CustomResource):
325
325
 
326
326
  ## Import
327
327
 
328
- backupVault can be imported using any of these accepted formats:
328
+ BackupVault can be imported using any of these accepted formats:
329
329
 
330
330
  * `projects/{{project}}/locations/{{location}}/backupVaults/{{name}}`
331
331
 
@@ -333,7 +333,7 @@ class BackupVault(pulumi.CustomResource):
333
333
 
334
334
  * `{{location}}/{{name}}`
335
335
 
336
- When using the `pulumi import` command, backupVault can be imported using one of the formats above. For example:
336
+ When using the `pulumi import` command, BackupVault can be imported using one of the formats above. For example:
337
337
 
338
338
  ```sh
339
339
  $ pulumi import gcp:netapp/backupVault:BackupVault default projects/{{project}}/locations/{{location}}/backupVaults/{{name}}
@@ -372,7 +372,7 @@ class BackupVault(pulumi.CustomResource):
372
372
  A backup vault is the location where backups are stored. You can only create one backup vault per region.
373
373
  A vault can hold multiple backups for multiple volumes in that region.
374
374
 
375
- To get more information about backupVault, see:
375
+ To get more information about BackupVault, see:
376
376
 
377
377
  * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupVaults)
378
378
  * How-to Guides
@@ -397,7 +397,7 @@ class BackupVault(pulumi.CustomResource):
397
397
 
398
398
  ## Import
399
399
 
400
- backupVault can be imported using any of these accepted formats:
400
+ BackupVault can be imported using any of these accepted formats:
401
401
 
402
402
  * `projects/{{project}}/locations/{{location}}/backupVaults/{{name}}`
403
403
 
@@ -405,7 +405,7 @@ class BackupVault(pulumi.CustomResource):
405
405
 
406
406
  * `{{location}}/{{name}}`
407
407
 
408
- When using the `pulumi import` command, backupVault can be imported using one of the formats above. For example:
408
+ When using the `pulumi import` command, BackupVault can be imported using one of the formats above. For example:
409
409
 
410
410
  ```sh
411
411
  $ pulumi import gcp:netapp/backupVault:BackupVault default projects/{{project}}/locations/{{location}}/backupVaults/{{name}}
@@ -645,7 +645,7 @@ class StoragePool(pulumi.CustomResource):
645
645
 
646
646
  ## Import
647
647
 
648
- storagePool can be imported using any of these accepted formats:
648
+ StoragePool can be imported using any of these accepted formats:
649
649
 
650
650
  * `projects/{{project}}/locations/{{location}}/storagePools/{{name}}`
651
651
 
@@ -653,7 +653,7 @@ class StoragePool(pulumi.CustomResource):
653
653
 
654
654
  * `{{location}}/{{name}}`
655
655
 
656
- When using the `pulumi import` command, storagePool can be imported using one of the formats above. For example:
656
+ When using the `pulumi import` command, StoragePool can be imported using one of the formats above. For example:
657
657
 
658
658
  ```sh
659
659
  $ pulumi import gcp:netapp/storagePool:StoragePool default projects/{{project}}/locations/{{location}}/storagePools/{{name}}
@@ -747,7 +747,7 @@ class StoragePool(pulumi.CustomResource):
747
747
 
748
748
  ## Import
749
749
 
750
- storagePool can be imported using any of these accepted formats:
750
+ StoragePool can be imported using any of these accepted formats:
751
751
 
752
752
  * `projects/{{project}}/locations/{{location}}/storagePools/{{name}}`
753
753
 
@@ -755,7 +755,7 @@ class StoragePool(pulumi.CustomResource):
755
755
 
756
756
  * `{{location}}/{{name}}`
757
757
 
758
- When using the `pulumi import` command, storagePool can be imported using one of the formats above. For example:
758
+ When using the `pulumi import` command, StoragePool can be imported using one of the formats above. For example:
759
759
 
760
760
  ```sh
761
761
  $ pulumi import gcp:netapp/storagePool:StoragePool default projects/{{project}}/locations/{{location}}/storagePools/{{name}}
@@ -32,6 +32,8 @@ class VolumeArgs:
32
32
  export_policy: Optional[pulumi.Input['VolumeExportPolicyArgs']] = None,
33
33
  kerberos_enabled: Optional[pulumi.Input[bool]] = None,
34
34
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
35
+ large_capacity: Optional[pulumi.Input[bool]] = None,
36
+ multiple_endpoints: Optional[pulumi.Input[bool]] = None,
35
37
  name: Optional[pulumi.Input[str]] = None,
36
38
  project: Optional[pulumi.Input[str]] = None,
37
39
  restore_parameters: Optional[pulumi.Input['VolumeRestoreParametersArgs']] = None,
@@ -54,6 +56,7 @@ class VolumeArgs:
54
56
  :param pulumi.Input[str] deletion_policy: Policy to determine if the volume should be deleted forcefully.
55
57
  Volumes may have nested snapshot resources. Deleting such a volume will fail.
56
58
  Setting this parameter to FORCE will delete volumes including nested snapshots.
59
+ Possible values: DEFAULT, FORCE.
57
60
  :param pulumi.Input[str] description: An optional description of this resource.
58
61
  :param pulumi.Input['VolumeExportPolicyArgs'] export_policy: Export policy of the volume for NFSV3 and/or NFSV4.1 access.
59
62
  Structure is documented below.
@@ -62,6 +65,9 @@ class VolumeArgs:
62
65
 
63
66
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
64
67
  Please refer to the field `effective_labels` for all of the labels present on the resource.
68
+ :param pulumi.Input[bool] large_capacity: Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
69
+ :param pulumi.Input[bool] multiple_endpoints: Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints.
70
+ Only the volume with largeCapacity will be allowed to have multiple endpoints.
65
71
  :param pulumi.Input[str] name: The name of the volume. Needs to be unique per location.
66
72
 
67
73
 
@@ -100,6 +106,10 @@ class VolumeArgs:
100
106
  pulumi.set(__self__, "kerberos_enabled", kerberos_enabled)
101
107
  if labels is not None:
102
108
  pulumi.set(__self__, "labels", labels)
109
+ if large_capacity is not None:
110
+ pulumi.set(__self__, "large_capacity", large_capacity)
111
+ if multiple_endpoints is not None:
112
+ pulumi.set(__self__, "multiple_endpoints", multiple_endpoints)
103
113
  if name is not None:
104
114
  pulumi.set(__self__, "name", name)
105
115
  if project is not None:
@@ -200,6 +210,7 @@ class VolumeArgs:
200
210
  Policy to determine if the volume should be deleted forcefully.
201
211
  Volumes may have nested snapshot resources. Deleting such a volume will fail.
202
212
  Setting this parameter to FORCE will delete volumes including nested snapshots.
213
+ Possible values: DEFAULT, FORCE.
203
214
  """
204
215
  return pulumi.get(self, "deletion_policy")
205
216
 
@@ -259,6 +270,31 @@ class VolumeArgs:
259
270
  def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
260
271
  pulumi.set(self, "labels", value)
261
272
 
273
+ @property
274
+ @pulumi.getter(name="largeCapacity")
275
+ def large_capacity(self) -> Optional[pulumi.Input[bool]]:
276
+ """
277
+ Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
278
+ """
279
+ return pulumi.get(self, "large_capacity")
280
+
281
+ @large_capacity.setter
282
+ def large_capacity(self, value: Optional[pulumi.Input[bool]]):
283
+ pulumi.set(self, "large_capacity", value)
284
+
285
+ @property
286
+ @pulumi.getter(name="multipleEndpoints")
287
+ def multiple_endpoints(self) -> Optional[pulumi.Input[bool]]:
288
+ """
289
+ Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints.
290
+ Only the volume with largeCapacity will be allowed to have multiple endpoints.
291
+ """
292
+ return pulumi.get(self, "multiple_endpoints")
293
+
294
+ @multiple_endpoints.setter
295
+ def multiple_endpoints(self, value: Optional[pulumi.Input[bool]]):
296
+ pulumi.set(self, "multiple_endpoints", value)
297
+
262
298
  @property
263
299
  @pulumi.getter
264
300
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -395,9 +431,11 @@ class _VolumeState:
395
431
  kerberos_enabled: Optional[pulumi.Input[bool]] = None,
396
432
  kms_config: Optional[pulumi.Input[str]] = None,
397
433
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
434
+ large_capacity: Optional[pulumi.Input[bool]] = None,
398
435
  ldap_enabled: Optional[pulumi.Input[bool]] = None,
399
436
  location: Optional[pulumi.Input[str]] = None,
400
437
  mount_options: Optional[pulumi.Input[Sequence[pulumi.Input['VolumeMountOptionArgs']]]] = None,
438
+ multiple_endpoints: Optional[pulumi.Input[bool]] = None,
401
439
  name: Optional[pulumi.Input[str]] = None,
402
440
  network: Optional[pulumi.Input[str]] = None,
403
441
  project: Optional[pulumi.Input[str]] = None,
@@ -429,6 +467,7 @@ class _VolumeState:
429
467
  :param pulumi.Input[str] deletion_policy: Policy to determine if the volume should be deleted forcefully.
430
468
  Volumes may have nested snapshot resources. Deleting such a volume will fail.
431
469
  Setting this parameter to FORCE will delete volumes including nested snapshots.
470
+ Possible values: DEFAULT, FORCE.
432
471
  :param pulumi.Input[str] description: An optional description of this resource.
433
472
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
434
473
  :param pulumi.Input[str] encryption_type: Reports the data-at-rest encryption type of the volume. Inherited from storage pool.
@@ -441,10 +480,13 @@ class _VolumeState:
441
480
 
442
481
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
443
482
  Please refer to the field `effective_labels` for all of the labels present on the resource.
483
+ :param pulumi.Input[bool] large_capacity: Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
444
484
  :param pulumi.Input[bool] ldap_enabled: Flag indicating if the volume is NFS LDAP enabled or not. Inherited from storage pool.
445
485
  :param pulumi.Input[str] location: Name of the pool location. Usually a region name, expect for some STANDARD service level pools which require a zone name.
446
486
  :param pulumi.Input[Sequence[pulumi.Input['VolumeMountOptionArgs']]] mount_options: Reports mount instructions for this volume.
447
487
  Structure is documented below.
488
+ :param pulumi.Input[bool] multiple_endpoints: Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints.
489
+ Only the volume with largeCapacity will be allowed to have multiple endpoints.
448
490
  :param pulumi.Input[str] name: The name of the volume. Needs to be unique per location.
449
491
 
450
492
 
@@ -506,12 +548,16 @@ class _VolumeState:
506
548
  pulumi.set(__self__, "kms_config", kms_config)
507
549
  if labels is not None:
508
550
  pulumi.set(__self__, "labels", labels)
551
+ if large_capacity is not None:
552
+ pulumi.set(__self__, "large_capacity", large_capacity)
509
553
  if ldap_enabled is not None:
510
554
  pulumi.set(__self__, "ldap_enabled", ldap_enabled)
511
555
  if location is not None:
512
556
  pulumi.set(__self__, "location", location)
513
557
  if mount_options is not None:
514
558
  pulumi.set(__self__, "mount_options", mount_options)
559
+ if multiple_endpoints is not None:
560
+ pulumi.set(__self__, "multiple_endpoints", multiple_endpoints)
515
561
  if name is not None:
516
562
  pulumi.set(__self__, "name", name)
517
563
  if network is not None:
@@ -611,6 +657,7 @@ class _VolumeState:
611
657
  Policy to determine if the volume should be deleted forcefully.
612
658
  Volumes may have nested snapshot resources. Deleting such a volume will fail.
613
659
  Setting this parameter to FORCE will delete volumes including nested snapshots.
660
+ Possible values: DEFAULT, FORCE.
614
661
  """
615
662
  return pulumi.get(self, "deletion_policy")
616
663
 
@@ -718,6 +765,18 @@ class _VolumeState:
718
765
  def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
719
766
  pulumi.set(self, "labels", value)
720
767
 
768
+ @property
769
+ @pulumi.getter(name="largeCapacity")
770
+ def large_capacity(self) -> Optional[pulumi.Input[bool]]:
771
+ """
772
+ Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
773
+ """
774
+ return pulumi.get(self, "large_capacity")
775
+
776
+ @large_capacity.setter
777
+ def large_capacity(self, value: Optional[pulumi.Input[bool]]):
778
+ pulumi.set(self, "large_capacity", value)
779
+
721
780
  @property
722
781
  @pulumi.getter(name="ldapEnabled")
723
782
  def ldap_enabled(self) -> Optional[pulumi.Input[bool]]:
@@ -755,6 +814,19 @@ class _VolumeState:
755
814
  def mount_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VolumeMountOptionArgs']]]]):
756
815
  pulumi.set(self, "mount_options", value)
757
816
 
817
+ @property
818
+ @pulumi.getter(name="multipleEndpoints")
819
+ def multiple_endpoints(self) -> Optional[pulumi.Input[bool]]:
820
+ """
821
+ Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints.
822
+ Only the volume with largeCapacity will be allowed to have multiple endpoints.
823
+ """
824
+ return pulumi.get(self, "multiple_endpoints")
825
+
826
+ @multiple_endpoints.setter
827
+ def multiple_endpoints(self, value: Optional[pulumi.Input[bool]]):
828
+ pulumi.set(self, "multiple_endpoints", value)
829
+
758
830
  @property
759
831
  @pulumi.getter
760
832
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -1033,7 +1105,9 @@ class Volume(pulumi.CustomResource):
1033
1105
  export_policy: Optional[pulumi.Input[Union['VolumeExportPolicyArgs', 'VolumeExportPolicyArgsDict']]] = None,
1034
1106
  kerberos_enabled: Optional[pulumi.Input[bool]] = None,
1035
1107
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1108
+ large_capacity: Optional[pulumi.Input[bool]] = None,
1036
1109
  location: Optional[pulumi.Input[str]] = None,
1110
+ multiple_endpoints: Optional[pulumi.Input[bool]] = None,
1037
1111
  name: Optional[pulumi.Input[str]] = None,
1038
1112
  project: Optional[pulumi.Input[str]] = None,
1039
1113
  protocols: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
@@ -1118,6 +1192,7 @@ class Volume(pulumi.CustomResource):
1118
1192
  :param pulumi.Input[str] deletion_policy: Policy to determine if the volume should be deleted forcefully.
1119
1193
  Volumes may have nested snapshot resources. Deleting such a volume will fail.
1120
1194
  Setting this parameter to FORCE will delete volumes including nested snapshots.
1195
+ Possible values: DEFAULT, FORCE.
1121
1196
  :param pulumi.Input[str] description: An optional description of this resource.
1122
1197
  :param pulumi.Input[Union['VolumeExportPolicyArgs', 'VolumeExportPolicyArgsDict']] export_policy: Export policy of the volume for NFSV3 and/or NFSV4.1 access.
1123
1198
  Structure is documented below.
@@ -1126,7 +1201,10 @@ class Volume(pulumi.CustomResource):
1126
1201
 
1127
1202
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
1128
1203
  Please refer to the field `effective_labels` for all of the labels present on the resource.
1204
+ :param pulumi.Input[bool] large_capacity: Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
1129
1205
  :param pulumi.Input[str] location: Name of the pool location. Usually a region name, expect for some STANDARD service level pools which require a zone name.
1206
+ :param pulumi.Input[bool] multiple_endpoints: Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints.
1207
+ Only the volume with largeCapacity will be allowed to have multiple endpoints.
1130
1208
  :param pulumi.Input[str] name: The name of the volume. Needs to be unique per location.
1131
1209
 
1132
1210
 
@@ -1243,7 +1321,9 @@ class Volume(pulumi.CustomResource):
1243
1321
  export_policy: Optional[pulumi.Input[Union['VolumeExportPolicyArgs', 'VolumeExportPolicyArgsDict']]] = None,
1244
1322
  kerberos_enabled: Optional[pulumi.Input[bool]] = None,
1245
1323
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1324
+ large_capacity: Optional[pulumi.Input[bool]] = None,
1246
1325
  location: Optional[pulumi.Input[str]] = None,
1326
+ multiple_endpoints: Optional[pulumi.Input[bool]] = None,
1247
1327
  name: Optional[pulumi.Input[str]] = None,
1248
1328
  project: Optional[pulumi.Input[str]] = None,
1249
1329
  protocols: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
@@ -1274,9 +1354,11 @@ class Volume(pulumi.CustomResource):
1274
1354
  __props__.__dict__["export_policy"] = export_policy
1275
1355
  __props__.__dict__["kerberos_enabled"] = kerberos_enabled
1276
1356
  __props__.__dict__["labels"] = labels
1357
+ __props__.__dict__["large_capacity"] = large_capacity
1277
1358
  if location is None and not opts.urn:
1278
1359
  raise TypeError("Missing required property 'location'")
1279
1360
  __props__.__dict__["location"] = location
1361
+ __props__.__dict__["multiple_endpoints"] = multiple_endpoints
1280
1362
  __props__.__dict__["name"] = name
1281
1363
  __props__.__dict__["project"] = project
1282
1364
  if protocols is None and not opts.urn:
@@ -1337,9 +1419,11 @@ class Volume(pulumi.CustomResource):
1337
1419
  kerberos_enabled: Optional[pulumi.Input[bool]] = None,
1338
1420
  kms_config: Optional[pulumi.Input[str]] = None,
1339
1421
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1422
+ large_capacity: Optional[pulumi.Input[bool]] = None,
1340
1423
  ldap_enabled: Optional[pulumi.Input[bool]] = None,
1341
1424
  location: Optional[pulumi.Input[str]] = None,
1342
1425
  mount_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeMountOptionArgs', 'VolumeMountOptionArgsDict']]]]] = None,
1426
+ multiple_endpoints: Optional[pulumi.Input[bool]] = None,
1343
1427
  name: Optional[pulumi.Input[str]] = None,
1344
1428
  network: Optional[pulumi.Input[str]] = None,
1345
1429
  project: Optional[pulumi.Input[str]] = None,
@@ -1376,6 +1460,7 @@ class Volume(pulumi.CustomResource):
1376
1460
  :param pulumi.Input[str] deletion_policy: Policy to determine if the volume should be deleted forcefully.
1377
1461
  Volumes may have nested snapshot resources. Deleting such a volume will fail.
1378
1462
  Setting this parameter to FORCE will delete volumes including nested snapshots.
1463
+ Possible values: DEFAULT, FORCE.
1379
1464
  :param pulumi.Input[str] description: An optional description of this resource.
1380
1465
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
1381
1466
  :param pulumi.Input[str] encryption_type: Reports the data-at-rest encryption type of the volume. Inherited from storage pool.
@@ -1388,10 +1473,13 @@ class Volume(pulumi.CustomResource):
1388
1473
 
1389
1474
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
1390
1475
  Please refer to the field `effective_labels` for all of the labels present on the resource.
1476
+ :param pulumi.Input[bool] large_capacity: Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
1391
1477
  :param pulumi.Input[bool] ldap_enabled: Flag indicating if the volume is NFS LDAP enabled or not. Inherited from storage pool.
1392
1478
  :param pulumi.Input[str] location: Name of the pool location. Usually a region name, expect for some STANDARD service level pools which require a zone name.
1393
1479
  :param pulumi.Input[Sequence[pulumi.Input[Union['VolumeMountOptionArgs', 'VolumeMountOptionArgsDict']]]] mount_options: Reports mount instructions for this volume.
1394
1480
  Structure is documented below.
1481
+ :param pulumi.Input[bool] multiple_endpoints: Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints.
1482
+ Only the volume with largeCapacity will be allowed to have multiple endpoints.
1395
1483
  :param pulumi.Input[str] name: The name of the volume. Needs to be unique per location.
1396
1484
 
1397
1485
 
@@ -1444,9 +1532,11 @@ class Volume(pulumi.CustomResource):
1444
1532
  __props__.__dict__["kerberos_enabled"] = kerberos_enabled
1445
1533
  __props__.__dict__["kms_config"] = kms_config
1446
1534
  __props__.__dict__["labels"] = labels
1535
+ __props__.__dict__["large_capacity"] = large_capacity
1447
1536
  __props__.__dict__["ldap_enabled"] = ldap_enabled
1448
1537
  __props__.__dict__["location"] = location
1449
1538
  __props__.__dict__["mount_options"] = mount_options
1539
+ __props__.__dict__["multiple_endpoints"] = multiple_endpoints
1450
1540
  __props__.__dict__["name"] = name
1451
1541
  __props__.__dict__["network"] = network
1452
1542
  __props__.__dict__["project"] = project
@@ -1510,6 +1600,7 @@ class Volume(pulumi.CustomResource):
1510
1600
  Policy to determine if the volume should be deleted forcefully.
1511
1601
  Volumes may have nested snapshot resources. Deleting such a volume will fail.
1512
1602
  Setting this parameter to FORCE will delete volumes including nested snapshots.
1603
+ Possible values: DEFAULT, FORCE.
1513
1604
  """
1514
1605
  return pulumi.get(self, "deletion_policy")
1515
1606
 
@@ -1581,6 +1672,14 @@ class Volume(pulumi.CustomResource):
1581
1672
  """
1582
1673
  return pulumi.get(self, "labels")
1583
1674
 
1675
+ @property
1676
+ @pulumi.getter(name="largeCapacity")
1677
+ def large_capacity(self) -> pulumi.Output[Optional[bool]]:
1678
+ """
1679
+ Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
1680
+ """
1681
+ return pulumi.get(self, "large_capacity")
1682
+
1584
1683
  @property
1585
1684
  @pulumi.getter(name="ldapEnabled")
1586
1685
  def ldap_enabled(self) -> pulumi.Output[bool]:
@@ -1606,6 +1705,15 @@ class Volume(pulumi.CustomResource):
1606
1705
  """
1607
1706
  return pulumi.get(self, "mount_options")
1608
1707
 
1708
+ @property
1709
+ @pulumi.getter(name="multipleEndpoints")
1710
+ def multiple_endpoints(self) -> pulumi.Output[Optional[bool]]:
1711
+ """
1712
+ Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints.
1713
+ Only the volume with largeCapacity will be allowed to have multiple endpoints.
1714
+ """
1715
+ return pulumi.get(self, "multiple_endpoints")
1716
+
1609
1717
  @property
1610
1718
  @pulumi.getter
1611
1719
  def name(self) -> pulumi.Output[str]:
@@ -892,6 +892,10 @@ if not MYPY:
892
892
  """
893
893
  IP ranges encompassing the subnets to be excluded from peering.
894
894
  """
895
+ include_export_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
896
+ """
897
+ IP ranges allowed to be included from peering.
898
+ """
895
899
  elif False:
896
900
  SpokeLinkedVpcNetworkArgsDict: TypeAlias = Mapping[str, Any]
897
901
 
@@ -899,14 +903,18 @@ elif False:
899
903
  class SpokeLinkedVpcNetworkArgs:
900
904
  def __init__(__self__, *,
901
905
  uri: pulumi.Input[str],
902
- exclude_export_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
906
+ exclude_export_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
907
+ include_export_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
903
908
  """
904
909
  :param pulumi.Input[str] uri: The URI of the VPC network resource.
905
910
  :param pulumi.Input[Sequence[pulumi.Input[str]]] exclude_export_ranges: IP ranges encompassing the subnets to be excluded from peering.
911
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] include_export_ranges: IP ranges allowed to be included from peering.
906
912
  """
907
913
  pulumi.set(__self__, "uri", uri)
908
914
  if exclude_export_ranges is not None:
909
915
  pulumi.set(__self__, "exclude_export_ranges", exclude_export_ranges)
916
+ if include_export_ranges is not None:
917
+ pulumi.set(__self__, "include_export_ranges", include_export_ranges)
910
918
 
911
919
  @property
912
920
  @pulumi.getter
@@ -932,6 +940,18 @@ class SpokeLinkedVpcNetworkArgs:
932
940
  def exclude_export_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
933
941
  pulumi.set(self, "exclude_export_ranges", value)
934
942
 
943
+ @property
944
+ @pulumi.getter(name="includeExportRanges")
945
+ def include_export_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
946
+ """
947
+ IP ranges allowed to be included from peering.
948
+ """
949
+ return pulumi.get(self, "include_export_ranges")
950
+
951
+ @include_export_ranges.setter
952
+ def include_export_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
953
+ pulumi.set(self, "include_export_ranges", value)
954
+
935
955
 
936
956
  if not MYPY:
937
957
  class SpokeLinkedVpnTunnelsArgsDict(TypedDict):
@@ -659,6 +659,8 @@ class SpokeLinkedVpcNetwork(dict):
659
659
  suggest = None
660
660
  if key == "excludeExportRanges":
661
661
  suggest = "exclude_export_ranges"
662
+ elif key == "includeExportRanges":
663
+ suggest = "include_export_ranges"
662
664
 
663
665
  if suggest:
664
666
  pulumi.log.warn(f"Key '{key}' not found in SpokeLinkedVpcNetwork. Access the value via the '{suggest}' property getter instead.")
@@ -673,14 +675,18 @@ class SpokeLinkedVpcNetwork(dict):
673
675
 
674
676
  def __init__(__self__, *,
675
677
  uri: str,
676
- exclude_export_ranges: Optional[Sequence[str]] = None):
678
+ exclude_export_ranges: Optional[Sequence[str]] = None,
679
+ include_export_ranges: Optional[Sequence[str]] = None):
677
680
  """
678
681
  :param str uri: The URI of the VPC network resource.
679
682
  :param Sequence[str] exclude_export_ranges: IP ranges encompassing the subnets to be excluded from peering.
683
+ :param Sequence[str] include_export_ranges: IP ranges allowed to be included from peering.
680
684
  """
681
685
  pulumi.set(__self__, "uri", uri)
682
686
  if exclude_export_ranges is not None:
683
687
  pulumi.set(__self__, "exclude_export_ranges", exclude_export_ranges)
688
+ if include_export_ranges is not None:
689
+ pulumi.set(__self__, "include_export_ranges", include_export_ranges)
684
690
 
685
691
  @property
686
692
  @pulumi.getter
@@ -698,6 +704,14 @@ class SpokeLinkedVpcNetwork(dict):
698
704
  """
699
705
  return pulumi.get(self, "exclude_export_ranges")
700
706
 
707
+ @property
708
+ @pulumi.getter(name="includeExportRanges")
709
+ def include_export_ranges(self) -> Optional[Sequence[str]]:
710
+ """
711
+ IP ranges allowed to be included from peering.
712
+ """
713
+ return pulumi.get(self, "include_export_ranges")
714
+
701
715
 
702
716
  @pulumi.output_type
703
717
  class SpokeLinkedVpnTunnels(dict):
@@ -545,6 +545,10 @@ class Spoke(pulumi.CustomResource):
545
545
  "198.51.100.0/24",
546
546
  "10.10.0.0/16",
547
547
  ],
548
+ "include_export_ranges": [
549
+ "198.51.100.0/23",
550
+ "10.0.0.0/8",
551
+ ],
548
552
  "uri": network.self_link,
549
553
  })
550
554
  ```
@@ -694,6 +698,10 @@ class Spoke(pulumi.CustomResource):
694
698
  "198.51.100.0/24",
695
699
  "10.10.0.0/16",
696
700
  ],
701
+ "include_export_ranges": [
702
+ "198.51.100.0/23",
703
+ "10.0.0.0/8",
704
+ ],
697
705
  "uri": network.self_link,
698
706
  })
699
707
  ```