pulumi-gcp 8.8.2a1731515595__py3-none-any.whl → 8.9.0a1731097924__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 (114) hide show
  1. pulumi_gcp/__init__.py +0 -64
  2. pulumi_gcp/activedirectory/domain.py +0 -24
  3. pulumi_gcp/apigee/__init__.py +0 -1
  4. pulumi_gcp/apigee/_inputs.py +0 -74
  5. pulumi_gcp/apigee/outputs.py +0 -65
  6. pulumi_gcp/applicationintegration/auth_config.py +0 -24
  7. pulumi_gcp/backupdisasterrecovery/__init__.py +0 -4
  8. pulumi_gcp/backupdisasterrecovery/_inputs.py +0 -533
  9. pulumi_gcp/backupdisasterrecovery/backup_vault.py +6 -146
  10. pulumi_gcp/backupdisasterrecovery/outputs.py +0 -702
  11. pulumi_gcp/bigquery/data_transfer_config.py +0 -24
  12. pulumi_gcp/cloudrunv2/_inputs.py +0 -46
  13. pulumi_gcp/cloudrunv2/job.py +2 -0
  14. pulumi_gcp/cloudrunv2/outputs.py +2 -60
  15. pulumi_gcp/cloudrunv2/service.py +2 -0
  16. pulumi_gcp/compute/__init__.py +0 -1
  17. pulumi_gcp/compute/_inputs.py +255 -2162
  18. pulumi_gcp/compute/disk.py +7 -7
  19. pulumi_gcp/compute/firewall_policy_rule.py +54 -108
  20. pulumi_gcp/compute/get_region_instance_group_manager.py +1 -12
  21. pulumi_gcp/compute/health_check.py +42 -42
  22. pulumi_gcp/compute/network_firewall_policy_rule.py +4 -4
  23. pulumi_gcp/compute/network_firewall_policy_with_rules.py +10 -10
  24. pulumi_gcp/compute/node_template.py +0 -95
  25. pulumi_gcp/compute/outputs.py +213 -1639
  26. pulumi_gcp/compute/region_disk.py +7 -7
  27. pulumi_gcp/compute/region_health_check.py +42 -42
  28. pulumi_gcp/compute/region_instance_group_manager.py +14 -54
  29. pulumi_gcp/compute/region_network_firewall_policy_rule.py +4 -4
  30. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +10 -10
  31. pulumi_gcp/compute/region_security_policy.py +0 -120
  32. pulumi_gcp/compute/region_security_policy_rule.py +6 -6
  33. pulumi_gcp/compute/router_peer.py +35 -56
  34. pulumi_gcp/compute/security_scan_config.py +8 -8
  35. pulumi_gcp/config/__init__.pyi +0 -4
  36. pulumi_gcp/config/vars.py +0 -8
  37. pulumi_gcp/container/_inputs.py +10 -345
  38. pulumi_gcp/container/cluster.py +0 -101
  39. pulumi_gcp/container/get_cluster.py +1 -23
  40. pulumi_gcp/container/outputs.py +8 -456
  41. pulumi_gcp/dataloss/prevention_discovery_config.py +7 -7
  42. pulumi_gcp/dataproc/__init__.py +0 -2
  43. pulumi_gcp/dataproc/_inputs.py +0 -101
  44. pulumi_gcp/dataproc/outputs.py +0 -94
  45. pulumi_gcp/edgecontainer/vpn_connection.py +4 -4
  46. pulumi_gcp/firebase/android_app.py +2 -2
  47. pulumi_gcp/firebase/apple_app.py +2 -2
  48. pulumi_gcp/firebase/web_app.py +2 -2
  49. pulumi_gcp/firestore/index.py +0 -44
  50. pulumi_gcp/gkeonprem/_inputs.py +15 -15
  51. pulumi_gcp/gkeonprem/outputs.py +10 -10
  52. pulumi_gcp/healthcare/dataset.py +7 -7
  53. pulumi_gcp/healthcare/dicom_store.py +7 -7
  54. pulumi_gcp/healthcare/fhir_store.py +7 -7
  55. pulumi_gcp/healthcare/hl7_store.py +14 -14
  56. pulumi_gcp/iam/__init__.py +0 -1
  57. pulumi_gcp/iam/_inputs.py +0 -161
  58. pulumi_gcp/iam/outputs.py +0 -114
  59. pulumi_gcp/logging/metric.py +2 -2
  60. pulumi_gcp/looker/_inputs.py +0 -6
  61. pulumi_gcp/looker/instance.py +321 -169
  62. pulumi_gcp/looker/outputs.py +0 -4
  63. pulumi_gcp/memorystore/instance.py +0 -4
  64. pulumi_gcp/monitoring/alert_policy.py +0 -24
  65. pulumi_gcp/monitoring/custom_service.py +0 -24
  66. pulumi_gcp/monitoring/group.py +0 -24
  67. pulumi_gcp/monitoring/metric_descriptor.py +0 -24
  68. pulumi_gcp/monitoring/slo.py +0 -24
  69. pulumi_gcp/monitoring/uptime_check_config.py +0 -24
  70. pulumi_gcp/networkmanagement/__init__.py +0 -1
  71. pulumi_gcp/osconfig/patch_deployment.py +8 -8
  72. pulumi_gcp/provider.py +0 -40
  73. pulumi_gcp/pulumi-plugin.json +1 -1
  74. pulumi_gcp/redis/_inputs.py +3 -3
  75. pulumi_gcp/redis/outputs.py +2 -2
  76. pulumi_gcp/securitycenter/notification_config.py +16 -4
  77. pulumi_gcp/securitycenter/project_notification_config.py +24 -0
  78. pulumi_gcp/securitycenter/v2_organization_notification_config.py +16 -4
  79. pulumi_gcp/spanner/__init__.py +0 -1
  80. pulumi_gcp/spanner/_inputs.py +9 -9
  81. pulumi_gcp/spanner/get_instance.py +1 -12
  82. pulumi_gcp/spanner/instance.py +0 -70
  83. pulumi_gcp/spanner/outputs.py +12 -46
  84. pulumi_gcp/sql/_inputs.py +0 -26
  85. pulumi_gcp/sql/database_instance.py +11 -124
  86. pulumi_gcp/sql/get_database_instance.py +1 -12
  87. pulumi_gcp/sql/outputs.py +0 -51
  88. pulumi_gcp/storage/_inputs.py +3 -3
  89. pulumi_gcp/storage/outputs.py +2 -2
  90. pulumi_gcp/tags/tag_binding.py +4 -4
  91. pulumi_gcp/tags/tag_value.py +2 -2
  92. pulumi_gcp/transcoder/job.py +0 -24
  93. pulumi_gcp/vertex/_inputs.py +0 -184
  94. pulumi_gcp/vertex/ai_endpoint.py +8 -394
  95. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  96. pulumi_gcp/vertex/outputs.py +0 -166
  97. pulumi_gcp/workbench/instance.py +7 -21
  98. pulumi_gcp/workflows/workflow.py +0 -36
  99. pulumi_gcp/workstations/workstation_config.py +8 -8
  100. {pulumi_gcp-8.8.2a1731515595.dist-info → pulumi_gcp-8.9.0a1731097924.dist-info}/METADATA +1 -1
  101. {pulumi_gcp-8.8.2a1731515595.dist-info → pulumi_gcp-8.9.0a1731097924.dist-info}/RECORD +103 -114
  102. {pulumi_gcp-8.8.2a1731515595.dist-info → pulumi_gcp-8.9.0a1731097924.dist-info}/WHEEL +1 -1
  103. pulumi_gcp/apigee/api.py +0 -456
  104. pulumi_gcp/backupdisasterrecovery/backup_plan.py +0 -653
  105. pulumi_gcp/backupdisasterrecovery/backup_plan_association.py +0 -766
  106. pulumi_gcp/backupdisasterrecovery/get_backup_plan.py +0 -204
  107. pulumi_gcp/backupdisasterrecovery/get_backup_plan_association.py +0 -243
  108. pulumi_gcp/compute/region_resize_request.py +0 -772
  109. pulumi_gcp/dataproc/gdc_application_environment.py +0 -931
  110. pulumi_gcp/dataproc/gdc_service_instance.py +0 -1022
  111. pulumi_gcp/iam/principal_access_boundary_policy.py +0 -679
  112. pulumi_gcp/networkmanagement/vpc_flow_logs_config.py +0 -1358
  113. pulumi_gcp/spanner/get_database.py +0 -229
  114. {pulumi_gcp-8.8.2a1731515595.dist-info → pulumi_gcp-8.9.0a1731097924.dist-info}/top_level.txt +0 -0
@@ -445,8 +445,6 @@ __all__ = [
445
445
  'NodeGroupShareSettingsProjectMapArgsDict',
446
446
  'NodeTemplateAcceleratorArgs',
447
447
  'NodeTemplateAcceleratorArgsDict',
448
- 'NodeTemplateDiskArgs',
449
- 'NodeTemplateDiskArgsDict',
450
448
  'NodeTemplateNodeTypeFlexibilityArgs',
451
449
  'NodeTemplateNodeTypeFlexibilityArgsDict',
452
450
  'NodeTemplateServerBindingArgs',
@@ -575,10 +573,6 @@ __all__ = [
575
573
  'RegionInstanceGroupManagerAllInstancesConfigArgsDict',
576
574
  'RegionInstanceGroupManagerAutoHealingPoliciesArgs',
577
575
  'RegionInstanceGroupManagerAutoHealingPoliciesArgsDict',
578
- 'RegionInstanceGroupManagerInstanceFlexibilityPolicyArgs',
579
- 'RegionInstanceGroupManagerInstanceFlexibilityPolicyArgsDict',
580
- 'RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgs',
581
- 'RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgsDict',
582
576
  'RegionInstanceGroupManagerInstanceLifecyclePolicyArgs',
583
577
  'RegionInstanceGroupManagerInstanceLifecyclePolicyArgsDict',
584
578
  'RegionInstanceGroupManagerNamedPortArgs',
@@ -699,48 +693,8 @@ __all__ = [
699
693
  'RegionPerInstanceConfigPreservedStateInternalIpArgsDict',
700
694
  'RegionPerInstanceConfigPreservedStateInternalIpIpAddressArgs',
701
695
  'RegionPerInstanceConfigPreservedStateInternalIpIpAddressArgsDict',
702
- 'RegionResizeRequestRequestedRunDurationArgs',
703
- 'RegionResizeRequestRequestedRunDurationArgsDict',
704
- 'RegionResizeRequestStatusArgs',
705
- 'RegionResizeRequestStatusArgsDict',
706
- 'RegionResizeRequestStatusErrorArgs',
707
- 'RegionResizeRequestStatusErrorArgsDict',
708
- 'RegionResizeRequestStatusErrorErrorArgs',
709
- 'RegionResizeRequestStatusErrorErrorArgsDict',
710
- 'RegionResizeRequestStatusErrorErrorErrorDetailArgs',
711
- 'RegionResizeRequestStatusErrorErrorErrorDetailArgsDict',
712
- 'RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgs',
713
- 'RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgsDict',
714
- 'RegionResizeRequestStatusErrorErrorErrorDetailHelpArgs',
715
- 'RegionResizeRequestStatusErrorErrorErrorDetailHelpArgsDict',
716
- 'RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgs',
717
- 'RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgsDict',
718
- 'RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgs',
719
- 'RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgsDict',
720
- 'RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgs',
721
- 'RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgsDict',
722
- 'RegionResizeRequestStatusLastAttemptArgs',
723
- 'RegionResizeRequestStatusLastAttemptArgsDict',
724
- 'RegionResizeRequestStatusLastAttemptErrorArgs',
725
- 'RegionResizeRequestStatusLastAttemptErrorArgsDict',
726
- 'RegionResizeRequestStatusLastAttemptErrorErrorArgs',
727
- 'RegionResizeRequestStatusLastAttemptErrorErrorArgsDict',
728
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgs',
729
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgsDict',
730
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgs',
731
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgsDict',
732
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgs',
733
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgsDict',
734
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgs',
735
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgsDict',
736
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgs',
737
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgsDict',
738
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgs',
739
- 'RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgsDict',
740
696
  'RegionSecurityPolicyDdosProtectionConfigArgs',
741
697
  'RegionSecurityPolicyDdosProtectionConfigArgsDict',
742
- 'RegionSecurityPolicyRuleArgs',
743
- 'RegionSecurityPolicyRuleArgsDict',
744
698
  'RegionSecurityPolicyRuleMatchArgs',
745
699
  'RegionSecurityPolicyRuleMatchArgsDict',
746
700
  'RegionSecurityPolicyRuleMatchConfigArgs',
@@ -1936,7 +1890,7 @@ if not MYPY:
1936
1890
  class AutoscalerAutoscalingPolicyScaleDownControlArgsDict(TypedDict):
1937
1891
  max_scaled_down_replicas: NotRequired[pulumi.Input['AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgsDict']]
1938
1892
  """
1939
- A nested object resource.
1893
+ A nested object resource
1940
1894
  Structure is documented below.
1941
1895
  """
1942
1896
  time_window_sec: NotRequired[pulumi.Input[int]]
@@ -1953,7 +1907,7 @@ class AutoscalerAutoscalingPolicyScaleDownControlArgs:
1953
1907
  max_scaled_down_replicas: Optional[pulumi.Input['AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs']] = None,
1954
1908
  time_window_sec: Optional[pulumi.Input[int]] = None):
1955
1909
  """
1956
- :param pulumi.Input['AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs'] max_scaled_down_replicas: A nested object resource.
1910
+ :param pulumi.Input['AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs'] max_scaled_down_replicas: A nested object resource
1957
1911
  Structure is documented below.
1958
1912
  :param pulumi.Input[int] time_window_sec: How long back autoscaling should look when computing recommendations
1959
1913
  to include directives regarding slower scale down, as described above.
@@ -1967,7 +1921,7 @@ class AutoscalerAutoscalingPolicyScaleDownControlArgs:
1967
1921
  @pulumi.getter(name="maxScaledDownReplicas")
1968
1922
  def max_scaled_down_replicas(self) -> Optional[pulumi.Input['AutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs']]:
1969
1923
  """
1970
- A nested object resource.
1924
+ A nested object resource
1971
1925
  Structure is documented below.
1972
1926
  """
1973
1927
  return pulumi.get(self, "max_scaled_down_replicas")
@@ -2052,7 +2006,7 @@ if not MYPY:
2052
2006
  class AutoscalerAutoscalingPolicyScaleInControlArgsDict(TypedDict):
2053
2007
  max_scaled_in_replicas: NotRequired[pulumi.Input['AutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgsDict']]
2054
2008
  """
2055
- A nested object resource.
2009
+ A nested object resource
2056
2010
  Structure is documented below.
2057
2011
  """
2058
2012
  time_window_sec: NotRequired[pulumi.Input[int]]
@@ -2069,7 +2023,7 @@ class AutoscalerAutoscalingPolicyScaleInControlArgs:
2069
2023
  max_scaled_in_replicas: Optional[pulumi.Input['AutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs']] = None,
2070
2024
  time_window_sec: Optional[pulumi.Input[int]] = None):
2071
2025
  """
2072
- :param pulumi.Input['AutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs'] max_scaled_in_replicas: A nested object resource.
2026
+ :param pulumi.Input['AutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs'] max_scaled_in_replicas: A nested object resource
2073
2027
  Structure is documented below.
2074
2028
  :param pulumi.Input[int] time_window_sec: How long back autoscaling should look when computing recommendations
2075
2029
  to include directives regarding slower scale down, as described above.
@@ -2083,7 +2037,7 @@ class AutoscalerAutoscalingPolicyScaleInControlArgs:
2083
2037
  @pulumi.getter(name="maxScaledInReplicas")
2084
2038
  def max_scaled_in_replicas(self) -> Optional[pulumi.Input['AutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs']]:
2085
2039
  """
2086
- A nested object resource.
2040
+ A nested object resource
2087
2041
  Structure is documented below.
2088
2042
  """
2089
2043
  return pulumi.get(self, "max_scaled_in_replicas")
@@ -6407,50 +6361,48 @@ if not MYPY:
6407
6361
  layer4_configs: pulumi.Input[Sequence[pulumi.Input['FirewallPolicyRuleMatchLayer4ConfigArgsDict']]]
6408
6362
  """
6409
6363
  Pairs of IP protocols and ports that the rule should match.
6410
- Structure is documented below.
6411
6364
  """
6412
6365
  dest_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6413
6366
  """
6414
- Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10.
6367
+ Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10. Destination address groups is only supported in Egress rules.
6415
6368
  """
6416
6369
  dest_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6417
6370
  """
6418
- Fully Qualified Domain Name (FQDN) which should be matched against traffic destination. Maximum number of destination fqdn allowed is 100.
6371
+ Domain names that will be used to match against the resolved domain name of destination of traffic. Can only be specified if DIRECTION is egress.
6419
6372
  """
6420
6373
  dest_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6421
6374
  """
6422
- CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000.
6375
+ CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 256.
6423
6376
  """
6424
6377
  dest_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6425
6378
  """
6426
- Region codes whose IP addresses will be used to match for destination of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of dest region codes allowed is 5000.
6379
+ The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is egress.
6427
6380
  """
6428
6381
  dest_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6429
6382
  """
6430
- Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic destination.
6383
+ Name of the Google Cloud Threat Intelligence list.
6431
6384
  """
6432
6385
  src_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6433
6386
  """
6434
- Address groups which should be matched against the traffic source. Maximum number of source address groups is 10.
6387
+ Address groups which should be matched against the traffic source. Maximum number of source address groups is 10. Source address groups is only supported in Ingress rules.
6435
6388
  """
6436
6389
  src_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6437
6390
  """
6438
- Fully Qualified Domain Name (FQDN) which should be matched against traffic source. Maximum number of source fqdn allowed is 100.
6391
+ Domain names that will be used to match against the resolved domain name of source of traffic. Can only be specified if DIRECTION is ingress.
6439
6392
  """
6440
6393
  src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6441
6394
  """
6442
- CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000.
6395
+ CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 256.
6443
6396
  """
6444
6397
  src_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6445
6398
  """
6446
- Region codes whose IP addresses will be used to match for source of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of source region codes allowed is 5000.
6399
+ The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is ingress.
6447
6400
  """
6448
6401
  src_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6449
6402
  """
6450
- Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic source.
6451
-
6403
+ Name of the Google Cloud Threat Intelligence list.
6452
6404
 
6453
- <a name="nested_layer4_configs"></a>The `layer4_configs` block supports:
6405
+ The `layer4_configs` block supports:
6454
6406
  """
6455
6407
  elif False:
6456
6408
  FirewallPolicyRuleMatchArgsDict: TypeAlias = Mapping[str, Any]
@@ -6471,20 +6423,18 @@ class FirewallPolicyRuleMatchArgs:
6471
6423
  src_threat_intelligences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
6472
6424
  """
6473
6425
  :param pulumi.Input[Sequence[pulumi.Input['FirewallPolicyRuleMatchLayer4ConfigArgs']]] layer4_configs: Pairs of IP protocols and ports that the rule should match.
6474
- Structure is documented below.
6475
- :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_address_groups: Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10.
6476
- :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_fqdns: Fully Qualified Domain Name (FQDN) which should be matched against traffic destination. Maximum number of destination fqdn allowed is 100.
6477
- :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ip_ranges: CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000.
6478
- :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_region_codes: Region codes whose IP addresses will be used to match for destination of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of dest region codes allowed is 5000.
6479
- :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_threat_intelligences: Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic destination.
6480
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_address_groups: Address groups which should be matched against the traffic source. Maximum number of source address groups is 10.
6481
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_fqdns: Fully Qualified Domain Name (FQDN) which should be matched against traffic source. Maximum number of source fqdn allowed is 100.
6482
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000.
6483
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_region_codes: Region codes whose IP addresses will be used to match for source of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of source region codes allowed is 5000.
6484
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_threat_intelligences: Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic source.
6426
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_address_groups: Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10. Destination address groups is only supported in Egress rules.
6427
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_fqdns: Domain names that will be used to match against the resolved domain name of destination of traffic. Can only be specified if DIRECTION is egress.
6428
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ip_ranges: CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 256.
6429
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_region_codes: The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is egress.
6430
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_threat_intelligences: Name of the Google Cloud Threat Intelligence list.
6431
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_address_groups: Address groups which should be matched against the traffic source. Maximum number of source address groups is 10. Source address groups is only supported in Ingress rules.
6432
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_fqdns: Domain names that will be used to match against the resolved domain name of source of traffic. Can only be specified if DIRECTION is ingress.
6433
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 256.
6434
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_region_codes: The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is ingress.
6435
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_threat_intelligences: Name of the Google Cloud Threat Intelligence list.
6485
6436
 
6486
-
6487
- <a name="nested_layer4_configs"></a>The `layer4_configs` block supports:
6437
+ The `layer4_configs` block supports:
6488
6438
  """
6489
6439
  pulumi.set(__self__, "layer4_configs", layer4_configs)
6490
6440
  if dest_address_groups is not None:
@@ -6513,7 +6463,6 @@ class FirewallPolicyRuleMatchArgs:
6513
6463
  def layer4_configs(self) -> pulumi.Input[Sequence[pulumi.Input['FirewallPolicyRuleMatchLayer4ConfigArgs']]]:
6514
6464
  """
6515
6465
  Pairs of IP protocols and ports that the rule should match.
6516
- Structure is documented below.
6517
6466
  """
6518
6467
  return pulumi.get(self, "layer4_configs")
6519
6468
 
@@ -6525,7 +6474,7 @@ class FirewallPolicyRuleMatchArgs:
6525
6474
  @pulumi.getter(name="destAddressGroups")
6526
6475
  def dest_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6527
6476
  """
6528
- Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10.
6477
+ Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10. Destination address groups is only supported in Egress rules.
6529
6478
  """
6530
6479
  return pulumi.get(self, "dest_address_groups")
6531
6480
 
@@ -6537,7 +6486,7 @@ class FirewallPolicyRuleMatchArgs:
6537
6486
  @pulumi.getter(name="destFqdns")
6538
6487
  def dest_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6539
6488
  """
6540
- Fully Qualified Domain Name (FQDN) which should be matched against traffic destination. Maximum number of destination fqdn allowed is 100.
6489
+ Domain names that will be used to match against the resolved domain name of destination of traffic. Can only be specified if DIRECTION is egress.
6541
6490
  """
6542
6491
  return pulumi.get(self, "dest_fqdns")
6543
6492
 
@@ -6549,7 +6498,7 @@ class FirewallPolicyRuleMatchArgs:
6549
6498
  @pulumi.getter(name="destIpRanges")
6550
6499
  def dest_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6551
6500
  """
6552
- CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000.
6501
+ CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 256.
6553
6502
  """
6554
6503
  return pulumi.get(self, "dest_ip_ranges")
6555
6504
 
@@ -6561,7 +6510,7 @@ class FirewallPolicyRuleMatchArgs:
6561
6510
  @pulumi.getter(name="destRegionCodes")
6562
6511
  def dest_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6563
6512
  """
6564
- Region codes whose IP addresses will be used to match for destination of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of dest region codes allowed is 5000.
6513
+ The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is egress.
6565
6514
  """
6566
6515
  return pulumi.get(self, "dest_region_codes")
6567
6516
 
@@ -6573,7 +6522,7 @@ class FirewallPolicyRuleMatchArgs:
6573
6522
  @pulumi.getter(name="destThreatIntelligences")
6574
6523
  def dest_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6575
6524
  """
6576
- Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic destination.
6525
+ Name of the Google Cloud Threat Intelligence list.
6577
6526
  """
6578
6527
  return pulumi.get(self, "dest_threat_intelligences")
6579
6528
 
@@ -6585,7 +6534,7 @@ class FirewallPolicyRuleMatchArgs:
6585
6534
  @pulumi.getter(name="srcAddressGroups")
6586
6535
  def src_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6587
6536
  """
6588
- Address groups which should be matched against the traffic source. Maximum number of source address groups is 10.
6537
+ Address groups which should be matched against the traffic source. Maximum number of source address groups is 10. Source address groups is only supported in Ingress rules.
6589
6538
  """
6590
6539
  return pulumi.get(self, "src_address_groups")
6591
6540
 
@@ -6597,7 +6546,7 @@ class FirewallPolicyRuleMatchArgs:
6597
6546
  @pulumi.getter(name="srcFqdns")
6598
6547
  def src_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6599
6548
  """
6600
- Fully Qualified Domain Name (FQDN) which should be matched against traffic source. Maximum number of source fqdn allowed is 100.
6549
+ Domain names that will be used to match against the resolved domain name of source of traffic. Can only be specified if DIRECTION is ingress.
6601
6550
  """
6602
6551
  return pulumi.get(self, "src_fqdns")
6603
6552
 
@@ -6609,7 +6558,7 @@ class FirewallPolicyRuleMatchArgs:
6609
6558
  @pulumi.getter(name="srcIpRanges")
6610
6559
  def src_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6611
6560
  """
6612
- CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000.
6561
+ CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 256.
6613
6562
  """
6614
6563
  return pulumi.get(self, "src_ip_ranges")
6615
6564
 
@@ -6621,7 +6570,7 @@ class FirewallPolicyRuleMatchArgs:
6621
6570
  @pulumi.getter(name="srcRegionCodes")
6622
6571
  def src_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6623
6572
  """
6624
- Region codes whose IP addresses will be used to match for source of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of source region codes allowed is 5000.
6573
+ The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is ingress.
6625
6574
  """
6626
6575
  return pulumi.get(self, "src_region_codes")
6627
6576
 
@@ -6633,10 +6582,9 @@ class FirewallPolicyRuleMatchArgs:
6633
6582
  @pulumi.getter(name="srcThreatIntelligences")
6634
6583
  def src_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6635
6584
  """
6636
- Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic source.
6637
-
6585
+ Name of the Google Cloud Threat Intelligence list.
6638
6586
 
6639
- <a name="nested_layer4_configs"></a>The `layer4_configs` block supports:
6587
+ The `layer4_configs` block supports:
6640
6588
  """
6641
6589
  return pulumi.get(self, "src_threat_intelligences")
6642
6590
 
@@ -6649,13 +6597,11 @@ if not MYPY:
6649
6597
  class FirewallPolicyRuleMatchLayer4ConfigArgsDict(TypedDict):
6650
6598
  ip_protocol: pulumi.Input[str]
6651
6599
  """
6652
- The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule.
6653
- This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.
6600
+ The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (`tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, `sctp`), or the IP protocol number.
6654
6601
  """
6655
6602
  ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6656
6603
  """
6657
- An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.
6658
- Example inputs include: ["22"], ["80","443"], and ["12345-12349"].
6604
+ An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ``.
6659
6605
  """
6660
6606
  elif False:
6661
6607
  FirewallPolicyRuleMatchLayer4ConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -6666,10 +6612,8 @@ class FirewallPolicyRuleMatchLayer4ConfigArgs:
6666
6612
  ip_protocol: pulumi.Input[str],
6667
6613
  ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
6668
6614
  """
6669
- :param pulumi.Input[str] ip_protocol: The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule.
6670
- This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.
6671
- :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.
6672
- Example inputs include: ["22"], ["80","443"], and ["12345-12349"].
6615
+ :param pulumi.Input[str] ip_protocol: The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (`tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, `sctp`), or the IP protocol number.
6616
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ``.
6673
6617
  """
6674
6618
  pulumi.set(__self__, "ip_protocol", ip_protocol)
6675
6619
  if ports is not None:
@@ -6679,8 +6623,7 @@ class FirewallPolicyRuleMatchLayer4ConfigArgs:
6679
6623
  @pulumi.getter(name="ipProtocol")
6680
6624
  def ip_protocol(self) -> pulumi.Input[str]:
6681
6625
  """
6682
- The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule.
6683
- This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.
6626
+ The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (`tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, `sctp`), or the IP protocol number.
6684
6627
  """
6685
6628
  return pulumi.get(self, "ip_protocol")
6686
6629
 
@@ -6692,8 +6635,7 @@ class FirewallPolicyRuleMatchLayer4ConfigArgs:
6692
6635
  @pulumi.getter
6693
6636
  def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
6694
6637
  """
6695
- An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.
6696
- Example inputs include: ["22"], ["80","443"], and ["12345-12349"].
6638
+ An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ``.
6697
6639
  """
6698
6640
  return pulumi.get(self, "ports")
6699
6641
 
@@ -24029,78 +23971,6 @@ class NodeTemplateAcceleratorArgs:
24029
23971
  pulumi.set(self, "accelerator_type", value)
24030
23972
 
24031
23973
 
24032
- if not MYPY:
24033
- class NodeTemplateDiskArgsDict(TypedDict):
24034
- disk_count: NotRequired[pulumi.Input[int]]
24035
- """
24036
- Specifies the number of such disks.
24037
- """
24038
- disk_size_gb: NotRequired[pulumi.Input[int]]
24039
- """
24040
- Specifies the size of the disk in base-2 GB.
24041
- """
24042
- disk_type: NotRequired[pulumi.Input[str]]
24043
- """
24044
- Specifies the desired disk type on the node. This disk type must be a local storage type (e.g.: local-ssd). Note that for nodeTemplates, this should be the name of the disk type and not its URL.
24045
- """
24046
- elif False:
24047
- NodeTemplateDiskArgsDict: TypeAlias = Mapping[str, Any]
24048
-
24049
- @pulumi.input_type
24050
- class NodeTemplateDiskArgs:
24051
- def __init__(__self__, *,
24052
- disk_count: Optional[pulumi.Input[int]] = None,
24053
- disk_size_gb: Optional[pulumi.Input[int]] = None,
24054
- disk_type: Optional[pulumi.Input[str]] = None):
24055
- """
24056
- :param pulumi.Input[int] disk_count: Specifies the number of such disks.
24057
- :param pulumi.Input[int] disk_size_gb: Specifies the size of the disk in base-2 GB.
24058
- :param pulumi.Input[str] disk_type: Specifies the desired disk type on the node. This disk type must be a local storage type (e.g.: local-ssd). Note that for nodeTemplates, this should be the name of the disk type and not its URL.
24059
- """
24060
- if disk_count is not None:
24061
- pulumi.set(__self__, "disk_count", disk_count)
24062
- if disk_size_gb is not None:
24063
- pulumi.set(__self__, "disk_size_gb", disk_size_gb)
24064
- if disk_type is not None:
24065
- pulumi.set(__self__, "disk_type", disk_type)
24066
-
24067
- @property
24068
- @pulumi.getter(name="diskCount")
24069
- def disk_count(self) -> Optional[pulumi.Input[int]]:
24070
- """
24071
- Specifies the number of such disks.
24072
- """
24073
- return pulumi.get(self, "disk_count")
24074
-
24075
- @disk_count.setter
24076
- def disk_count(self, value: Optional[pulumi.Input[int]]):
24077
- pulumi.set(self, "disk_count", value)
24078
-
24079
- @property
24080
- @pulumi.getter(name="diskSizeGb")
24081
- def disk_size_gb(self) -> Optional[pulumi.Input[int]]:
24082
- """
24083
- Specifies the size of the disk in base-2 GB.
24084
- """
24085
- return pulumi.get(self, "disk_size_gb")
24086
-
24087
- @disk_size_gb.setter
24088
- def disk_size_gb(self, value: Optional[pulumi.Input[int]]):
24089
- pulumi.set(self, "disk_size_gb", value)
24090
-
24091
- @property
24092
- @pulumi.getter(name="diskType")
24093
- def disk_type(self) -> Optional[pulumi.Input[str]]:
24094
- """
24095
- Specifies the desired disk type on the node. This disk type must be a local storage type (e.g.: local-ssd). Note that for nodeTemplates, this should be the name of the disk type and not its URL.
24096
- """
24097
- return pulumi.get(self, "disk_type")
24098
-
24099
- @disk_type.setter
24100
- def disk_type(self, value: Optional[pulumi.Input[str]]):
24101
- pulumi.set(self, "disk_type", value)
24102
-
24103
-
24104
23974
  if not MYPY:
24105
23975
  class NodeTemplateNodeTypeFlexibilityArgsDict(TypedDict):
24106
23976
  cpus: NotRequired[pulumi.Input[str]]
@@ -25895,7 +25765,7 @@ if not MYPY:
25895
25765
  class RegionAutoscalerAutoscalingPolicyScaleDownControlArgsDict(TypedDict):
25896
25766
  max_scaled_down_replicas: NotRequired[pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgsDict']]
25897
25767
  """
25898
- A nested object resource.
25768
+ A nested object resource
25899
25769
  Structure is documented below.
25900
25770
  """
25901
25771
  time_window_sec: NotRequired[pulumi.Input[int]]
@@ -25912,7 +25782,7 @@ class RegionAutoscalerAutoscalingPolicyScaleDownControlArgs:
25912
25782
  max_scaled_down_replicas: Optional[pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs']] = None,
25913
25783
  time_window_sec: Optional[pulumi.Input[int]] = None):
25914
25784
  """
25915
- :param pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs'] max_scaled_down_replicas: A nested object resource.
25785
+ :param pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs'] max_scaled_down_replicas: A nested object resource
25916
25786
  Structure is documented below.
25917
25787
  :param pulumi.Input[int] time_window_sec: How long back autoscaling should look when computing recommendations
25918
25788
  to include directives regarding slower scale down, as described above.
@@ -25926,7 +25796,7 @@ class RegionAutoscalerAutoscalingPolicyScaleDownControlArgs:
25926
25796
  @pulumi.getter(name="maxScaledDownReplicas")
25927
25797
  def max_scaled_down_replicas(self) -> Optional[pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleDownControlMaxScaledDownReplicasArgs']]:
25928
25798
  """
25929
- A nested object resource.
25799
+ A nested object resource
25930
25800
  Structure is documented below.
25931
25801
  """
25932
25802
  return pulumi.get(self, "max_scaled_down_replicas")
@@ -26011,7 +25881,7 @@ if not MYPY:
26011
25881
  class RegionAutoscalerAutoscalingPolicyScaleInControlArgsDict(TypedDict):
26012
25882
  max_scaled_in_replicas: NotRequired[pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgsDict']]
26013
25883
  """
26014
- A nested object resource.
25884
+ A nested object resource
26015
25885
  Structure is documented below.
26016
25886
  """
26017
25887
  time_window_sec: NotRequired[pulumi.Input[int]]
@@ -26028,7 +25898,7 @@ class RegionAutoscalerAutoscalingPolicyScaleInControlArgs:
26028
25898
  max_scaled_in_replicas: Optional[pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs']] = None,
26029
25899
  time_window_sec: Optional[pulumi.Input[int]] = None):
26030
25900
  """
26031
- :param pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs'] max_scaled_in_replicas: A nested object resource.
25901
+ :param pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs'] max_scaled_in_replicas: A nested object resource
26032
25902
  Structure is documented below.
26033
25903
  :param pulumi.Input[int] time_window_sec: How long back autoscaling should look when computing recommendations
26034
25904
  to include directives regarding slower scale down, as described above.
@@ -26042,7 +25912,7 @@ class RegionAutoscalerAutoscalingPolicyScaleInControlArgs:
26042
25912
  @pulumi.getter(name="maxScaledInReplicas")
26043
25913
  def max_scaled_in_replicas(self) -> Optional[pulumi.Input['RegionAutoscalerAutoscalingPolicyScaleInControlMaxScaledInReplicasArgs']]:
26044
25914
  """
26045
- A nested object resource.
25915
+ A nested object resource
26046
25916
  Structure is documented below.
26047
25917
  """
26048
25918
  return pulumi.get(self, "max_scaled_in_replicas")
@@ -30487,11 +30357,13 @@ if not MYPY:
30487
30357
  class RegionInstanceGroupManagerAllInstancesConfigArgsDict(TypedDict):
30488
30358
  labels: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
30489
30359
  """
30490
- The label key-value pairs that you want to patch onto the instance,
30360
+ , The label key-value pairs that you want to patch onto the instance.
30361
+
30362
+ - - -
30491
30363
  """
30492
30364
  metadata: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
30493
30365
  """
30494
- The metadata key-value pairs that you want to patch onto the instance. For more information, see Project and instance metadata,
30366
+ , The metadata key-value pairs that you want to patch onto the instance. For more information, see [Project and instance metadata](https://cloud.google.com/compute/docs/metadata#project_and_instance_metadata).
30495
30367
  """
30496
30368
  elif False:
30497
30369
  RegionInstanceGroupManagerAllInstancesConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -30502,8 +30374,10 @@ class RegionInstanceGroupManagerAllInstancesConfigArgs:
30502
30374
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
30503
30375
  metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
30504
30376
  """
30505
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The label key-value pairs that you want to patch onto the instance,
30506
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata key-value pairs that you want to patch onto the instance. For more information, see Project and instance metadata,
30377
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: , The label key-value pairs that you want to patch onto the instance.
30378
+
30379
+ - - -
30380
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: , The metadata key-value pairs that you want to patch onto the instance. For more information, see [Project and instance metadata](https://cloud.google.com/compute/docs/metadata#project_and_instance_metadata).
30507
30381
  """
30508
30382
  if labels is not None:
30509
30383
  pulumi.set(__self__, "labels", labels)
@@ -30514,7 +30388,9 @@ class RegionInstanceGroupManagerAllInstancesConfigArgs:
30514
30388
  @pulumi.getter
30515
30389
  def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
30516
30390
  """
30517
- The label key-value pairs that you want to patch onto the instance,
30391
+ , The label key-value pairs that you want to patch onto the instance.
30392
+
30393
+ - - -
30518
30394
  """
30519
30395
  return pulumi.get(self, "labels")
30520
30396
 
@@ -30526,7 +30402,7 @@ class RegionInstanceGroupManagerAllInstancesConfigArgs:
30526
30402
  @pulumi.getter
30527
30403
  def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
30528
30404
  """
30529
- The metadata key-value pairs that you want to patch onto the instance. For more information, see Project and instance metadata,
30405
+ , The metadata key-value pairs that you want to patch onto the instance. For more information, see [Project and instance metadata](https://cloud.google.com/compute/docs/metadata#project_and_instance_metadata).
30530
30406
  """
30531
30407
  return pulumi.get(self, "metadata")
30532
30408
 
@@ -30588,117 +30464,6 @@ class RegionInstanceGroupManagerAutoHealingPoliciesArgs:
30588
30464
  pulumi.set(self, "initial_delay_sec", value)
30589
30465
 
30590
30466
 
30591
- if not MYPY:
30592
- class RegionInstanceGroupManagerInstanceFlexibilityPolicyArgsDict(TypedDict):
30593
- instance_selections: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgsDict']]]]
30594
- """
30595
- Named instance selections configuring properties that the group will use when creating new VMs.
30596
- """
30597
- elif False:
30598
- RegionInstanceGroupManagerInstanceFlexibilityPolicyArgsDict: TypeAlias = Mapping[str, Any]
30599
-
30600
- @pulumi.input_type
30601
- class RegionInstanceGroupManagerInstanceFlexibilityPolicyArgs:
30602
- def __init__(__self__, *,
30603
- instance_selections: Optional[pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgs']]]] = None):
30604
- """
30605
- :param pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgs']]] instance_selections: Named instance selections configuring properties that the group will use when creating new VMs.
30606
- """
30607
- if instance_selections is not None:
30608
- pulumi.set(__self__, "instance_selections", instance_selections)
30609
-
30610
- @property
30611
- @pulumi.getter(name="instanceSelections")
30612
- def instance_selections(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgs']]]]:
30613
- """
30614
- Named instance selections configuring properties that the group will use when creating new VMs.
30615
- """
30616
- return pulumi.get(self, "instance_selections")
30617
-
30618
- @instance_selections.setter
30619
- def instance_selections(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgs']]]]):
30620
- pulumi.set(self, "instance_selections", value)
30621
-
30622
-
30623
- if not MYPY:
30624
- class RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgsDict(TypedDict):
30625
- machine_types: pulumi.Input[Sequence[pulumi.Input[str]]]
30626
- """
30627
- Full machine-type names, e.g. "n1-standard-16"
30628
- """
30629
- name: pulumi.Input[str]
30630
- """
30631
- The name of the instance group manager. Must be 1-63
30632
- characters long and comply with
30633
- [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
30634
- include lowercase letters, numbers, and hyphens.
30635
- """
30636
- rank: NotRequired[pulumi.Input[int]]
30637
- """
30638
- Preference of this instance selection. Lower number means higher preference. MIG will first try to create a VM based on the machine-type with lowest rank and fallback to next rank based on availability. Machine types and instance selections with the same rank have the same preference.
30639
- """
30640
- elif False:
30641
- RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgsDict: TypeAlias = Mapping[str, Any]
30642
-
30643
- @pulumi.input_type
30644
- class RegionInstanceGroupManagerInstanceFlexibilityPolicyInstanceSelectionArgs:
30645
- def __init__(__self__, *,
30646
- machine_types: pulumi.Input[Sequence[pulumi.Input[str]]],
30647
- name: pulumi.Input[str],
30648
- rank: Optional[pulumi.Input[int]] = None):
30649
- """
30650
- :param pulumi.Input[Sequence[pulumi.Input[str]]] machine_types: Full machine-type names, e.g. "n1-standard-16"
30651
- :param pulumi.Input[str] name: The name of the instance group manager. Must be 1-63
30652
- characters long and comply with
30653
- [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
30654
- include lowercase letters, numbers, and hyphens.
30655
- :param pulumi.Input[int] rank: Preference of this instance selection. Lower number means higher preference. MIG will first try to create a VM based on the machine-type with lowest rank and fallback to next rank based on availability. Machine types and instance selections with the same rank have the same preference.
30656
- """
30657
- pulumi.set(__self__, "machine_types", machine_types)
30658
- pulumi.set(__self__, "name", name)
30659
- if rank is not None:
30660
- pulumi.set(__self__, "rank", rank)
30661
-
30662
- @property
30663
- @pulumi.getter(name="machineTypes")
30664
- def machine_types(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
30665
- """
30666
- Full machine-type names, e.g. "n1-standard-16"
30667
- """
30668
- return pulumi.get(self, "machine_types")
30669
-
30670
- @machine_types.setter
30671
- def machine_types(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
30672
- pulumi.set(self, "machine_types", value)
30673
-
30674
- @property
30675
- @pulumi.getter
30676
- def name(self) -> pulumi.Input[str]:
30677
- """
30678
- The name of the instance group manager. Must be 1-63
30679
- characters long and comply with
30680
- [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
30681
- include lowercase letters, numbers, and hyphens.
30682
- """
30683
- return pulumi.get(self, "name")
30684
-
30685
- @name.setter
30686
- def name(self, value: pulumi.Input[str]):
30687
- pulumi.set(self, "name", value)
30688
-
30689
- @property
30690
- @pulumi.getter
30691
- def rank(self) -> Optional[pulumi.Input[int]]:
30692
- """
30693
- Preference of this instance selection. Lower number means higher preference. MIG will first try to create a VM based on the machine-type with lowest rank and fallback to next rank based on availability. Machine types and instance selections with the same rank have the same preference.
30694
- """
30695
- return pulumi.get(self, "rank")
30696
-
30697
- @rank.setter
30698
- def rank(self, value: Optional[pulumi.Input[int]]):
30699
- pulumi.set(self, "rank", value)
30700
-
30701
-
30702
30467
  if not MYPY:
30703
30468
  class RegionInstanceGroupManagerInstanceLifecyclePolicyArgsDict(TypedDict):
30704
30469
  default_action_on_failure: NotRequired[pulumi.Input[str]]
@@ -30706,7 +30471,6 @@ if not MYPY:
30706
30471
  , Default behavior for all instance or health check failures. Valid options are: `REPAIR`, `DO_NOTHING`. If `DO_NOTHING` then instances will not be repaired. If `REPAIR` (default), then failed instances will be repaired.
30707
30472
 
30708
30473
  - - -
30709
- <a name="nested_instance_flexibility_policy"></a>The `instance_flexibility_policy` block supports:
30710
30474
  """
30711
30475
  force_update_on_repair: NotRequired[pulumi.Input[str]]
30712
30476
  """
@@ -30724,7 +30488,6 @@ class RegionInstanceGroupManagerInstanceLifecyclePolicyArgs:
30724
30488
  :param pulumi.Input[str] default_action_on_failure: , Default behavior for all instance or health check failures. Valid options are: `REPAIR`, `DO_NOTHING`. If `DO_NOTHING` then instances will not be repaired. If `REPAIR` (default), then failed instances will be repaired.
30725
30489
 
30726
30490
  - - -
30727
- <a name="nested_instance_flexibility_policy"></a>The `instance_flexibility_policy` block supports:
30728
30491
  :param pulumi.Input[str] force_update_on_repair: , Specifies whether to apply the group's latest configuration when repairing a VM. Valid options are: `YES`, `NO`. If `YES` and you updated the group's instance template or per-instance configurations after the VM was created, then these changes are applied when VM is repaired. If `NO` (default), then updates are applied in accordance with the group's update policy type.
30729
30492
  """
30730
30493
  if default_action_on_failure is not None:
@@ -30739,7 +30502,6 @@ class RegionInstanceGroupManagerInstanceLifecyclePolicyArgs:
30739
30502
  , Default behavior for all instance or health check failures. Valid options are: `REPAIR`, `DO_NOTHING`. If `DO_NOTHING` then instances will not be repaired. If `REPAIR` (default), then failed instances will be repaired.
30740
30503
 
30741
30504
  - - -
30742
- <a name="nested_instance_flexibility_policy"></a>The `instance_flexibility_policy` block supports:
30743
30505
  """
30744
30506
  return pulumi.get(self, "default_action_on_failure")
30745
30507
 
@@ -36997,1973 +36759,304 @@ class RegionPerInstanceConfigPreservedStateInternalIpIpAddressArgs:
36997
36759
 
36998
36760
 
36999
36761
  if not MYPY:
37000
- class RegionResizeRequestRequestedRunDurationArgsDict(TypedDict):
37001
- seconds: pulumi.Input[str]
37002
- """
37003
- Span of time at a resolution of a second. Must be from 600 to 604800 inclusive. Note: minimum and maximum allowed range for requestedRunDuration is 10 minutes (600 seconds) and 7 days(604800 seconds) correspondingly.
37004
- """
37005
- nanos: NotRequired[pulumi.Input[int]]
36762
+ class RegionSecurityPolicyDdosProtectionConfigArgsDict(TypedDict):
36763
+ ddos_protection: pulumi.Input[str]
37006
36764
  """
37007
- Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
36765
+ Google Cloud Armor offers the following options to help protect systems against DDoS attacks:
36766
+ - STANDARD: basic always-on protection for network load balancers, protocol forwarding, or VMs with public IP addresses.
36767
+ - ADVANCED: additional protections for Managed Protection Plus subscribers who use network load balancers, protocol forwarding, or VMs with public IP addresses.
36768
+ - ADVANCED_PREVIEW: flag to enable the security policy in preview mode.
36769
+ Possible values are: `ADVANCED`, `ADVANCED_PREVIEW`, `STANDARD`.
37008
36770
  """
37009
36771
  elif False:
37010
- RegionResizeRequestRequestedRunDurationArgsDict: TypeAlias = Mapping[str, Any]
36772
+ RegionSecurityPolicyDdosProtectionConfigArgsDict: TypeAlias = Mapping[str, Any]
37011
36773
 
37012
36774
  @pulumi.input_type
37013
- class RegionResizeRequestRequestedRunDurationArgs:
36775
+ class RegionSecurityPolicyDdosProtectionConfigArgs:
37014
36776
  def __init__(__self__, *,
37015
- seconds: pulumi.Input[str],
37016
- nanos: Optional[pulumi.Input[int]] = None):
37017
- """
37018
- :param pulumi.Input[str] seconds: Span of time at a resolution of a second. Must be from 600 to 604800 inclusive. Note: minimum and maximum allowed range for requestedRunDuration is 10 minutes (600 seconds) and 7 days(604800 seconds) correspondingly.
37019
- :param pulumi.Input[int] nanos: Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
37020
- """
37021
- pulumi.set(__self__, "seconds", seconds)
37022
- if nanos is not None:
37023
- pulumi.set(__self__, "nanos", nanos)
37024
-
37025
- @property
37026
- @pulumi.getter
37027
- def seconds(self) -> pulumi.Input[str]:
36777
+ ddos_protection: pulumi.Input[str]):
37028
36778
  """
37029
- Span of time at a resolution of a second. Must be from 600 to 604800 inclusive. Note: minimum and maximum allowed range for requestedRunDuration is 10 minutes (600 seconds) and 7 days(604800 seconds) correspondingly.
36779
+ :param pulumi.Input[str] ddos_protection: Google Cloud Armor offers the following options to help protect systems against DDoS attacks:
36780
+ - STANDARD: basic always-on protection for network load balancers, protocol forwarding, or VMs with public IP addresses.
36781
+ - ADVANCED: additional protections for Managed Protection Plus subscribers who use network load balancers, protocol forwarding, or VMs with public IP addresses.
36782
+ - ADVANCED_PREVIEW: flag to enable the security policy in preview mode.
36783
+ Possible values are: `ADVANCED`, `ADVANCED_PREVIEW`, `STANDARD`.
37030
36784
  """
37031
- return pulumi.get(self, "seconds")
37032
-
37033
- @seconds.setter
37034
- def seconds(self, value: pulumi.Input[str]):
37035
- pulumi.set(self, "seconds", value)
36785
+ pulumi.set(__self__, "ddos_protection", ddos_protection)
37036
36786
 
37037
36787
  @property
37038
- @pulumi.getter
37039
- def nanos(self) -> Optional[pulumi.Input[int]]:
36788
+ @pulumi.getter(name="ddosProtection")
36789
+ def ddos_protection(self) -> pulumi.Input[str]:
37040
36790
  """
37041
- Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
36791
+ Google Cloud Armor offers the following options to help protect systems against DDoS attacks:
36792
+ - STANDARD: basic always-on protection for network load balancers, protocol forwarding, or VMs with public IP addresses.
36793
+ - ADVANCED: additional protections for Managed Protection Plus subscribers who use network load balancers, protocol forwarding, or VMs with public IP addresses.
36794
+ - ADVANCED_PREVIEW: flag to enable the security policy in preview mode.
36795
+ Possible values are: `ADVANCED`, `ADVANCED_PREVIEW`, `STANDARD`.
37042
36796
  """
37043
- return pulumi.get(self, "nanos")
36797
+ return pulumi.get(self, "ddos_protection")
37044
36798
 
37045
- @nanos.setter
37046
- def nanos(self, value: Optional[pulumi.Input[int]]):
37047
- pulumi.set(self, "nanos", value)
36799
+ @ddos_protection.setter
36800
+ def ddos_protection(self, value: pulumi.Input[str]):
36801
+ pulumi.set(self, "ddos_protection", value)
37048
36802
 
37049
36803
 
37050
36804
  if not MYPY:
37051
- class RegionResizeRequestStatusArgsDict(TypedDict):
37052
- errors: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorArgsDict']]]]
36805
+ class RegionSecurityPolicyRuleMatchArgsDict(TypedDict):
36806
+ config: NotRequired[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgsDict']]
37053
36807
  """
37054
- (Output)
37055
- Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. Contrary to the lastAttempt errors, this field is final and errors are never removed from here, as the ResizeRequest is not going to retry.
36808
+ The configuration options available when specifying versionedExpr.
36809
+ This field must be specified if versionedExpr is specified and cannot be specified if versionedExpr is not specified.
37056
36810
  Structure is documented below.
37057
36811
  """
37058
- last_attempts: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptArgsDict']]]]
36812
+ expr: NotRequired[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgsDict']]
37059
36813
  """
37060
- (Output)
37061
- Information about the last attempt to fulfill the request. The value is temporary since the ResizeRequest can retry, as long as it's still active and the last attempt value can either be cleared or replaced with a different error. Since ResizeRequest retries infrequently, the value may be stale and no longer show an active problem. The value is cleared when ResizeRequest transitions to the final state (becomes inactive). If the final state is FAILED the error describing it will be storred in the "error" field only.
36814
+ User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.
37062
36815
  Structure is documented below.
37063
36816
  """
36817
+ versioned_expr: NotRequired[pulumi.Input[str]]
36818
+ """
36819
+ Preconfigured versioned expression. If this field is specified, config must also be specified.
36820
+ Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding srcIpRange field in config.
36821
+ Possible values are: `SRC_IPS_V1`.
36822
+ """
37064
36823
  elif False:
37065
- RegionResizeRequestStatusArgsDict: TypeAlias = Mapping[str, Any]
36824
+ RegionSecurityPolicyRuleMatchArgsDict: TypeAlias = Mapping[str, Any]
37066
36825
 
37067
36826
  @pulumi.input_type
37068
- class RegionResizeRequestStatusArgs:
36827
+ class RegionSecurityPolicyRuleMatchArgs:
37069
36828
  def __init__(__self__, *,
37070
- errors: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorArgs']]]] = None,
37071
- last_attempts: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptArgs']]]] = None):
36829
+ config: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs']] = None,
36830
+ expr: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs']] = None,
36831
+ versioned_expr: Optional[pulumi.Input[str]] = None):
37072
36832
  """
37073
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorArgs']]] errors: (Output)
37074
- Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. Contrary to the lastAttempt errors, this field is final and errors are never removed from here, as the ResizeRequest is not going to retry.
36833
+ :param pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs'] config: The configuration options available when specifying versionedExpr.
36834
+ This field must be specified if versionedExpr is specified and cannot be specified if versionedExpr is not specified.
37075
36835
  Structure is documented below.
37076
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptArgs']]] last_attempts: (Output)
37077
- Information about the last attempt to fulfill the request. The value is temporary since the ResizeRequest can retry, as long as it's still active and the last attempt value can either be cleared or replaced with a different error. Since ResizeRequest retries infrequently, the value may be stale and no longer show an active problem. The value is cleared when ResizeRequest transitions to the final state (becomes inactive). If the final state is FAILED the error describing it will be storred in the "error" field only.
36836
+ :param pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs'] expr: User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.
37078
36837
  Structure is documented below.
36838
+ :param pulumi.Input[str] versioned_expr: Preconfigured versioned expression. If this field is specified, config must also be specified.
36839
+ Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding srcIpRange field in config.
36840
+ Possible values are: `SRC_IPS_V1`.
37079
36841
  """
37080
- if errors is not None:
37081
- pulumi.set(__self__, "errors", errors)
37082
- if last_attempts is not None:
37083
- pulumi.set(__self__, "last_attempts", last_attempts)
36842
+ if config is not None:
36843
+ pulumi.set(__self__, "config", config)
36844
+ if expr is not None:
36845
+ pulumi.set(__self__, "expr", expr)
36846
+ if versioned_expr is not None:
36847
+ pulumi.set(__self__, "versioned_expr", versioned_expr)
37084
36848
 
37085
36849
  @property
37086
36850
  @pulumi.getter
37087
- def errors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorArgs']]]]:
36851
+ def config(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs']]:
37088
36852
  """
37089
- (Output)
37090
- Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. Contrary to the lastAttempt errors, this field is final and errors are never removed from here, as the ResizeRequest is not going to retry.
36853
+ The configuration options available when specifying versionedExpr.
36854
+ This field must be specified if versionedExpr is specified and cannot be specified if versionedExpr is not specified.
37091
36855
  Structure is documented below.
37092
36856
  """
37093
- return pulumi.get(self, "errors")
36857
+ return pulumi.get(self, "config")
37094
36858
 
37095
- @errors.setter
37096
- def errors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorArgs']]]]):
37097
- pulumi.set(self, "errors", value)
36859
+ @config.setter
36860
+ def config(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs']]):
36861
+ pulumi.set(self, "config", value)
37098
36862
 
37099
36863
  @property
37100
- @pulumi.getter(name="lastAttempts")
37101
- def last_attempts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptArgs']]]]:
36864
+ @pulumi.getter
36865
+ def expr(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs']]:
37102
36866
  """
37103
- (Output)
37104
- Information about the last attempt to fulfill the request. The value is temporary since the ResizeRequest can retry, as long as it's still active and the last attempt value can either be cleared or replaced with a different error. Since ResizeRequest retries infrequently, the value may be stale and no longer show an active problem. The value is cleared when ResizeRequest transitions to the final state (becomes inactive). If the final state is FAILED the error describing it will be storred in the "error" field only.
36867
+ User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.
37105
36868
  Structure is documented below.
37106
36869
  """
37107
- return pulumi.get(self, "last_attempts")
36870
+ return pulumi.get(self, "expr")
37108
36871
 
37109
- @last_attempts.setter
37110
- def last_attempts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptArgs']]]]):
37111
- pulumi.set(self, "last_attempts", value)
36872
+ @expr.setter
36873
+ def expr(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs']]):
36874
+ pulumi.set(self, "expr", value)
36875
+
36876
+ @property
36877
+ @pulumi.getter(name="versionedExpr")
36878
+ def versioned_expr(self) -> Optional[pulumi.Input[str]]:
36879
+ """
36880
+ Preconfigured versioned expression. If this field is specified, config must also be specified.
36881
+ Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding srcIpRange field in config.
36882
+ Possible values are: `SRC_IPS_V1`.
36883
+ """
36884
+ return pulumi.get(self, "versioned_expr")
36885
+
36886
+ @versioned_expr.setter
36887
+ def versioned_expr(self, value: Optional[pulumi.Input[str]]):
36888
+ pulumi.set(self, "versioned_expr", value)
37112
36889
 
37113
36890
 
37114
36891
  if not MYPY:
37115
- class RegionResizeRequestStatusErrorArgsDict(TypedDict):
37116
- errors: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorArgsDict']]]]
36892
+ class RegionSecurityPolicyRuleMatchConfigArgsDict(TypedDict):
36893
+ src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
37117
36894
  """
37118
- (Output)
37119
- The array of errors encountered while processing this operation.
37120
- Structure is documented below.
36895
+ CIDR IP address range. Maximum number of srcIpRanges allowed is 10.
37121
36896
  """
37122
36897
  elif False:
37123
- RegionResizeRequestStatusErrorArgsDict: TypeAlias = Mapping[str, Any]
36898
+ RegionSecurityPolicyRuleMatchConfigArgsDict: TypeAlias = Mapping[str, Any]
37124
36899
 
37125
36900
  @pulumi.input_type
37126
- class RegionResizeRequestStatusErrorArgs:
36901
+ class RegionSecurityPolicyRuleMatchConfigArgs:
37127
36902
  def __init__(__self__, *,
37128
- errors: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorArgs']]]] = None):
36903
+ src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
37129
36904
  """
37130
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorArgs']]] errors: (Output)
37131
- The array of errors encountered while processing this operation.
37132
- Structure is documented below.
36905
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: CIDR IP address range. Maximum number of srcIpRanges allowed is 10.
37133
36906
  """
37134
- if errors is not None:
37135
- pulumi.set(__self__, "errors", errors)
36907
+ if src_ip_ranges is not None:
36908
+ pulumi.set(__self__, "src_ip_ranges", src_ip_ranges)
37136
36909
 
37137
36910
  @property
37138
- @pulumi.getter
37139
- def errors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorArgs']]]]:
36911
+ @pulumi.getter(name="srcIpRanges")
36912
+ def src_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
37140
36913
  """
37141
- (Output)
37142
- The array of errors encountered while processing this operation.
37143
- Structure is documented below.
36914
+ CIDR IP address range. Maximum number of srcIpRanges allowed is 10.
37144
36915
  """
37145
- return pulumi.get(self, "errors")
36916
+ return pulumi.get(self, "src_ip_ranges")
37146
36917
 
37147
- @errors.setter
37148
- def errors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorArgs']]]]):
37149
- pulumi.set(self, "errors", value)
36918
+ @src_ip_ranges.setter
36919
+ def src_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
36920
+ pulumi.set(self, "src_ip_ranges", value)
37150
36921
 
37151
36922
 
37152
36923
  if not MYPY:
37153
- class RegionResizeRequestStatusErrorErrorArgsDict(TypedDict):
37154
- code: NotRequired[pulumi.Input[str]]
37155
- """
37156
- (Output)
37157
- The error type identifier for this error.
37158
- """
37159
- error_details: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailArgsDict']]]]
37160
- """
37161
- (Output)
37162
- An array of messages that contain the error details. There is a set of defined message types to use for providing details.The syntax depends on the error code. For example, QuotaExceededInfo will have details when the error code is QUOTA_EXCEEDED.
37163
- Structure is documented below.
37164
- """
37165
- location: NotRequired[pulumi.Input[str]]
37166
- """
37167
- (Output)
37168
- Indicates the field in the request that caused the error. This property is optional.
37169
- """
37170
- message: NotRequired[pulumi.Input[str]]
36924
+ class RegionSecurityPolicyRuleMatchExprArgsDict(TypedDict):
36925
+ expression: pulumi.Input[str]
37171
36926
  """
37172
- (Output)
37173
- The localized error message in the above locale.
36927
+ Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.
37174
36928
  """
37175
36929
  elif False:
37176
- RegionResizeRequestStatusErrorErrorArgsDict: TypeAlias = Mapping[str, Any]
36930
+ RegionSecurityPolicyRuleMatchExprArgsDict: TypeAlias = Mapping[str, Any]
37177
36931
 
37178
36932
  @pulumi.input_type
37179
- class RegionResizeRequestStatusErrorErrorArgs:
36933
+ class RegionSecurityPolicyRuleMatchExprArgs:
37180
36934
  def __init__(__self__, *,
37181
- code: Optional[pulumi.Input[str]] = None,
37182
- error_details: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailArgs']]]] = None,
37183
- location: Optional[pulumi.Input[str]] = None,
37184
- message: Optional[pulumi.Input[str]] = None):
36935
+ expression: pulumi.Input[str]):
37185
36936
  """
37186
- :param pulumi.Input[str] code: (Output)
37187
- The error type identifier for this error.
37188
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailArgs']]] error_details: (Output)
37189
- An array of messages that contain the error details. There is a set of defined message types to use for providing details.The syntax depends on the error code. For example, QuotaExceededInfo will have details when the error code is QUOTA_EXCEEDED.
37190
- Structure is documented below.
37191
- :param pulumi.Input[str] location: (Output)
37192
- Indicates the field in the request that caused the error. This property is optional.
37193
- :param pulumi.Input[str] message: (Output)
37194
- The localized error message in the above locale.
36937
+ :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.
37195
36938
  """
37196
- if code is not None:
37197
- pulumi.set(__self__, "code", code)
37198
- if error_details is not None:
37199
- pulumi.set(__self__, "error_details", error_details)
37200
- if location is not None:
37201
- pulumi.set(__self__, "location", location)
37202
- if message is not None:
37203
- pulumi.set(__self__, "message", message)
36939
+ pulumi.set(__self__, "expression", expression)
37204
36940
 
37205
36941
  @property
37206
36942
  @pulumi.getter
37207
- def code(self) -> Optional[pulumi.Input[str]]:
36943
+ def expression(self) -> pulumi.Input[str]:
37208
36944
  """
37209
- (Output)
37210
- The error type identifier for this error.
36945
+ Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.
37211
36946
  """
37212
- return pulumi.get(self, "code")
36947
+ return pulumi.get(self, "expression")
37213
36948
 
37214
- @code.setter
37215
- def code(self, value: Optional[pulumi.Input[str]]):
37216
- pulumi.set(self, "code", value)
36949
+ @expression.setter
36950
+ def expression(self, value: pulumi.Input[str]):
36951
+ pulumi.set(self, "expression", value)
37217
36952
 
37218
- @property
37219
- @pulumi.getter(name="errorDetails")
37220
- def error_details(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailArgs']]]]:
36953
+
36954
+ if not MYPY:
36955
+ class RegionSecurityPolicyRuleNetworkMatchArgsDict(TypedDict):
36956
+ dest_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
37221
36957
  """
37222
- (Output)
37223
- An array of messages that contain the error details. There is a set of defined message types to use for providing details.The syntax depends on the error code. For example, QuotaExceededInfo will have details when the error code is QUOTA_EXCEEDED.
37224
- Structure is documented below.
36958
+ Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
37225
36959
  """
37226
- return pulumi.get(self, "error_details")
37227
-
37228
- @error_details.setter
37229
- def error_details(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailArgs']]]]):
37230
- pulumi.set(self, "error_details", value)
37231
-
37232
- @property
37233
- @pulumi.getter
37234
- def location(self) -> Optional[pulumi.Input[str]]:
36960
+ dest_ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
37235
36961
  """
37236
- (Output)
37237
- Indicates the field in the request that caused the error. This property is optional.
36962
+ Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
37238
36963
  """
37239
- return pulumi.get(self, "location")
37240
-
37241
- @location.setter
37242
- def location(self, value: Optional[pulumi.Input[str]]):
37243
- pulumi.set(self, "location", value)
37244
-
37245
- @property
37246
- @pulumi.getter
37247
- def message(self) -> Optional[pulumi.Input[str]]:
36964
+ ip_protocols: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
37248
36965
  """
37249
- (Output)
37250
- The localized error message in the above locale.
36966
+ IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
37251
36967
  """
37252
- return pulumi.get(self, "message")
37253
-
37254
- @message.setter
37255
- def message(self, value: Optional[pulumi.Input[str]]):
37256
- pulumi.set(self, "message", value)
37257
-
37258
-
37259
- if not MYPY:
37260
- class RegionResizeRequestStatusErrorErrorErrorDetailArgsDict(TypedDict):
37261
- error_infos: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgsDict']]]]
36968
+ src_asns: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]]
37262
36969
  """
37263
- (Output)
37264
- A nested object resource.
37265
- Structure is documented below.
36970
+ BGP Autonomous System Number associated with the source IP address.
36971
+ """
36972
+ src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
37266
36973
  """
37267
- helps: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpArgsDict']]]]
36974
+ Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
37268
36975
  """
37269
- (Output)
37270
- A nested object resource.
37271
- Structure is documented below.
36976
+ src_ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
37272
36977
  """
37273
- localized_messages: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgsDict']]]]
36978
+ Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
37274
36979
  """
37275
- (Output)
37276
- A nested object resource.
37277
- Structure is documented below.
36980
+ src_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
37278
36981
  """
37279
- quota_infos: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgsDict']]]]
36982
+ Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
37280
36983
  """
37281
- (Output)
37282
- A nested object resource.
36984
+ user_defined_fields: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchUserDefinedFieldArgsDict']]]]
36985
+ """
36986
+ User-defined fields. Each element names a defined field and lists the matching values for that field.
37283
36987
  Structure is documented below.
37284
36988
  """
37285
36989
  elif False:
37286
- RegionResizeRequestStatusErrorErrorErrorDetailArgsDict: TypeAlias = Mapping[str, Any]
36990
+ RegionSecurityPolicyRuleNetworkMatchArgsDict: TypeAlias = Mapping[str, Any]
37287
36991
 
37288
36992
  @pulumi.input_type
37289
- class RegionResizeRequestStatusErrorErrorErrorDetailArgs:
36993
+ class RegionSecurityPolicyRuleNetworkMatchArgs:
37290
36994
  def __init__(__self__, *,
37291
- error_infos: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgs']]]] = None,
37292
- helps: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpArgs']]]] = None,
37293
- localized_messages: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgs']]]] = None,
37294
- quota_infos: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgs']]]] = None):
36995
+ dest_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
36996
+ dest_ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
36997
+ ip_protocols: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
36998
+ src_asns: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
36999
+ src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
37000
+ src_ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
37001
+ src_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
37002
+ user_defined_fields: Optional[pulumi.Input[Sequence[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchUserDefinedFieldArgs']]]] = None):
37295
37003
  """
37296
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgs']]] error_infos: (Output)
37297
- A nested object resource.
37298
- Structure is documented below.
37299
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpArgs']]] helps: (Output)
37300
- A nested object resource.
37301
- Structure is documented below.
37302
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgs']]] localized_messages: (Output)
37303
- A nested object resource.
37304
- Structure is documented below.
37305
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgs']]] quota_infos: (Output)
37306
- A nested object resource.
37004
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ip_ranges: Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
37005
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ports: Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
37006
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] ip_protocols: IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
37007
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] src_asns: BGP Autonomous System Number associated with the source IP address.
37008
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
37009
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ports: Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
37010
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] src_region_codes: Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
37011
+ :param pulumi.Input[Sequence[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchUserDefinedFieldArgs']]] user_defined_fields: User-defined fields. Each element names a defined field and lists the matching values for that field.
37307
37012
  Structure is documented below.
37308
37013
  """
37309
- if error_infos is not None:
37310
- pulumi.set(__self__, "error_infos", error_infos)
37311
- if helps is not None:
37312
- pulumi.set(__self__, "helps", helps)
37313
- if localized_messages is not None:
37314
- pulumi.set(__self__, "localized_messages", localized_messages)
37315
- if quota_infos is not None:
37316
- pulumi.set(__self__, "quota_infos", quota_infos)
37014
+ if dest_ip_ranges is not None:
37015
+ pulumi.set(__self__, "dest_ip_ranges", dest_ip_ranges)
37016
+ if dest_ports is not None:
37017
+ pulumi.set(__self__, "dest_ports", dest_ports)
37018
+ if ip_protocols is not None:
37019
+ pulumi.set(__self__, "ip_protocols", ip_protocols)
37020
+ if src_asns is not None:
37021
+ pulumi.set(__self__, "src_asns", src_asns)
37022
+ if src_ip_ranges is not None:
37023
+ pulumi.set(__self__, "src_ip_ranges", src_ip_ranges)
37024
+ if src_ports is not None:
37025
+ pulumi.set(__self__, "src_ports", src_ports)
37026
+ if src_region_codes is not None:
37027
+ pulumi.set(__self__, "src_region_codes", src_region_codes)
37028
+ if user_defined_fields is not None:
37029
+ pulumi.set(__self__, "user_defined_fields", user_defined_fields)
37317
37030
 
37318
37031
  @property
37319
- @pulumi.getter(name="errorInfos")
37320
- def error_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgs']]]]:
37032
+ @pulumi.getter(name="destIpRanges")
37033
+ def dest_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
37321
37034
  """
37322
- (Output)
37323
- A nested object resource.
37324
- Structure is documented below.
37035
+ Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
37325
37036
  """
37326
- return pulumi.get(self, "error_infos")
37037
+ return pulumi.get(self, "dest_ip_ranges")
37327
37038
 
37328
- @error_infos.setter
37329
- def error_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgs']]]]):
37330
- pulumi.set(self, "error_infos", value)
37039
+ @dest_ip_ranges.setter
37040
+ def dest_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
37041
+ pulumi.set(self, "dest_ip_ranges", value)
37331
37042
 
37332
37043
  @property
37333
- @pulumi.getter
37334
- def helps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpArgs']]]]:
37044
+ @pulumi.getter(name="destPorts")
37045
+ def dest_ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
37335
37046
  """
37336
- (Output)
37337
- A nested object resource.
37338
- Structure is documented below.
37047
+ Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
37339
37048
  """
37340
- return pulumi.get(self, "helps")
37049
+ return pulumi.get(self, "dest_ports")
37341
37050
 
37342
- @helps.setter
37343
- def helps(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpArgs']]]]):
37344
- pulumi.set(self, "helps", value)
37051
+ @dest_ports.setter
37052
+ def dest_ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
37053
+ pulumi.set(self, "dest_ports", value)
37345
37054
 
37346
37055
  @property
37347
- @pulumi.getter(name="localizedMessages")
37348
- def localized_messages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgs']]]]:
37056
+ @pulumi.getter(name="ipProtocols")
37057
+ def ip_protocols(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
37349
37058
  """
37350
- (Output)
37351
- A nested object resource.
37352
- Structure is documented below.
37353
- """
37354
- return pulumi.get(self, "localized_messages")
37355
-
37356
- @localized_messages.setter
37357
- def localized_messages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgs']]]]):
37358
- pulumi.set(self, "localized_messages", value)
37359
-
37360
- @property
37361
- @pulumi.getter(name="quotaInfos")
37362
- def quota_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgs']]]]:
37363
- """
37364
- (Output)
37365
- A nested object resource.
37366
- Structure is documented below.
37367
- """
37368
- return pulumi.get(self, "quota_infos")
37369
-
37370
- @quota_infos.setter
37371
- def quota_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgs']]]]):
37372
- pulumi.set(self, "quota_infos", value)
37373
-
37374
-
37375
- if not MYPY:
37376
- class RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgsDict(TypedDict):
37377
- domain: NotRequired[pulumi.Input[str]]
37378
- """
37379
- (Output)
37380
- The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com".
37381
- """
37382
- metadatas: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
37383
- """
37384
- (Output)
37385
- Additional structured details about this error.
37386
- """
37387
- reason: NotRequired[pulumi.Input[str]]
37388
- """
37389
- (Output)
37390
- The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors.
37391
- """
37392
- elif False:
37393
- RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgsDict: TypeAlias = Mapping[str, Any]
37394
-
37395
- @pulumi.input_type
37396
- class RegionResizeRequestStatusErrorErrorErrorDetailErrorInfoArgs:
37397
- def __init__(__self__, *,
37398
- domain: Optional[pulumi.Input[str]] = None,
37399
- metadatas: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
37400
- reason: Optional[pulumi.Input[str]] = None):
37401
- """
37402
- :param pulumi.Input[str] domain: (Output)
37403
- The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com".
37404
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadatas: (Output)
37405
- Additional structured details about this error.
37406
- :param pulumi.Input[str] reason: (Output)
37407
- The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors.
37408
- """
37409
- if domain is not None:
37410
- pulumi.set(__self__, "domain", domain)
37411
- if metadatas is not None:
37412
- pulumi.set(__self__, "metadatas", metadatas)
37413
- if reason is not None:
37414
- pulumi.set(__self__, "reason", reason)
37415
-
37416
- @property
37417
- @pulumi.getter
37418
- def domain(self) -> Optional[pulumi.Input[str]]:
37419
- """
37420
- (Output)
37421
- The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com".
37422
- """
37423
- return pulumi.get(self, "domain")
37424
-
37425
- @domain.setter
37426
- def domain(self, value: Optional[pulumi.Input[str]]):
37427
- pulumi.set(self, "domain", value)
37428
-
37429
- @property
37430
- @pulumi.getter
37431
- def metadatas(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
37432
- """
37433
- (Output)
37434
- Additional structured details about this error.
37435
- """
37436
- return pulumi.get(self, "metadatas")
37437
-
37438
- @metadatas.setter
37439
- def metadatas(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
37440
- pulumi.set(self, "metadatas", value)
37441
-
37442
- @property
37443
- @pulumi.getter
37444
- def reason(self) -> Optional[pulumi.Input[str]]:
37445
- """
37446
- (Output)
37447
- The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors.
37448
- """
37449
- return pulumi.get(self, "reason")
37450
-
37451
- @reason.setter
37452
- def reason(self, value: Optional[pulumi.Input[str]]):
37453
- pulumi.set(self, "reason", value)
37454
-
37455
-
37456
- if not MYPY:
37457
- class RegionResizeRequestStatusErrorErrorErrorDetailHelpArgsDict(TypedDict):
37458
- links: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgsDict']]]]
37459
- """
37460
- (Output)
37461
- A nested object resource.
37462
- Structure is documented below.
37463
- """
37464
- elif False:
37465
- RegionResizeRequestStatusErrorErrorErrorDetailHelpArgsDict: TypeAlias = Mapping[str, Any]
37466
-
37467
- @pulumi.input_type
37468
- class RegionResizeRequestStatusErrorErrorErrorDetailHelpArgs:
37469
- def __init__(__self__, *,
37470
- links: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgs']]]] = None):
37471
- """
37472
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgs']]] links: (Output)
37473
- A nested object resource.
37474
- Structure is documented below.
37475
- """
37476
- if links is not None:
37477
- pulumi.set(__self__, "links", links)
37478
-
37479
- @property
37480
- @pulumi.getter
37481
- def links(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgs']]]]:
37482
- """
37483
- (Output)
37484
- A nested object resource.
37485
- Structure is documented below.
37486
- """
37487
- return pulumi.get(self, "links")
37488
-
37489
- @links.setter
37490
- def links(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgs']]]]):
37491
- pulumi.set(self, "links", value)
37492
-
37493
-
37494
- if not MYPY:
37495
- class RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgsDict(TypedDict):
37496
- description: NotRequired[pulumi.Input[str]]
37497
- """
37498
- An optional description of this resize-request.
37499
- """
37500
- url: NotRequired[pulumi.Input[str]]
37501
- """
37502
- (Output)
37503
- The URL of the link.
37504
- """
37505
- elif False:
37506
- RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgsDict: TypeAlias = Mapping[str, Any]
37507
-
37508
- @pulumi.input_type
37509
- class RegionResizeRequestStatusErrorErrorErrorDetailHelpLinkArgs:
37510
- def __init__(__self__, *,
37511
- description: Optional[pulumi.Input[str]] = None,
37512
- url: Optional[pulumi.Input[str]] = None):
37513
- """
37514
- :param pulumi.Input[str] description: An optional description of this resize-request.
37515
- :param pulumi.Input[str] url: (Output)
37516
- The URL of the link.
37517
- """
37518
- if description is not None:
37519
- pulumi.set(__self__, "description", description)
37520
- if url is not None:
37521
- pulumi.set(__self__, "url", url)
37522
-
37523
- @property
37524
- @pulumi.getter
37525
- def description(self) -> Optional[pulumi.Input[str]]:
37526
- """
37527
- An optional description of this resize-request.
37528
- """
37529
- return pulumi.get(self, "description")
37530
-
37531
- @description.setter
37532
- def description(self, value: Optional[pulumi.Input[str]]):
37533
- pulumi.set(self, "description", value)
37534
-
37535
- @property
37536
- @pulumi.getter
37537
- def url(self) -> Optional[pulumi.Input[str]]:
37538
- """
37539
- (Output)
37540
- The URL of the link.
37541
- """
37542
- return pulumi.get(self, "url")
37543
-
37544
- @url.setter
37545
- def url(self, value: Optional[pulumi.Input[str]]):
37546
- pulumi.set(self, "url", value)
37547
-
37548
-
37549
- if not MYPY:
37550
- class RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgsDict(TypedDict):
37551
- locale: NotRequired[pulumi.Input[str]]
37552
- """
37553
- (Output)
37554
- The locale used following the specification defined at https://www.rfc-editor.org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
37555
- """
37556
- message: NotRequired[pulumi.Input[str]]
37557
- """
37558
- (Output)
37559
- The localized error message in the above locale.
37560
- """
37561
- elif False:
37562
- RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgsDict: TypeAlias = Mapping[str, Any]
37563
-
37564
- @pulumi.input_type
37565
- class RegionResizeRequestStatusErrorErrorErrorDetailLocalizedMessageArgs:
37566
- def __init__(__self__, *,
37567
- locale: Optional[pulumi.Input[str]] = None,
37568
- message: Optional[pulumi.Input[str]] = None):
37569
- """
37570
- :param pulumi.Input[str] locale: (Output)
37571
- The locale used following the specification defined at https://www.rfc-editor.org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
37572
- :param pulumi.Input[str] message: (Output)
37573
- The localized error message in the above locale.
37574
- """
37575
- if locale is not None:
37576
- pulumi.set(__self__, "locale", locale)
37577
- if message is not None:
37578
- pulumi.set(__self__, "message", message)
37579
-
37580
- @property
37581
- @pulumi.getter
37582
- def locale(self) -> Optional[pulumi.Input[str]]:
37583
- """
37584
- (Output)
37585
- The locale used following the specification defined at https://www.rfc-editor.org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
37586
- """
37587
- return pulumi.get(self, "locale")
37588
-
37589
- @locale.setter
37590
- def locale(self, value: Optional[pulumi.Input[str]]):
37591
- pulumi.set(self, "locale", value)
37592
-
37593
- @property
37594
- @pulumi.getter
37595
- def message(self) -> Optional[pulumi.Input[str]]:
37596
- """
37597
- (Output)
37598
- The localized error message in the above locale.
37599
- """
37600
- return pulumi.get(self, "message")
37601
-
37602
- @message.setter
37603
- def message(self, value: Optional[pulumi.Input[str]]):
37604
- pulumi.set(self, "message", value)
37605
-
37606
-
37607
- if not MYPY:
37608
- class RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgsDict(TypedDict):
37609
- dimensions: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
37610
- """
37611
- (Output)
37612
- The map holding related quota dimensions
37613
- """
37614
- future_limit: NotRequired[pulumi.Input[int]]
37615
- """
37616
- (Output)
37617
- Future quota limit being rolled out. The limit's unit depends on the quota type or metric.
37618
- """
37619
- limit: NotRequired[pulumi.Input[int]]
37620
- """
37621
- (Output)
37622
- Current effective quota limit. The limit's unit depends on the quota type or metric.
37623
- """
37624
- limit_name: NotRequired[pulumi.Input[str]]
37625
- """
37626
- (Output)
37627
- The name of the quota limit.
37628
- """
37629
- metric_name: NotRequired[pulumi.Input[str]]
37630
- """
37631
- (Output)
37632
- The Compute Engine quota metric name.
37633
- """
37634
- rollout_status: NotRequired[pulumi.Input[str]]
37635
- """
37636
- (Output)
37637
- Rollout status of the future quota limit.
37638
- """
37639
- elif False:
37640
- RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgsDict: TypeAlias = Mapping[str, Any]
37641
-
37642
- @pulumi.input_type
37643
- class RegionResizeRequestStatusErrorErrorErrorDetailQuotaInfoArgs:
37644
- def __init__(__self__, *,
37645
- dimensions: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
37646
- future_limit: Optional[pulumi.Input[int]] = None,
37647
- limit: Optional[pulumi.Input[int]] = None,
37648
- limit_name: Optional[pulumi.Input[str]] = None,
37649
- metric_name: Optional[pulumi.Input[str]] = None,
37650
- rollout_status: Optional[pulumi.Input[str]] = None):
37651
- """
37652
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] dimensions: (Output)
37653
- The map holding related quota dimensions
37654
- :param pulumi.Input[int] future_limit: (Output)
37655
- Future quota limit being rolled out. The limit's unit depends on the quota type or metric.
37656
- :param pulumi.Input[int] limit: (Output)
37657
- Current effective quota limit. The limit's unit depends on the quota type or metric.
37658
- :param pulumi.Input[str] limit_name: (Output)
37659
- The name of the quota limit.
37660
- :param pulumi.Input[str] metric_name: (Output)
37661
- The Compute Engine quota metric name.
37662
- :param pulumi.Input[str] rollout_status: (Output)
37663
- Rollout status of the future quota limit.
37664
- """
37665
- if dimensions is not None:
37666
- pulumi.set(__self__, "dimensions", dimensions)
37667
- if future_limit is not None:
37668
- pulumi.set(__self__, "future_limit", future_limit)
37669
- if limit is not None:
37670
- pulumi.set(__self__, "limit", limit)
37671
- if limit_name is not None:
37672
- pulumi.set(__self__, "limit_name", limit_name)
37673
- if metric_name is not None:
37674
- pulumi.set(__self__, "metric_name", metric_name)
37675
- if rollout_status is not None:
37676
- pulumi.set(__self__, "rollout_status", rollout_status)
37677
-
37678
- @property
37679
- @pulumi.getter
37680
- def dimensions(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
37681
- """
37682
- (Output)
37683
- The map holding related quota dimensions
37684
- """
37685
- return pulumi.get(self, "dimensions")
37686
-
37687
- @dimensions.setter
37688
- def dimensions(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
37689
- pulumi.set(self, "dimensions", value)
37690
-
37691
- @property
37692
- @pulumi.getter(name="futureLimit")
37693
- def future_limit(self) -> Optional[pulumi.Input[int]]:
37694
- """
37695
- (Output)
37696
- Future quota limit being rolled out. The limit's unit depends on the quota type or metric.
37697
- """
37698
- return pulumi.get(self, "future_limit")
37699
-
37700
- @future_limit.setter
37701
- def future_limit(self, value: Optional[pulumi.Input[int]]):
37702
- pulumi.set(self, "future_limit", value)
37703
-
37704
- @property
37705
- @pulumi.getter
37706
- def limit(self) -> Optional[pulumi.Input[int]]:
37707
- """
37708
- (Output)
37709
- Current effective quota limit. The limit's unit depends on the quota type or metric.
37710
- """
37711
- return pulumi.get(self, "limit")
37712
-
37713
- @limit.setter
37714
- def limit(self, value: Optional[pulumi.Input[int]]):
37715
- pulumi.set(self, "limit", value)
37716
-
37717
- @property
37718
- @pulumi.getter(name="limitName")
37719
- def limit_name(self) -> Optional[pulumi.Input[str]]:
37720
- """
37721
- (Output)
37722
- The name of the quota limit.
37723
- """
37724
- return pulumi.get(self, "limit_name")
37725
-
37726
- @limit_name.setter
37727
- def limit_name(self, value: Optional[pulumi.Input[str]]):
37728
- pulumi.set(self, "limit_name", value)
37729
-
37730
- @property
37731
- @pulumi.getter(name="metricName")
37732
- def metric_name(self) -> Optional[pulumi.Input[str]]:
37733
- """
37734
- (Output)
37735
- The Compute Engine quota metric name.
37736
- """
37737
- return pulumi.get(self, "metric_name")
37738
-
37739
- @metric_name.setter
37740
- def metric_name(self, value: Optional[pulumi.Input[str]]):
37741
- pulumi.set(self, "metric_name", value)
37742
-
37743
- @property
37744
- @pulumi.getter(name="rolloutStatus")
37745
- def rollout_status(self) -> Optional[pulumi.Input[str]]:
37746
- """
37747
- (Output)
37748
- Rollout status of the future quota limit.
37749
- """
37750
- return pulumi.get(self, "rollout_status")
37751
-
37752
- @rollout_status.setter
37753
- def rollout_status(self, value: Optional[pulumi.Input[str]]):
37754
- pulumi.set(self, "rollout_status", value)
37755
-
37756
-
37757
- if not MYPY:
37758
- class RegionResizeRequestStatusLastAttemptArgsDict(TypedDict):
37759
- errors: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorArgsDict']]]]
37760
- """
37761
- (Output)
37762
- Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. Contrary to the lastAttempt errors, this field is final and errors are never removed from here, as the ResizeRequest is not going to retry.
37763
- Structure is documented below.
37764
- """
37765
- elif False:
37766
- RegionResizeRequestStatusLastAttemptArgsDict: TypeAlias = Mapping[str, Any]
37767
-
37768
- @pulumi.input_type
37769
- class RegionResizeRequestStatusLastAttemptArgs:
37770
- def __init__(__self__, *,
37771
- errors: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorArgs']]]] = None):
37772
- """
37773
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorArgs']]] errors: (Output)
37774
- Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. Contrary to the lastAttempt errors, this field is final and errors are never removed from here, as the ResizeRequest is not going to retry.
37775
- Structure is documented below.
37776
- """
37777
- if errors is not None:
37778
- pulumi.set(__self__, "errors", errors)
37779
-
37780
- @property
37781
- @pulumi.getter
37782
- def errors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorArgs']]]]:
37783
- """
37784
- (Output)
37785
- Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. Contrary to the lastAttempt errors, this field is final and errors are never removed from here, as the ResizeRequest is not going to retry.
37786
- Structure is documented below.
37787
- """
37788
- return pulumi.get(self, "errors")
37789
-
37790
- @errors.setter
37791
- def errors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorArgs']]]]):
37792
- pulumi.set(self, "errors", value)
37793
-
37794
-
37795
- if not MYPY:
37796
- class RegionResizeRequestStatusLastAttemptErrorArgsDict(TypedDict):
37797
- errors: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorArgsDict']]]]
37798
- """
37799
- (Output)
37800
- The array of errors encountered while processing this operation.
37801
- Structure is documented below.
37802
- """
37803
- elif False:
37804
- RegionResizeRequestStatusLastAttemptErrorArgsDict: TypeAlias = Mapping[str, Any]
37805
-
37806
- @pulumi.input_type
37807
- class RegionResizeRequestStatusLastAttemptErrorArgs:
37808
- def __init__(__self__, *,
37809
- errors: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorArgs']]]] = None):
37810
- """
37811
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorArgs']]] errors: (Output)
37812
- The array of errors encountered while processing this operation.
37813
- Structure is documented below.
37814
- """
37815
- if errors is not None:
37816
- pulumi.set(__self__, "errors", errors)
37817
-
37818
- @property
37819
- @pulumi.getter
37820
- def errors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorArgs']]]]:
37821
- """
37822
- (Output)
37823
- The array of errors encountered while processing this operation.
37824
- Structure is documented below.
37825
- """
37826
- return pulumi.get(self, "errors")
37827
-
37828
- @errors.setter
37829
- def errors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorArgs']]]]):
37830
- pulumi.set(self, "errors", value)
37831
-
37832
-
37833
- if not MYPY:
37834
- class RegionResizeRequestStatusLastAttemptErrorErrorArgsDict(TypedDict):
37835
- code: NotRequired[pulumi.Input[str]]
37836
- """
37837
- (Output)
37838
- The error type identifier for this error.
37839
- """
37840
- error_details: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgsDict']]]]
37841
- """
37842
- (Output)
37843
- An array of messages that contain the error details. There is a set of defined message types to use for providing details.The syntax depends on the error code. For example, QuotaExceededInfo will have details when the error code is QUOTA_EXCEEDED.
37844
- Structure is documented below.
37845
- """
37846
- location: NotRequired[pulumi.Input[str]]
37847
- """
37848
- (Output)
37849
- Indicates the field in the request that caused the error. This property is optional.
37850
- """
37851
- message: NotRequired[pulumi.Input[str]]
37852
- """
37853
- (Output)
37854
- The localized error message in the above locale.
37855
- """
37856
- elif False:
37857
- RegionResizeRequestStatusLastAttemptErrorErrorArgsDict: TypeAlias = Mapping[str, Any]
37858
-
37859
- @pulumi.input_type
37860
- class RegionResizeRequestStatusLastAttemptErrorErrorArgs:
37861
- def __init__(__self__, *,
37862
- code: Optional[pulumi.Input[str]] = None,
37863
- error_details: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgs']]]] = None,
37864
- location: Optional[pulumi.Input[str]] = None,
37865
- message: Optional[pulumi.Input[str]] = None):
37866
- """
37867
- :param pulumi.Input[str] code: (Output)
37868
- The error type identifier for this error.
37869
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgs']]] error_details: (Output)
37870
- An array of messages that contain the error details. There is a set of defined message types to use for providing details.The syntax depends on the error code. For example, QuotaExceededInfo will have details when the error code is QUOTA_EXCEEDED.
37871
- Structure is documented below.
37872
- :param pulumi.Input[str] location: (Output)
37873
- Indicates the field in the request that caused the error. This property is optional.
37874
- :param pulumi.Input[str] message: (Output)
37875
- The localized error message in the above locale.
37876
- """
37877
- if code is not None:
37878
- pulumi.set(__self__, "code", code)
37879
- if error_details is not None:
37880
- pulumi.set(__self__, "error_details", error_details)
37881
- if location is not None:
37882
- pulumi.set(__self__, "location", location)
37883
- if message is not None:
37884
- pulumi.set(__self__, "message", message)
37885
-
37886
- @property
37887
- @pulumi.getter
37888
- def code(self) -> Optional[pulumi.Input[str]]:
37889
- """
37890
- (Output)
37891
- The error type identifier for this error.
37892
- """
37893
- return pulumi.get(self, "code")
37894
-
37895
- @code.setter
37896
- def code(self, value: Optional[pulumi.Input[str]]):
37897
- pulumi.set(self, "code", value)
37898
-
37899
- @property
37900
- @pulumi.getter(name="errorDetails")
37901
- def error_details(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgs']]]]:
37902
- """
37903
- (Output)
37904
- An array of messages that contain the error details. There is a set of defined message types to use for providing details.The syntax depends on the error code. For example, QuotaExceededInfo will have details when the error code is QUOTA_EXCEEDED.
37905
- Structure is documented below.
37906
- """
37907
- return pulumi.get(self, "error_details")
37908
-
37909
- @error_details.setter
37910
- def error_details(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgs']]]]):
37911
- pulumi.set(self, "error_details", value)
37912
-
37913
- @property
37914
- @pulumi.getter
37915
- def location(self) -> Optional[pulumi.Input[str]]:
37916
- """
37917
- (Output)
37918
- Indicates the field in the request that caused the error. This property is optional.
37919
- """
37920
- return pulumi.get(self, "location")
37921
-
37922
- @location.setter
37923
- def location(self, value: Optional[pulumi.Input[str]]):
37924
- pulumi.set(self, "location", value)
37925
-
37926
- @property
37927
- @pulumi.getter
37928
- def message(self) -> Optional[pulumi.Input[str]]:
37929
- """
37930
- (Output)
37931
- The localized error message in the above locale.
37932
- """
37933
- return pulumi.get(self, "message")
37934
-
37935
- @message.setter
37936
- def message(self, value: Optional[pulumi.Input[str]]):
37937
- pulumi.set(self, "message", value)
37938
-
37939
-
37940
- if not MYPY:
37941
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgsDict(TypedDict):
37942
- error_infos: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgsDict']]]]
37943
- """
37944
- (Output)
37945
- A nested object resource.
37946
- Structure is documented below.
37947
- """
37948
- helps: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgsDict']]]]
37949
- """
37950
- (Output)
37951
- A nested object resource.
37952
- Structure is documented below.
37953
- """
37954
- localized_messages: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgsDict']]]]
37955
- """
37956
- (Output)
37957
- A nested object resource.
37958
- Structure is documented below.
37959
- """
37960
- quota_infos: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgsDict']]]]
37961
- """
37962
- (Output)
37963
- A nested object resource.
37964
- Structure is documented below.
37965
- """
37966
- elif False:
37967
- RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgsDict: TypeAlias = Mapping[str, Any]
37968
-
37969
- @pulumi.input_type
37970
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailArgs:
37971
- def __init__(__self__, *,
37972
- error_infos: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgs']]]] = None,
37973
- helps: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgs']]]] = None,
37974
- localized_messages: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgs']]]] = None,
37975
- quota_infos: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgs']]]] = None):
37976
- """
37977
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgs']]] error_infos: (Output)
37978
- A nested object resource.
37979
- Structure is documented below.
37980
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgs']]] helps: (Output)
37981
- A nested object resource.
37982
- Structure is documented below.
37983
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgs']]] localized_messages: (Output)
37984
- A nested object resource.
37985
- Structure is documented below.
37986
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgs']]] quota_infos: (Output)
37987
- A nested object resource.
37988
- Structure is documented below.
37989
- """
37990
- if error_infos is not None:
37991
- pulumi.set(__self__, "error_infos", error_infos)
37992
- if helps is not None:
37993
- pulumi.set(__self__, "helps", helps)
37994
- if localized_messages is not None:
37995
- pulumi.set(__self__, "localized_messages", localized_messages)
37996
- if quota_infos is not None:
37997
- pulumi.set(__self__, "quota_infos", quota_infos)
37998
-
37999
- @property
38000
- @pulumi.getter(name="errorInfos")
38001
- def error_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgs']]]]:
38002
- """
38003
- (Output)
38004
- A nested object resource.
38005
- Structure is documented below.
38006
- """
38007
- return pulumi.get(self, "error_infos")
38008
-
38009
- @error_infos.setter
38010
- def error_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgs']]]]):
38011
- pulumi.set(self, "error_infos", value)
38012
-
38013
- @property
38014
- @pulumi.getter
38015
- def helps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgs']]]]:
38016
- """
38017
- (Output)
38018
- A nested object resource.
38019
- Structure is documented below.
38020
- """
38021
- return pulumi.get(self, "helps")
38022
-
38023
- @helps.setter
38024
- def helps(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgs']]]]):
38025
- pulumi.set(self, "helps", value)
38026
-
38027
- @property
38028
- @pulumi.getter(name="localizedMessages")
38029
- def localized_messages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgs']]]]:
38030
- """
38031
- (Output)
38032
- A nested object resource.
38033
- Structure is documented below.
38034
- """
38035
- return pulumi.get(self, "localized_messages")
38036
-
38037
- @localized_messages.setter
38038
- def localized_messages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgs']]]]):
38039
- pulumi.set(self, "localized_messages", value)
38040
-
38041
- @property
38042
- @pulumi.getter(name="quotaInfos")
38043
- def quota_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgs']]]]:
38044
- """
38045
- (Output)
38046
- A nested object resource.
38047
- Structure is documented below.
38048
- """
38049
- return pulumi.get(self, "quota_infos")
38050
-
38051
- @quota_infos.setter
38052
- def quota_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgs']]]]):
38053
- pulumi.set(self, "quota_infos", value)
38054
-
38055
-
38056
- if not MYPY:
38057
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgsDict(TypedDict):
38058
- domain: NotRequired[pulumi.Input[str]]
38059
- """
38060
- (Output)
38061
- The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com".
38062
- """
38063
- metadatas: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
38064
- """
38065
- (Output)
38066
- Additional structured details about this error.
38067
- """
38068
- reason: NotRequired[pulumi.Input[str]]
38069
- """
38070
- (Output)
38071
- The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors.
38072
- """
38073
- elif False:
38074
- RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgsDict: TypeAlias = Mapping[str, Any]
38075
-
38076
- @pulumi.input_type
38077
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailErrorInfoArgs:
38078
- def __init__(__self__, *,
38079
- domain: Optional[pulumi.Input[str]] = None,
38080
- metadatas: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
38081
- reason: Optional[pulumi.Input[str]] = None):
38082
- """
38083
- :param pulumi.Input[str] domain: (Output)
38084
- The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com".
38085
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadatas: (Output)
38086
- Additional structured details about this error.
38087
- :param pulumi.Input[str] reason: (Output)
38088
- The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors.
38089
- """
38090
- if domain is not None:
38091
- pulumi.set(__self__, "domain", domain)
38092
- if metadatas is not None:
38093
- pulumi.set(__self__, "metadatas", metadatas)
38094
- if reason is not None:
38095
- pulumi.set(__self__, "reason", reason)
38096
-
38097
- @property
38098
- @pulumi.getter
38099
- def domain(self) -> Optional[pulumi.Input[str]]:
38100
- """
38101
- (Output)
38102
- The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com".
38103
- """
38104
- return pulumi.get(self, "domain")
38105
-
38106
- @domain.setter
38107
- def domain(self, value: Optional[pulumi.Input[str]]):
38108
- pulumi.set(self, "domain", value)
38109
-
38110
- @property
38111
- @pulumi.getter
38112
- def metadatas(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
38113
- """
38114
- (Output)
38115
- Additional structured details about this error.
38116
- """
38117
- return pulumi.get(self, "metadatas")
38118
-
38119
- @metadatas.setter
38120
- def metadatas(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
38121
- pulumi.set(self, "metadatas", value)
38122
-
38123
- @property
38124
- @pulumi.getter
38125
- def reason(self) -> Optional[pulumi.Input[str]]:
38126
- """
38127
- (Output)
38128
- The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors.
38129
- """
38130
- return pulumi.get(self, "reason")
38131
-
38132
- @reason.setter
38133
- def reason(self, value: Optional[pulumi.Input[str]]):
38134
- pulumi.set(self, "reason", value)
38135
-
38136
-
38137
- if not MYPY:
38138
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgsDict(TypedDict):
38139
- links: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgsDict']]]]
38140
- """
38141
- (Output)
38142
- A nested object resource.
38143
- Structure is documented below.
38144
- """
38145
- elif False:
38146
- RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgsDict: TypeAlias = Mapping[str, Any]
38147
-
38148
- @pulumi.input_type
38149
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpArgs:
38150
- def __init__(__self__, *,
38151
- links: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgs']]]] = None):
38152
- """
38153
- :param pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgs']]] links: (Output)
38154
- A nested object resource.
38155
- Structure is documented below.
38156
- """
38157
- if links is not None:
38158
- pulumi.set(__self__, "links", links)
38159
-
38160
- @property
38161
- @pulumi.getter
38162
- def links(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgs']]]]:
38163
- """
38164
- (Output)
38165
- A nested object resource.
38166
- Structure is documented below.
38167
- """
38168
- return pulumi.get(self, "links")
38169
-
38170
- @links.setter
38171
- def links(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgs']]]]):
38172
- pulumi.set(self, "links", value)
38173
-
38174
-
38175
- if not MYPY:
38176
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgsDict(TypedDict):
38177
- description: NotRequired[pulumi.Input[str]]
38178
- """
38179
- An optional description of this resize-request.
38180
- """
38181
- url: NotRequired[pulumi.Input[str]]
38182
- """
38183
- (Output)
38184
- The URL of the link.
38185
- """
38186
- elif False:
38187
- RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgsDict: TypeAlias = Mapping[str, Any]
38188
-
38189
- @pulumi.input_type
38190
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailHelpLinkArgs:
38191
- def __init__(__self__, *,
38192
- description: Optional[pulumi.Input[str]] = None,
38193
- url: Optional[pulumi.Input[str]] = None):
38194
- """
38195
- :param pulumi.Input[str] description: An optional description of this resize-request.
38196
- :param pulumi.Input[str] url: (Output)
38197
- The URL of the link.
38198
- """
38199
- if description is not None:
38200
- pulumi.set(__self__, "description", description)
38201
- if url is not None:
38202
- pulumi.set(__self__, "url", url)
38203
-
38204
- @property
38205
- @pulumi.getter
38206
- def description(self) -> Optional[pulumi.Input[str]]:
38207
- """
38208
- An optional description of this resize-request.
38209
- """
38210
- return pulumi.get(self, "description")
38211
-
38212
- @description.setter
38213
- def description(self, value: Optional[pulumi.Input[str]]):
38214
- pulumi.set(self, "description", value)
38215
-
38216
- @property
38217
- @pulumi.getter
38218
- def url(self) -> Optional[pulumi.Input[str]]:
38219
- """
38220
- (Output)
38221
- The URL of the link.
38222
- """
38223
- return pulumi.get(self, "url")
38224
-
38225
- @url.setter
38226
- def url(self, value: Optional[pulumi.Input[str]]):
38227
- pulumi.set(self, "url", value)
38228
-
38229
-
38230
- if not MYPY:
38231
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgsDict(TypedDict):
38232
- locale: NotRequired[pulumi.Input[str]]
38233
- """
38234
- (Output)
38235
- The locale used following the specification defined at https://www.rfc-editor.org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
38236
- """
38237
- message: NotRequired[pulumi.Input[str]]
38238
- """
38239
- (Output)
38240
- The localized error message in the above locale.
38241
- """
38242
- elif False:
38243
- RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgsDict: TypeAlias = Mapping[str, Any]
38244
-
38245
- @pulumi.input_type
38246
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailLocalizedMessageArgs:
38247
- def __init__(__self__, *,
38248
- locale: Optional[pulumi.Input[str]] = None,
38249
- message: Optional[pulumi.Input[str]] = None):
38250
- """
38251
- :param pulumi.Input[str] locale: (Output)
38252
- The locale used following the specification defined at https://www.rfc-editor.org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
38253
- :param pulumi.Input[str] message: (Output)
38254
- The localized error message in the above locale.
38255
- """
38256
- if locale is not None:
38257
- pulumi.set(__self__, "locale", locale)
38258
- if message is not None:
38259
- pulumi.set(__self__, "message", message)
38260
-
38261
- @property
38262
- @pulumi.getter
38263
- def locale(self) -> Optional[pulumi.Input[str]]:
38264
- """
38265
- (Output)
38266
- The locale used following the specification defined at https://www.rfc-editor.org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
38267
- """
38268
- return pulumi.get(self, "locale")
38269
-
38270
- @locale.setter
38271
- def locale(self, value: Optional[pulumi.Input[str]]):
38272
- pulumi.set(self, "locale", value)
38273
-
38274
- @property
38275
- @pulumi.getter
38276
- def message(self) -> Optional[pulumi.Input[str]]:
38277
- """
38278
- (Output)
38279
- The localized error message in the above locale.
38280
- """
38281
- return pulumi.get(self, "message")
38282
-
38283
- @message.setter
38284
- def message(self, value: Optional[pulumi.Input[str]]):
38285
- pulumi.set(self, "message", value)
38286
-
38287
-
38288
- if not MYPY:
38289
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgsDict(TypedDict):
38290
- dimensions: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
38291
- """
38292
- (Output)
38293
- The map holding related quota dimensions
38294
- """
38295
- future_limit: NotRequired[pulumi.Input[int]]
38296
- """
38297
- (Output)
38298
- Future quota limit being rolled out. The limit's unit depends on the quota type or metric.
38299
- """
38300
- limit: NotRequired[pulumi.Input[int]]
38301
- """
38302
- (Output)
38303
- Current effective quota limit. The limit's unit depends on the quota type or metric.
38304
- """
38305
- limit_name: NotRequired[pulumi.Input[str]]
38306
- """
38307
- (Output)
38308
- The name of the quota limit.
38309
- """
38310
- metric_name: NotRequired[pulumi.Input[str]]
38311
- """
38312
- (Output)
38313
- The Compute Engine quota metric name.
38314
- """
38315
- rollout_status: NotRequired[pulumi.Input[str]]
38316
- """
38317
- (Output)
38318
- Rollout status of the future quota limit.
38319
- """
38320
- elif False:
38321
- RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgsDict: TypeAlias = Mapping[str, Any]
38322
-
38323
- @pulumi.input_type
38324
- class RegionResizeRequestStatusLastAttemptErrorErrorErrorDetailQuotaInfoArgs:
38325
- def __init__(__self__, *,
38326
- dimensions: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
38327
- future_limit: Optional[pulumi.Input[int]] = None,
38328
- limit: Optional[pulumi.Input[int]] = None,
38329
- limit_name: Optional[pulumi.Input[str]] = None,
38330
- metric_name: Optional[pulumi.Input[str]] = None,
38331
- rollout_status: Optional[pulumi.Input[str]] = None):
38332
- """
38333
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] dimensions: (Output)
38334
- The map holding related quota dimensions
38335
- :param pulumi.Input[int] future_limit: (Output)
38336
- Future quota limit being rolled out. The limit's unit depends on the quota type or metric.
38337
- :param pulumi.Input[int] limit: (Output)
38338
- Current effective quota limit. The limit's unit depends on the quota type or metric.
38339
- :param pulumi.Input[str] limit_name: (Output)
38340
- The name of the quota limit.
38341
- :param pulumi.Input[str] metric_name: (Output)
38342
- The Compute Engine quota metric name.
38343
- :param pulumi.Input[str] rollout_status: (Output)
38344
- Rollout status of the future quota limit.
38345
- """
38346
- if dimensions is not None:
38347
- pulumi.set(__self__, "dimensions", dimensions)
38348
- if future_limit is not None:
38349
- pulumi.set(__self__, "future_limit", future_limit)
38350
- if limit is not None:
38351
- pulumi.set(__self__, "limit", limit)
38352
- if limit_name is not None:
38353
- pulumi.set(__self__, "limit_name", limit_name)
38354
- if metric_name is not None:
38355
- pulumi.set(__self__, "metric_name", metric_name)
38356
- if rollout_status is not None:
38357
- pulumi.set(__self__, "rollout_status", rollout_status)
38358
-
38359
- @property
38360
- @pulumi.getter
38361
- def dimensions(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
38362
- """
38363
- (Output)
38364
- The map holding related quota dimensions
38365
- """
38366
- return pulumi.get(self, "dimensions")
38367
-
38368
- @dimensions.setter
38369
- def dimensions(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
38370
- pulumi.set(self, "dimensions", value)
38371
-
38372
- @property
38373
- @pulumi.getter(name="futureLimit")
38374
- def future_limit(self) -> Optional[pulumi.Input[int]]:
38375
- """
38376
- (Output)
38377
- Future quota limit being rolled out. The limit's unit depends on the quota type or metric.
38378
- """
38379
- return pulumi.get(self, "future_limit")
38380
-
38381
- @future_limit.setter
38382
- def future_limit(self, value: Optional[pulumi.Input[int]]):
38383
- pulumi.set(self, "future_limit", value)
38384
-
38385
- @property
38386
- @pulumi.getter
38387
- def limit(self) -> Optional[pulumi.Input[int]]:
38388
- """
38389
- (Output)
38390
- Current effective quota limit. The limit's unit depends on the quota type or metric.
38391
- """
38392
- return pulumi.get(self, "limit")
38393
-
38394
- @limit.setter
38395
- def limit(self, value: Optional[pulumi.Input[int]]):
38396
- pulumi.set(self, "limit", value)
38397
-
38398
- @property
38399
- @pulumi.getter(name="limitName")
38400
- def limit_name(self) -> Optional[pulumi.Input[str]]:
38401
- """
38402
- (Output)
38403
- The name of the quota limit.
38404
- """
38405
- return pulumi.get(self, "limit_name")
38406
-
38407
- @limit_name.setter
38408
- def limit_name(self, value: Optional[pulumi.Input[str]]):
38409
- pulumi.set(self, "limit_name", value)
38410
-
38411
- @property
38412
- @pulumi.getter(name="metricName")
38413
- def metric_name(self) -> Optional[pulumi.Input[str]]:
38414
- """
38415
- (Output)
38416
- The Compute Engine quota metric name.
38417
- """
38418
- return pulumi.get(self, "metric_name")
38419
-
38420
- @metric_name.setter
38421
- def metric_name(self, value: Optional[pulumi.Input[str]]):
38422
- pulumi.set(self, "metric_name", value)
38423
-
38424
- @property
38425
- @pulumi.getter(name="rolloutStatus")
38426
- def rollout_status(self) -> Optional[pulumi.Input[str]]:
38427
- """
38428
- (Output)
38429
- Rollout status of the future quota limit.
38430
- """
38431
- return pulumi.get(self, "rollout_status")
38432
-
38433
- @rollout_status.setter
38434
- def rollout_status(self, value: Optional[pulumi.Input[str]]):
38435
- pulumi.set(self, "rollout_status", value)
38436
-
38437
-
38438
- if not MYPY:
38439
- class RegionSecurityPolicyDdosProtectionConfigArgsDict(TypedDict):
38440
- ddos_protection: pulumi.Input[str]
38441
- """
38442
- Google Cloud Armor offers the following options to help protect systems against DDoS attacks:
38443
- - STANDARD: basic always-on protection for network load balancers, protocol forwarding, or VMs with public IP addresses.
38444
- - ADVANCED: additional protections for Managed Protection Plus subscribers who use network load balancers, protocol forwarding, or VMs with public IP addresses.
38445
- - ADVANCED_PREVIEW: flag to enable the security policy in preview mode.
38446
- Possible values are: `ADVANCED`, `ADVANCED_PREVIEW`, `STANDARD`.
38447
- """
38448
- elif False:
38449
- RegionSecurityPolicyDdosProtectionConfigArgsDict: TypeAlias = Mapping[str, Any]
38450
-
38451
- @pulumi.input_type
38452
- class RegionSecurityPolicyDdosProtectionConfigArgs:
38453
- def __init__(__self__, *,
38454
- ddos_protection: pulumi.Input[str]):
38455
- """
38456
- :param pulumi.Input[str] ddos_protection: Google Cloud Armor offers the following options to help protect systems against DDoS attacks:
38457
- - STANDARD: basic always-on protection for network load balancers, protocol forwarding, or VMs with public IP addresses.
38458
- - ADVANCED: additional protections for Managed Protection Plus subscribers who use network load balancers, protocol forwarding, or VMs with public IP addresses.
38459
- - ADVANCED_PREVIEW: flag to enable the security policy in preview mode.
38460
- Possible values are: `ADVANCED`, `ADVANCED_PREVIEW`, `STANDARD`.
38461
- """
38462
- pulumi.set(__self__, "ddos_protection", ddos_protection)
38463
-
38464
- @property
38465
- @pulumi.getter(name="ddosProtection")
38466
- def ddos_protection(self) -> pulumi.Input[str]:
38467
- """
38468
- Google Cloud Armor offers the following options to help protect systems against DDoS attacks:
38469
- - STANDARD: basic always-on protection for network load balancers, protocol forwarding, or VMs with public IP addresses.
38470
- - ADVANCED: additional protections for Managed Protection Plus subscribers who use network load balancers, protocol forwarding, or VMs with public IP addresses.
38471
- - ADVANCED_PREVIEW: flag to enable the security policy in preview mode.
38472
- Possible values are: `ADVANCED`, `ADVANCED_PREVIEW`, `STANDARD`.
38473
- """
38474
- return pulumi.get(self, "ddos_protection")
38475
-
38476
- @ddos_protection.setter
38477
- def ddos_protection(self, value: pulumi.Input[str]):
38478
- pulumi.set(self, "ddos_protection", value)
38479
-
38480
-
38481
- if not MYPY:
38482
- class RegionSecurityPolicyRuleArgsDict(TypedDict):
38483
- action: pulumi.Input[str]
38484
- """
38485
- The Action to perform when the rule is matched. The following are the valid actions:
38486
- * allow: allow access to target.
38487
- * deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUS are 403, 404, and 502.
38488
- * rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rateLimitOptions to be set.
38489
- * redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR.
38490
- * throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rateLimitOptions to be set for this.
38491
- """
38492
- priority: pulumi.Input[int]
38493
- """
38494
- An integer indicating the priority of a rule in the list.
38495
- The priority must be a positive value between 0 and 2147483647.
38496
- Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
38497
- """
38498
- description: NotRequired[pulumi.Input[str]]
38499
- """
38500
- An optional description of this resource. Provide this property when you create the resource.
38501
- """
38502
- match: NotRequired[pulumi.Input['RegionSecurityPolicyRuleMatchArgsDict']]
38503
- """
38504
- A match condition that incoming traffic is evaluated against.
38505
- If it evaluates to true, the corresponding 'action' is enforced.
38506
- Structure is documented below.
38507
- """
38508
- network_match: NotRequired[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgsDict']]
38509
- """
38510
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced.
38511
- The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields').
38512
- Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds.
38513
- Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all.
38514
- For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet.
38515
- Example:
38516
- networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff"
38517
- The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive
38518
- Structure is documented below.
38519
- """
38520
- preconfigured_waf_config: NotRequired[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgsDict']]
38521
- """
38522
- Preconfigured WAF configuration to be applied for the rule.
38523
- If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
38524
- Structure is documented below.
38525
- """
38526
- preview: NotRequired[pulumi.Input[bool]]
38527
- """
38528
- If set to true, the specified action is not enforced.
38529
- """
38530
- rate_limit_options: NotRequired[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgsDict']]
38531
- """
38532
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
38533
- Structure is documented below.
38534
- """
38535
- elif False:
38536
- RegionSecurityPolicyRuleArgsDict: TypeAlias = Mapping[str, Any]
38537
-
38538
- @pulumi.input_type
38539
- class RegionSecurityPolicyRuleArgs:
38540
- def __init__(__self__, *,
38541
- action: pulumi.Input[str],
38542
- priority: pulumi.Input[int],
38543
- description: Optional[pulumi.Input[str]] = None,
38544
- match: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchArgs']] = None,
38545
- network_match: Optional[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs']] = None,
38546
- preconfigured_waf_config: Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']] = None,
38547
- preview: Optional[pulumi.Input[bool]] = None,
38548
- rate_limit_options: Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']] = None):
38549
- """
38550
- :param pulumi.Input[str] action: The Action to perform when the rule is matched. The following are the valid actions:
38551
- * allow: allow access to target.
38552
- * deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUS are 403, 404, and 502.
38553
- * rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rateLimitOptions to be set.
38554
- * redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR.
38555
- * throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rateLimitOptions to be set for this.
38556
- :param pulumi.Input[int] priority: An integer indicating the priority of a rule in the list.
38557
- The priority must be a positive value between 0 and 2147483647.
38558
- Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
38559
- :param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create the resource.
38560
- :param pulumi.Input['RegionSecurityPolicyRuleMatchArgs'] match: A match condition that incoming traffic is evaluated against.
38561
- If it evaluates to true, the corresponding 'action' is enforced.
38562
- Structure is documented below.
38563
- :param pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs'] network_match: A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced.
38564
- The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields').
38565
- Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds.
38566
- Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all.
38567
- For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet.
38568
- Example:
38569
- networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff"
38570
- The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive
38571
- Structure is documented below.
38572
- :param pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs'] preconfigured_waf_config: Preconfigured WAF configuration to be applied for the rule.
38573
- If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
38574
- Structure is documented below.
38575
- :param pulumi.Input[bool] preview: If set to true, the specified action is not enforced.
38576
- :param pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs'] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
38577
- Structure is documented below.
38578
- """
38579
- pulumi.set(__self__, "action", action)
38580
- pulumi.set(__self__, "priority", priority)
38581
- if description is not None:
38582
- pulumi.set(__self__, "description", description)
38583
- if match is not None:
38584
- pulumi.set(__self__, "match", match)
38585
- if network_match is not None:
38586
- pulumi.set(__self__, "network_match", network_match)
38587
- if preconfigured_waf_config is not None:
38588
- pulumi.set(__self__, "preconfigured_waf_config", preconfigured_waf_config)
38589
- if preview is not None:
38590
- pulumi.set(__self__, "preview", preview)
38591
- if rate_limit_options is not None:
38592
- pulumi.set(__self__, "rate_limit_options", rate_limit_options)
38593
-
38594
- @property
38595
- @pulumi.getter
38596
- def action(self) -> pulumi.Input[str]:
38597
- """
38598
- The Action to perform when the rule is matched. The following are the valid actions:
38599
- * allow: allow access to target.
38600
- * deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUS are 403, 404, and 502.
38601
- * rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rateLimitOptions to be set.
38602
- * redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR.
38603
- * throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rateLimitOptions to be set for this.
38604
- """
38605
- return pulumi.get(self, "action")
38606
-
38607
- @action.setter
38608
- def action(self, value: pulumi.Input[str]):
38609
- pulumi.set(self, "action", value)
38610
-
38611
- @property
38612
- @pulumi.getter
38613
- def priority(self) -> pulumi.Input[int]:
38614
- """
38615
- An integer indicating the priority of a rule in the list.
38616
- The priority must be a positive value between 0 and 2147483647.
38617
- Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
38618
- """
38619
- return pulumi.get(self, "priority")
38620
-
38621
- @priority.setter
38622
- def priority(self, value: pulumi.Input[int]):
38623
- pulumi.set(self, "priority", value)
38624
-
38625
- @property
38626
- @pulumi.getter
38627
- def description(self) -> Optional[pulumi.Input[str]]:
38628
- """
38629
- An optional description of this resource. Provide this property when you create the resource.
38630
- """
38631
- return pulumi.get(self, "description")
38632
-
38633
- @description.setter
38634
- def description(self, value: Optional[pulumi.Input[str]]):
38635
- pulumi.set(self, "description", value)
38636
-
38637
- @property
38638
- @pulumi.getter
38639
- def match(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleMatchArgs']]:
38640
- """
38641
- A match condition that incoming traffic is evaluated against.
38642
- If it evaluates to true, the corresponding 'action' is enforced.
38643
- Structure is documented below.
38644
- """
38645
- return pulumi.get(self, "match")
38646
-
38647
- @match.setter
38648
- def match(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchArgs']]):
38649
- pulumi.set(self, "match", value)
38650
-
38651
- @property
38652
- @pulumi.getter(name="networkMatch")
38653
- def network_match(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs']]:
38654
- """
38655
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced.
38656
- The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields').
38657
- Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds.
38658
- Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all.
38659
- For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet.
38660
- Example:
38661
- networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff"
38662
- The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive
38663
- Structure is documented below.
38664
- """
38665
- return pulumi.get(self, "network_match")
38666
-
38667
- @network_match.setter
38668
- def network_match(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs']]):
38669
- pulumi.set(self, "network_match", value)
38670
-
38671
- @property
38672
- @pulumi.getter(name="preconfiguredWafConfig")
38673
- def preconfigured_waf_config(self) -> Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]:
38674
- """
38675
- Preconfigured WAF configuration to be applied for the rule.
38676
- If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
38677
- Structure is documented below.
38678
- """
38679
- return pulumi.get(self, "preconfigured_waf_config")
38680
-
38681
- @preconfigured_waf_config.setter
38682
- def preconfigured_waf_config(self, value: Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]):
38683
- pulumi.set(self, "preconfigured_waf_config", value)
38684
-
38685
- @property
38686
- @pulumi.getter
38687
- def preview(self) -> Optional[pulumi.Input[bool]]:
38688
- """
38689
- If set to true, the specified action is not enforced.
38690
- """
38691
- return pulumi.get(self, "preview")
38692
-
38693
- @preview.setter
38694
- def preview(self, value: Optional[pulumi.Input[bool]]):
38695
- pulumi.set(self, "preview", value)
38696
-
38697
- @property
38698
- @pulumi.getter(name="rateLimitOptions")
38699
- def rate_limit_options(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']]:
38700
- """
38701
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
38702
- Structure is documented below.
38703
- """
38704
- return pulumi.get(self, "rate_limit_options")
38705
-
38706
- @rate_limit_options.setter
38707
- def rate_limit_options(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']]):
38708
- pulumi.set(self, "rate_limit_options", value)
38709
-
38710
-
38711
- if not MYPY:
38712
- class RegionSecurityPolicyRuleMatchArgsDict(TypedDict):
38713
- config: NotRequired[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgsDict']]
38714
- """
38715
- The configuration options available when specifying versionedExpr.
38716
- This field must be specified if versionedExpr is specified and cannot be specified if versionedExpr is not specified.
38717
- Structure is documented below.
38718
- """
38719
- expr: NotRequired[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgsDict']]
38720
- """
38721
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.
38722
- Structure is documented below.
38723
- """
38724
- versioned_expr: NotRequired[pulumi.Input[str]]
38725
- """
38726
- Preconfigured versioned expression. If this field is specified, config must also be specified.
38727
- Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding srcIpRange field in config.
38728
- Possible values are: `SRC_IPS_V1`.
38729
- """
38730
- elif False:
38731
- RegionSecurityPolicyRuleMatchArgsDict: TypeAlias = Mapping[str, Any]
38732
-
38733
- @pulumi.input_type
38734
- class RegionSecurityPolicyRuleMatchArgs:
38735
- def __init__(__self__, *,
38736
- config: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs']] = None,
38737
- expr: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs']] = None,
38738
- versioned_expr: Optional[pulumi.Input[str]] = None):
38739
- """
38740
- :param pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs'] config: The configuration options available when specifying versionedExpr.
38741
- This field must be specified if versionedExpr is specified and cannot be specified if versionedExpr is not specified.
38742
- Structure is documented below.
38743
- :param pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs'] expr: User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.
38744
- Structure is documented below.
38745
- :param pulumi.Input[str] versioned_expr: Preconfigured versioned expression. If this field is specified, config must also be specified.
38746
- Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding srcIpRange field in config.
38747
- Possible values are: `SRC_IPS_V1`.
38748
- """
38749
- if config is not None:
38750
- pulumi.set(__self__, "config", config)
38751
- if expr is not None:
38752
- pulumi.set(__self__, "expr", expr)
38753
- if versioned_expr is not None:
38754
- pulumi.set(__self__, "versioned_expr", versioned_expr)
38755
-
38756
- @property
38757
- @pulumi.getter
38758
- def config(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs']]:
38759
- """
38760
- The configuration options available when specifying versionedExpr.
38761
- This field must be specified if versionedExpr is specified and cannot be specified if versionedExpr is not specified.
38762
- Structure is documented below.
38763
- """
38764
- return pulumi.get(self, "config")
38765
-
38766
- @config.setter
38767
- def config(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchConfigArgs']]):
38768
- pulumi.set(self, "config", value)
38769
-
38770
- @property
38771
- @pulumi.getter
38772
- def expr(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs']]:
38773
- """
38774
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.
38775
- Structure is documented below.
38776
- """
38777
- return pulumi.get(self, "expr")
38778
-
38779
- @expr.setter
38780
- def expr(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchExprArgs']]):
38781
- pulumi.set(self, "expr", value)
38782
-
38783
- @property
38784
- @pulumi.getter(name="versionedExpr")
38785
- def versioned_expr(self) -> Optional[pulumi.Input[str]]:
38786
- """
38787
- Preconfigured versioned expression. If this field is specified, config must also be specified.
38788
- Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding srcIpRange field in config.
38789
- Possible values are: `SRC_IPS_V1`.
38790
- """
38791
- return pulumi.get(self, "versioned_expr")
38792
-
38793
- @versioned_expr.setter
38794
- def versioned_expr(self, value: Optional[pulumi.Input[str]]):
38795
- pulumi.set(self, "versioned_expr", value)
38796
-
38797
-
38798
- if not MYPY:
38799
- class RegionSecurityPolicyRuleMatchConfigArgsDict(TypedDict):
38800
- src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
38801
- """
38802
- CIDR IP address range. Maximum number of srcIpRanges allowed is 10.
38803
- """
38804
- elif False:
38805
- RegionSecurityPolicyRuleMatchConfigArgsDict: TypeAlias = Mapping[str, Any]
38806
-
38807
- @pulumi.input_type
38808
- class RegionSecurityPolicyRuleMatchConfigArgs:
38809
- def __init__(__self__, *,
38810
- src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
38811
- """
38812
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: CIDR IP address range. Maximum number of srcIpRanges allowed is 10.
38813
- """
38814
- if src_ip_ranges is not None:
38815
- pulumi.set(__self__, "src_ip_ranges", src_ip_ranges)
38816
-
38817
- @property
38818
- @pulumi.getter(name="srcIpRanges")
38819
- def src_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
38820
- """
38821
- CIDR IP address range. Maximum number of srcIpRanges allowed is 10.
38822
- """
38823
- return pulumi.get(self, "src_ip_ranges")
38824
-
38825
- @src_ip_ranges.setter
38826
- def src_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
38827
- pulumi.set(self, "src_ip_ranges", value)
38828
-
38829
-
38830
- if not MYPY:
38831
- class RegionSecurityPolicyRuleMatchExprArgsDict(TypedDict):
38832
- expression: pulumi.Input[str]
38833
- """
38834
- Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.
38835
- """
38836
- elif False:
38837
- RegionSecurityPolicyRuleMatchExprArgsDict: TypeAlias = Mapping[str, Any]
38838
-
38839
- @pulumi.input_type
38840
- class RegionSecurityPolicyRuleMatchExprArgs:
38841
- def __init__(__self__, *,
38842
- expression: pulumi.Input[str]):
38843
- """
38844
- :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.
38845
- """
38846
- pulumi.set(__self__, "expression", expression)
38847
-
38848
- @property
38849
- @pulumi.getter
38850
- def expression(self) -> pulumi.Input[str]:
38851
- """
38852
- Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.
38853
- """
38854
- return pulumi.get(self, "expression")
38855
-
38856
- @expression.setter
38857
- def expression(self, value: pulumi.Input[str]):
38858
- pulumi.set(self, "expression", value)
38859
-
38860
-
38861
- if not MYPY:
38862
- class RegionSecurityPolicyRuleNetworkMatchArgsDict(TypedDict):
38863
- dest_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
38864
- """
38865
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
38866
- """
38867
- dest_ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
38868
- """
38869
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
38870
- """
38871
- ip_protocols: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
38872
- """
38873
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
38874
- """
38875
- src_asns: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]]
38876
- """
38877
- BGP Autonomous System Number associated with the source IP address.
38878
- """
38879
- src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
38880
- """
38881
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
38882
- """
38883
- src_ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
38884
- """
38885
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
38886
- """
38887
- src_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
38888
- """
38889
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
38890
- """
38891
- user_defined_fields: NotRequired[pulumi.Input[Sequence[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchUserDefinedFieldArgsDict']]]]
38892
- """
38893
- User-defined fields. Each element names a defined field and lists the matching values for that field.
38894
- Structure is documented below.
38895
- """
38896
- elif False:
38897
- RegionSecurityPolicyRuleNetworkMatchArgsDict: TypeAlias = Mapping[str, Any]
38898
-
38899
- @pulumi.input_type
38900
- class RegionSecurityPolicyRuleNetworkMatchArgs:
38901
- def __init__(__self__, *,
38902
- dest_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
38903
- dest_ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
38904
- ip_protocols: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
38905
- src_asns: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
38906
- src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
38907
- src_ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
38908
- src_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
38909
- user_defined_fields: Optional[pulumi.Input[Sequence[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchUserDefinedFieldArgs']]]] = None):
38910
- """
38911
- :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ip_ranges: Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
38912
- :param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ports: Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
38913
- :param pulumi.Input[Sequence[pulumi.Input[str]]] ip_protocols: IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
38914
- :param pulumi.Input[Sequence[pulumi.Input[int]]] src_asns: BGP Autonomous System Number associated with the source IP address.
38915
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
38916
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_ports: Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
38917
- :param pulumi.Input[Sequence[pulumi.Input[str]]] src_region_codes: Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
38918
- :param pulumi.Input[Sequence[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchUserDefinedFieldArgs']]] user_defined_fields: User-defined fields. Each element names a defined field and lists the matching values for that field.
38919
- Structure is documented below.
38920
- """
38921
- if dest_ip_ranges is not None:
38922
- pulumi.set(__self__, "dest_ip_ranges", dest_ip_ranges)
38923
- if dest_ports is not None:
38924
- pulumi.set(__self__, "dest_ports", dest_ports)
38925
- if ip_protocols is not None:
38926
- pulumi.set(__self__, "ip_protocols", ip_protocols)
38927
- if src_asns is not None:
38928
- pulumi.set(__self__, "src_asns", src_asns)
38929
- if src_ip_ranges is not None:
38930
- pulumi.set(__self__, "src_ip_ranges", src_ip_ranges)
38931
- if src_ports is not None:
38932
- pulumi.set(__self__, "src_ports", src_ports)
38933
- if src_region_codes is not None:
38934
- pulumi.set(__self__, "src_region_codes", src_region_codes)
38935
- if user_defined_fields is not None:
38936
- pulumi.set(__self__, "user_defined_fields", user_defined_fields)
38937
-
38938
- @property
38939
- @pulumi.getter(name="destIpRanges")
38940
- def dest_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
38941
- """
38942
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
38943
- """
38944
- return pulumi.get(self, "dest_ip_ranges")
38945
-
38946
- @dest_ip_ranges.setter
38947
- def dest_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
38948
- pulumi.set(self, "dest_ip_ranges", value)
38949
-
38950
- @property
38951
- @pulumi.getter(name="destPorts")
38952
- def dest_ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
38953
- """
38954
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
38955
- """
38956
- return pulumi.get(self, "dest_ports")
38957
-
38958
- @dest_ports.setter
38959
- def dest_ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
38960
- pulumi.set(self, "dest_ports", value)
38961
-
38962
- @property
38963
- @pulumi.getter(name="ipProtocols")
38964
- def ip_protocols(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
38965
- """
38966
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
37059
+ IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
38967
37060
  """
38968
37061
  return pulumi.get(self, "ip_protocols")
38969
37062
 
@@ -40024,7 +38117,7 @@ if not MYPY:
40024
38117
  """
40025
38118
  name: NotRequired[pulumi.Input[str]]
40026
38119
  """
40027
- Name of the user-defined field, as given in the definition.
38120
+ The name of this field. Must be unique within the policy.
40028
38121
  """
40029
38122
  offset: NotRequired[pulumi.Input[int]]
40030
38123
  """
@@ -40055,7 +38148,7 @@ class RegionSecurityPolicyUserDefinedFieldArgs:
40055
38148
  :param pulumi.Input[str] mask: If specified, apply this mask (bitwise AND) to the field to ignore bits before matching.
40056
38149
  Encoded as a hexadecimal number (starting with "0x").
40057
38150
  The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
40058
- :param pulumi.Input[str] name: Name of the user-defined field, as given in the definition.
38151
+ :param pulumi.Input[str] name: The name of this field. Must be unique within the policy.
40059
38152
  :param pulumi.Input[int] offset: Offset of the first byte of the field (in network byte order) relative to 'base'.
40060
38153
  :param pulumi.Input[int] size: Size of the field in bytes. Valid values: 1-4.
40061
38154
  """
@@ -40104,7 +38197,7 @@ class RegionSecurityPolicyUserDefinedFieldArgs:
40104
38197
  @pulumi.getter
40105
38198
  def name(self) -> Optional[pulumi.Input[str]]:
40106
38199
  """
40107
- Name of the user-defined field, as given in the definition.
38200
+ The name of this field. Must be unique within the policy.
40108
38201
  """
40109
38202
  return pulumi.get(self, "name")
40110
38203
 
@@ -50221,7 +48314,7 @@ if not MYPY:
50221
48314
  class RouterPeerCustomLearnedIpRangeArgsDict(TypedDict):
50222
48315
  range: pulumi.Input[str]
50223
48316
  """
50224
- The IP range to learn. The value must be a
48317
+ The IP range to advertise. The value must be a
50225
48318
  CIDR-formatted string.
50226
48319
  """
50227
48320
  elif False:
@@ -50232,7 +48325,7 @@ class RouterPeerCustomLearnedIpRangeArgs:
50232
48325
  def __init__(__self__, *,
50233
48326
  range: pulumi.Input[str]):
50234
48327
  """
50235
- :param pulumi.Input[str] range: The IP range to learn. The value must be a
48328
+ :param pulumi.Input[str] range: The IP range to advertise. The value must be a
50236
48329
  CIDR-formatted string.
50237
48330
  """
50238
48331
  pulumi.set(__self__, "range", range)
@@ -50241,7 +48334,7 @@ class RouterPeerCustomLearnedIpRangeArgs:
50241
48334
  @pulumi.getter
50242
48335
  def range(self) -> pulumi.Input[str]:
50243
48336
  """
50244
- The IP range to learn. The value must be a
48337
+ The IP range to advertise. The value must be a
50245
48338
  CIDR-formatted string.
50246
48339
  """
50247
48340
  return pulumi.get(self, "range")