pulumi-gcp 7.15.0a1711038061__py3-none-any.whl → 7.16.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. pulumi_gcp/__init__.py +102 -0
  2. pulumi_gcp/accesscontextmanager/__init__.py +1 -0
  3. pulumi_gcp/accesscontextmanager/_inputs.py +74 -58
  4. pulumi_gcp/accesscontextmanager/outputs.py +74 -58
  5. pulumi_gcp/accesscontextmanager/service_perimeter.py +0 -2
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +345 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +80 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +86 -0
  9. pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +4 -2
  10. pulumi_gcp/apphub/__init__.py +15 -0
  11. pulumi_gcp/apphub/_inputs.py +1016 -0
  12. pulumi_gcp/apphub/application.py +775 -0
  13. pulumi_gcp/apphub/get_discovered_service.py +180 -0
  14. pulumi_gcp/apphub/get_discovered_workload.py +180 -0
  15. pulumi_gcp/apphub/outputs.py +1206 -0
  16. pulumi_gcp/apphub/service.py +1121 -0
  17. pulumi_gcp/apphub/service_project_attachment.py +516 -0
  18. pulumi_gcp/apphub/workload.py +1197 -0
  19. pulumi_gcp/cloudquota/__init__.py +10 -0
  20. pulumi_gcp/cloudquota/get_s_quota_info.py +322 -0
  21. pulumi_gcp/cloudquota/get_s_quota_infos.py +136 -0
  22. pulumi_gcp/cloudquota/outputs.py +375 -0
  23. pulumi_gcp/cloudrunv2/_inputs.py +85 -4
  24. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  25. pulumi_gcp/cloudrunv2/outputs.py +165 -6
  26. pulumi_gcp/cloudrunv2/service.py +60 -6
  27. pulumi_gcp/composer/_inputs.py +16 -0
  28. pulumi_gcp/composer/outputs.py +23 -0
  29. pulumi_gcp/compute/_inputs.py +109 -11
  30. pulumi_gcp/compute/outputs.py +144 -13
  31. pulumi_gcp/compute/region_network_endpoint_group.py +30 -0
  32. pulumi_gcp/compute/region_url_map.py +152 -0
  33. pulumi_gcp/config/__init__.pyi +4 -0
  34. pulumi_gcp/config/vars.py +8 -0
  35. pulumi_gcp/dataform/repository.py +4 -74
  36. pulumi_gcp/firebase/__init__.py +1 -0
  37. pulumi_gcp/firebase/android_app.py +41 -40
  38. pulumi_gcp/firebase/app_check_device_check_config.py +572 -0
  39. pulumi_gcp/firestore/_inputs.py +69 -0
  40. pulumi_gcp/firestore/database.py +206 -0
  41. pulumi_gcp/firestore/index.py +34 -48
  42. pulumi_gcp/firestore/outputs.py +80 -0
  43. pulumi_gcp/gkeonprem/_inputs.py +1 -3
  44. pulumi_gcp/gkeonprem/outputs.py +1 -3
  45. pulumi_gcp/gkeonprem/v_mware_cluster.py +2 -0
  46. pulumi_gcp/iap/__init__.py +5 -0
  47. pulumi_gcp/iap/_inputs.py +100 -0
  48. pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +172 -0
  49. pulumi_gcp/iap/outputs.py +76 -0
  50. pulumi_gcp/iap/tunnel_dest_group.py +524 -0
  51. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +858 -0
  52. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +858 -0
  53. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +760 -0
  54. pulumi_gcp/kms/__init__.py +1 -0
  55. pulumi_gcp/kms/_inputs.py +246 -0
  56. pulumi_gcp/kms/ekm_connection.py +610 -0
  57. pulumi_gcp/kms/outputs.py +242 -0
  58. pulumi_gcp/monitoring/_inputs.py +2 -0
  59. pulumi_gcp/monitoring/outputs.py +2 -0
  60. pulumi_gcp/networksecurity/__init__.py +1 -0
  61. pulumi_gcp/networksecurity/firewall_endpoint.py +48 -0
  62. pulumi_gcp/networksecurity/firewall_endpoint_association.py +753 -0
  63. pulumi_gcp/notebooks/instance.py +8 -0
  64. pulumi_gcp/orgpolicy/policy.py +2 -2
  65. pulumi_gcp/provider.py +40 -0
  66. pulumi_gcp/pubsub/_inputs.py +108 -0
  67. pulumi_gcp/pubsub/get_topic.py +11 -1
  68. pulumi_gcp/pubsub/outputs.py +213 -0
  69. pulumi_gcp/pubsub/subscription.py +4 -4
  70. pulumi_gcp/pubsub/topic.py +92 -0
  71. pulumi_gcp/securityposture/posture.py +2 -2
  72. pulumi_gcp/securityposture/posture_deployment.py +2 -2
  73. pulumi_gcp/storage/_inputs.py +72 -15
  74. pulumi_gcp/storage/bucket.py +54 -0
  75. pulumi_gcp/storage/get_bucket.py +11 -1
  76. pulumi_gcp/storage/outputs.py +110 -14
  77. pulumi_gcp/workstations/_inputs.py +247 -4
  78. pulumi_gcp/workstations/outputs.py +261 -5
  79. pulumi_gcp/workstations/workstation_config.py +160 -0
  80. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/METADATA +1 -1
  81. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/RECORD +83 -61
  82. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/WHEEL +0 -0
  83. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/top_level.txt +0 -0
@@ -3631,7 +3631,7 @@ class DiskGuestOsFeatureArgs:
3631
3631
  type: pulumi.Input[str]):
3632
3632
  """
3633
3633
  :param pulumi.Input[str] type: The type of supported feature. Read [Enabling guest operating system features](https://cloud.google.com/compute/docs/images/create-delete-deprecate-private-images#guest-os-features) to see a list of available options.
3634
- Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`.
3634
+ Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`, `SEV_LIVE_MIGRATABLE_V2`.
3635
3635
  """
3636
3636
  pulumi.set(__self__, "type", type)
3637
3637
 
@@ -3640,7 +3640,7 @@ class DiskGuestOsFeatureArgs:
3640
3640
  def type(self) -> pulumi.Input[str]:
3641
3641
  """
3642
3642
  The type of supported feature. Read [Enabling guest operating system features](https://cloud.google.com/compute/docs/images/create-delete-deprecate-private-images#guest-os-features) to see a list of available options.
3643
- Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`.
3643
+ Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`, `SEV_LIVE_MIGRATABLE_V2`.
3644
3644
  """
3645
3645
  return pulumi.get(self, "type")
3646
3646
 
@@ -9623,13 +9623,29 @@ class InstanceGroupManagerStatusArgs:
9623
9623
  @pulumi.input_type
9624
9624
  class InstanceGroupManagerStatusAllInstancesConfigArgs:
9625
9625
  def __init__(__self__, *,
9626
+ current_revision: Optional[pulumi.Input[str]] = None,
9626
9627
  effective: Optional[pulumi.Input[bool]] = None):
9627
9628
  """
9629
+ :param pulumi.Input[str] current_revision: Current all-instances configuration revision. This value is in RFC3339 text format.
9628
9630
  :param pulumi.Input[bool] effective: A bit indicating whether this configuration has been applied to all managed instances in the group.
9629
9631
  """
9632
+ if current_revision is not None:
9633
+ pulumi.set(__self__, "current_revision", current_revision)
9630
9634
  if effective is not None:
9631
9635
  pulumi.set(__self__, "effective", effective)
9632
9636
 
9637
+ @property
9638
+ @pulumi.getter(name="currentRevision")
9639
+ def current_revision(self) -> Optional[pulumi.Input[str]]:
9640
+ """
9641
+ Current all-instances configuration revision. This value is in RFC3339 text format.
9642
+ """
9643
+ return pulumi.get(self, "current_revision")
9644
+
9645
+ @current_revision.setter
9646
+ def current_revision(self, value: Optional[pulumi.Input[str]]):
9647
+ pulumi.set(self, "current_revision", value)
9648
+
9633
9649
  @property
9634
9650
  @pulumi.getter
9635
9651
  def effective(self) -> Optional[pulumi.Input[bool]]:
@@ -9650,7 +9666,7 @@ class InstanceGroupManagerStatusStatefulArgs:
9650
9666
  per_instance_configs: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]]] = None):
9651
9667
  """
9652
9668
  :param pulumi.Input[bool] has_stateful_config: A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
9653
- :param pulumi.Input[Sequence[pulumi.Input['InstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]] per_instance_configs: Status of per-instance configs on the instance.
9669
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]] per_instance_configs: Status of per-instance configs on the instances.
9654
9670
  """
9655
9671
  if has_stateful_config is not None:
9656
9672
  pulumi.set(__self__, "has_stateful_config", has_stateful_config)
@@ -9673,7 +9689,7 @@ class InstanceGroupManagerStatusStatefulArgs:
9673
9689
  @pulumi.getter(name="perInstanceConfigs")
9674
9690
  def per_instance_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]]]:
9675
9691
  """
9676
- Status of per-instance configs on the instance.
9692
+ Status of per-instance configs on the instances.
9677
9693
  """
9678
9694
  return pulumi.get(self, "per_instance_configs")
9679
9695
 
@@ -18863,13 +18879,29 @@ class RegionInstanceGroupManagerStatusArgs:
18863
18879
  @pulumi.input_type
18864
18880
  class RegionInstanceGroupManagerStatusAllInstancesConfigArgs:
18865
18881
  def __init__(__self__, *,
18882
+ current_revision: Optional[pulumi.Input[str]] = None,
18866
18883
  effective: Optional[pulumi.Input[bool]] = None):
18867
18884
  """
18885
+ :param pulumi.Input[str] current_revision: Current all-instances configuration revision. This value is in RFC3339 text format.
18868
18886
  :param pulumi.Input[bool] effective: A bit indicating whether this configuration has been applied to all managed instances in the group.
18869
18887
  """
18888
+ if current_revision is not None:
18889
+ pulumi.set(__self__, "current_revision", current_revision)
18870
18890
  if effective is not None:
18871
18891
  pulumi.set(__self__, "effective", effective)
18872
18892
 
18893
+ @property
18894
+ @pulumi.getter(name="currentRevision")
18895
+ def current_revision(self) -> Optional[pulumi.Input[str]]:
18896
+ """
18897
+ Current all-instances configuration revision. This value is in RFC3339 text format.
18898
+ """
18899
+ return pulumi.get(self, "current_revision")
18900
+
18901
+ @current_revision.setter
18902
+ def current_revision(self, value: Optional[pulumi.Input[str]]):
18903
+ pulumi.set(self, "current_revision", value)
18904
+
18873
18905
  @property
18874
18906
  @pulumi.getter
18875
18907
  def effective(self) -> Optional[pulumi.Input[bool]]:
@@ -18890,7 +18922,7 @@ class RegionInstanceGroupManagerStatusStatefulArgs:
18890
18922
  per_instance_configs: Optional[pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]]] = None):
18891
18923
  """
18892
18924
  :param pulumi.Input[bool] has_stateful_config: A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
18893
- :param pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]] per_instance_configs: Status of per-instance configs on the instance.
18925
+ :param pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]] per_instance_configs: Status of per-instance configs on the instances.
18894
18926
  """
18895
18927
  if has_stateful_config is not None:
18896
18928
  pulumi.set(__self__, "has_stateful_config", has_stateful_config)
@@ -18913,7 +18945,7 @@ class RegionInstanceGroupManagerStatusStatefulArgs:
18913
18945
  @pulumi.getter(name="perInstanceConfigs")
18914
18946
  def per_instance_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegionInstanceGroupManagerStatusStatefulPerInstanceConfigArgs']]]]:
18915
18947
  """
18916
- Status of per-instance configs on the instance.
18948
+ Status of per-instance configs on the instances.
18917
18949
  """
18918
18950
  return pulumi.get(self, "per_instance_configs")
18919
18951
 
@@ -25230,6 +25262,7 @@ class RegionUrlMapPathMatcherRouteRuleMatchRuleArgs:
25230
25262
  header_matches: Optional[pulumi.Input[Sequence[pulumi.Input['RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatchArgs']]]] = None,
25231
25263
  ignore_case: Optional[pulumi.Input[bool]] = None,
25232
25264
  metadata_filters: Optional[pulumi.Input[Sequence[pulumi.Input['RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilterArgs']]]] = None,
25265
+ path_template_match: Optional[pulumi.Input[str]] = None,
25233
25266
  prefix_match: Optional[pulumi.Input[str]] = None,
25234
25267
  query_parameter_matches: Optional[pulumi.Input[Sequence[pulumi.Input['RegionUrlMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs']]]] = None,
25235
25268
  regex_match: Optional[pulumi.Input[str]] = None):
@@ -25256,6 +25289,14 @@ class RegionUrlMapPathMatcherRouteRuleMatchRuleArgs:
25256
25289
  UrlMap. metadataFilters only applies to Loadbalancers that have their
25257
25290
  loadBalancingScheme set to INTERNAL_SELF_MANAGED.
25258
25291
  Structure is documented below.
25292
+ :param pulumi.Input[str] path_template_match: For satisfying the matchRule condition, the path of the request
25293
+ must match the wildcard pattern specified in pathTemplateMatch
25294
+ after removing any query parameters and anchor that may be part
25295
+ of the original URL.
25296
+ pathTemplateMatch must be between 1 and 255 characters
25297
+ (inclusive). The pattern specified by pathTemplateMatch may
25298
+ have at most 5 wildcard operators and at most 5 variable
25299
+ captures in total.
25259
25300
  :param pulumi.Input[str] prefix_match: For satisfying the matchRule condition, the request's path must begin with the
25260
25301
  specified prefixMatch. prefixMatch must begin with a /. The value must be
25261
25302
  between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or
@@ -25277,6 +25318,8 @@ class RegionUrlMapPathMatcherRouteRuleMatchRuleArgs:
25277
25318
  pulumi.set(__self__, "ignore_case", ignore_case)
25278
25319
  if metadata_filters is not None:
25279
25320
  pulumi.set(__self__, "metadata_filters", metadata_filters)
25321
+ if path_template_match is not None:
25322
+ pulumi.set(__self__, "path_template_match", path_template_match)
25280
25323
  if prefix_match is not None:
25281
25324
  pulumi.set(__self__, "prefix_match", prefix_match)
25282
25325
  if query_parameter_matches is not None:
@@ -25350,6 +25393,25 @@ class RegionUrlMapPathMatcherRouteRuleMatchRuleArgs:
25350
25393
  def metadata_filters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilterArgs']]]]):
25351
25394
  pulumi.set(self, "metadata_filters", value)
25352
25395
 
25396
+ @property
25397
+ @pulumi.getter(name="pathTemplateMatch")
25398
+ def path_template_match(self) -> Optional[pulumi.Input[str]]:
25399
+ """
25400
+ For satisfying the matchRule condition, the path of the request
25401
+ must match the wildcard pattern specified in pathTemplateMatch
25402
+ after removing any query parameters and anchor that may be part
25403
+ of the original URL.
25404
+ pathTemplateMatch must be between 1 and 255 characters
25405
+ (inclusive). The pattern specified by pathTemplateMatch may
25406
+ have at most 5 wildcard operators and at most 5 variable
25407
+ captures in total.
25408
+ """
25409
+ return pulumi.get(self, "path_template_match")
25410
+
25411
+ @path_template_match.setter
25412
+ def path_template_match(self, value: Optional[pulumi.Input[str]]):
25413
+ pulumi.set(self, "path_template_match", value)
25414
+
25353
25415
  @property
25354
25416
  @pulumi.getter(name="prefixMatch")
25355
25417
  def prefix_match(self) -> Optional[pulumi.Input[str]]:
@@ -26484,17 +26546,31 @@ class RegionUrlMapPathMatcherRouteRuleRouteActionTimeoutArgs:
26484
26546
  class RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewriteArgs:
26485
26547
  def __init__(__self__, *,
26486
26548
  host_rewrite: Optional[pulumi.Input[str]] = None,
26487
- path_prefix_rewrite: Optional[pulumi.Input[str]] = None):
26549
+ path_prefix_rewrite: Optional[pulumi.Input[str]] = None,
26550
+ path_template_rewrite: Optional[pulumi.Input[str]] = None):
26488
26551
  """
26489
26552
  :param pulumi.Input[str] host_rewrite: Before forwarding the request to the selected service, the request's host header is replaced with contents of hostRewrite.
26490
26553
  The value must be from 1 to 255 characters.
26491
26554
  :param pulumi.Input[str] path_prefix_rewrite: Before forwarding the request to the selected backend service, the matching portion of the request's path is replaced by pathPrefixRewrite.
26492
26555
  The value must be from 1 to 1024 characters.
26556
+ :param pulumi.Input[str] path_template_rewrite: Prior to forwarding the request to the selected origin, if the
26557
+ request matched a pathTemplateMatch, the matching portion of the
26558
+ request's path is replaced re-written using the pattern specified
26559
+ by pathTemplateRewrite.
26560
+ pathTemplateRewrite must be between 1 and 255 characters
26561
+ (inclusive), must start with a '/', and must only use variables
26562
+ captured by the route's pathTemplate matchers.
26563
+ pathTemplateRewrite may only be used when all of a route's
26564
+ MatchRules specify pathTemplate.
26565
+ Only one of pathPrefixRewrite and pathTemplateRewrite may be
26566
+ specified.
26493
26567
  """
26494
26568
  if host_rewrite is not None:
26495
26569
  pulumi.set(__self__, "host_rewrite", host_rewrite)
26496
26570
  if path_prefix_rewrite is not None:
26497
26571
  pulumi.set(__self__, "path_prefix_rewrite", path_prefix_rewrite)
26572
+ if path_template_rewrite is not None:
26573
+ pulumi.set(__self__, "path_template_rewrite", path_template_rewrite)
26498
26574
 
26499
26575
  @property
26500
26576
  @pulumi.getter(name="hostRewrite")
@@ -26522,6 +26598,28 @@ class RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewriteArgs:
26522
26598
  def path_prefix_rewrite(self, value: Optional[pulumi.Input[str]]):
26523
26599
  pulumi.set(self, "path_prefix_rewrite", value)
26524
26600
 
26601
+ @property
26602
+ @pulumi.getter(name="pathTemplateRewrite")
26603
+ def path_template_rewrite(self) -> Optional[pulumi.Input[str]]:
26604
+ """
26605
+ Prior to forwarding the request to the selected origin, if the
26606
+ request matched a pathTemplateMatch, the matching portion of the
26607
+ request's path is replaced re-written using the pattern specified
26608
+ by pathTemplateRewrite.
26609
+ pathTemplateRewrite must be between 1 and 255 characters
26610
+ (inclusive), must start with a '/', and must only use variables
26611
+ captured by the route's pathTemplate matchers.
26612
+ pathTemplateRewrite may only be used when all of a route's
26613
+ MatchRules specify pathTemplate.
26614
+ Only one of pathPrefixRewrite and pathTemplateRewrite may be
26615
+ specified.
26616
+ """
26617
+ return pulumi.get(self, "path_template_rewrite")
26618
+
26619
+ @path_template_rewrite.setter
26620
+ def path_template_rewrite(self, value: Optional[pulumi.Input[str]]):
26621
+ pulumi.set(self, "path_template_rewrite", value)
26622
+
26525
26623
 
26526
26624
  @pulumi.input_type
26527
26625
  class RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceArgs:
@@ -29215,8 +29313,8 @@ class SecurityPolicyRulePreconfiguredWafConfigExclusionArgs:
29215
29313
  :param pulumi.Input[str] target_rule_set: Target WAF rule set to apply the preconfigured WAF exclusion.
29216
29314
  :param pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestCookyArgs']]] request_cookies: Request cookie whose value will be excluded from inspection during preconfigured WAF evaluation. Structure is documented below.
29217
29315
  :param pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestHeaderArgs']]] request_headers: Request header whose value will be excluded from inspection during preconfigured WAF evaluation. Structure is documented below.
29218
- :param pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs']]] request_query_params: Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
29219
- :param pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestUriArgs']]] request_uris: Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
29316
+ :param pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs']]] request_query_params: Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
29317
+ :param pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestUriArgs']]] request_uris: Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
29220
29318
  :param pulumi.Input[Sequence[pulumi.Input[str]]] target_rule_ids: A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
29221
29319
 
29222
29320
  <a name="nested_field_params"></a>The `request_header`, `request_cookie`, `request_uri` and `request_query_param` blocks support:
@@ -29273,7 +29371,7 @@ class SecurityPolicyRulePreconfiguredWafConfigExclusionArgs:
29273
29371
  @pulumi.getter(name="requestQueryParams")
29274
29372
  def request_query_params(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs']]]]:
29275
29373
  """
29276
- Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
29374
+ Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
29277
29375
  """
29278
29376
  return pulumi.get(self, "request_query_params")
29279
29377
 
@@ -29285,7 +29383,7 @@ class SecurityPolicyRulePreconfiguredWafConfigExclusionArgs:
29285
29383
  @pulumi.getter(name="requestUris")
29286
29384
  def request_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestUriArgs']]]]:
29287
29385
  """
29288
- Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
29386
+ Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
29289
29387
  """
29290
29388
  return pulumi.get(self, "request_uris")
29291
29389
 
@@ -3717,7 +3717,7 @@ class DiskGuestOsFeature(dict):
3717
3717
  type: str):
3718
3718
  """
3719
3719
  :param str type: The type of supported feature. Read [Enabling guest operating system features](https://cloud.google.com/compute/docs/images/create-delete-deprecate-private-images#guest-os-features) to see a list of available options.
3720
- Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`.
3720
+ Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`, `SEV_LIVE_MIGRATABLE_V2`.
3721
3721
  """
3722
3722
  pulumi.set(__self__, "type", type)
3723
3723
 
@@ -3726,7 +3726,7 @@ class DiskGuestOsFeature(dict):
3726
3726
  def type(self) -> str:
3727
3727
  """
3728
3728
  The type of supported feature. Read [Enabling guest operating system features](https://cloud.google.com/compute/docs/images/create-delete-deprecate-private-images#guest-os-features) to see a list of available options.
3729
- Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`.
3729
+ Possible values are: `MULTI_IP_SUBNET`, `SECURE_BOOT`, `SEV_CAPABLE`, `UEFI_COMPATIBLE`, `VIRTIO_SCSI_MULTIQUEUE`, `WINDOWS`, `GVNIC`, `SEV_LIVE_MIGRATABLE`, `SEV_SNP_CAPABLE`, `SUSPEND_RESUME_COMPATIBLE`, `TDX_CAPABLE`, `SEV_LIVE_MIGRATABLE_V2`.
3730
3730
  """
3731
3731
  return pulumi.get(self, "type")
3732
3732
 
@@ -9691,14 +9691,43 @@ class InstanceGroupManagerStatus(dict):
9691
9691
 
9692
9692
  @pulumi.output_type
9693
9693
  class InstanceGroupManagerStatusAllInstancesConfig(dict):
9694
+ @staticmethod
9695
+ def __key_warning(key: str):
9696
+ suggest = None
9697
+ if key == "currentRevision":
9698
+ suggest = "current_revision"
9699
+
9700
+ if suggest:
9701
+ pulumi.log.warn(f"Key '{key}' not found in InstanceGroupManagerStatusAllInstancesConfig. Access the value via the '{suggest}' property getter instead.")
9702
+
9703
+ def __getitem__(self, key: str) -> Any:
9704
+ InstanceGroupManagerStatusAllInstancesConfig.__key_warning(key)
9705
+ return super().__getitem__(key)
9706
+
9707
+ def get(self, key: str, default = None) -> Any:
9708
+ InstanceGroupManagerStatusAllInstancesConfig.__key_warning(key)
9709
+ return super().get(key, default)
9710
+
9694
9711
  def __init__(__self__, *,
9712
+ current_revision: Optional[str] = None,
9695
9713
  effective: Optional[bool] = None):
9696
9714
  """
9715
+ :param str current_revision: Current all-instances configuration revision. This value is in RFC3339 text format.
9697
9716
  :param bool effective: A bit indicating whether this configuration has been applied to all managed instances in the group.
9698
9717
  """
9718
+ if current_revision is not None:
9719
+ pulumi.set(__self__, "current_revision", current_revision)
9699
9720
  if effective is not None:
9700
9721
  pulumi.set(__self__, "effective", effective)
9701
9722
 
9723
+ @property
9724
+ @pulumi.getter(name="currentRevision")
9725
+ def current_revision(self) -> Optional[str]:
9726
+ """
9727
+ Current all-instances configuration revision. This value is in RFC3339 text format.
9728
+ """
9729
+ return pulumi.get(self, "current_revision")
9730
+
9702
9731
  @property
9703
9732
  @pulumi.getter
9704
9733
  def effective(self) -> Optional[bool]:
@@ -9734,7 +9763,7 @@ class InstanceGroupManagerStatusStateful(dict):
9734
9763
  per_instance_configs: Optional[Sequence['outputs.InstanceGroupManagerStatusStatefulPerInstanceConfig']] = None):
9735
9764
  """
9736
9765
  :param bool has_stateful_config: A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
9737
- :param Sequence['InstanceGroupManagerStatusStatefulPerInstanceConfigArgs'] per_instance_configs: Status of per-instance configs on the instance.
9766
+ :param Sequence['InstanceGroupManagerStatusStatefulPerInstanceConfigArgs'] per_instance_configs: Status of per-instance configs on the instances.
9738
9767
  """
9739
9768
  if has_stateful_config is not None:
9740
9769
  pulumi.set(__self__, "has_stateful_config", has_stateful_config)
@@ -9753,7 +9782,7 @@ class InstanceGroupManagerStatusStateful(dict):
9753
9782
  @pulumi.getter(name="perInstanceConfigs")
9754
9783
  def per_instance_configs(self) -> Optional[Sequence['outputs.InstanceGroupManagerStatusStatefulPerInstanceConfig']]:
9755
9784
  """
9756
- Status of per-instance configs on the instance.
9785
+ Status of per-instance configs on the instances.
9757
9786
  """
9758
9787
  return pulumi.get(self, "per_instance_configs")
9759
9788
 
@@ -18870,14 +18899,43 @@ class RegionInstanceGroupManagerStatus(dict):
18870
18899
 
18871
18900
  @pulumi.output_type
18872
18901
  class RegionInstanceGroupManagerStatusAllInstancesConfig(dict):
18902
+ @staticmethod
18903
+ def __key_warning(key: str):
18904
+ suggest = None
18905
+ if key == "currentRevision":
18906
+ suggest = "current_revision"
18907
+
18908
+ if suggest:
18909
+ pulumi.log.warn(f"Key '{key}' not found in RegionInstanceGroupManagerStatusAllInstancesConfig. Access the value via the '{suggest}' property getter instead.")
18910
+
18911
+ def __getitem__(self, key: str) -> Any:
18912
+ RegionInstanceGroupManagerStatusAllInstancesConfig.__key_warning(key)
18913
+ return super().__getitem__(key)
18914
+
18915
+ def get(self, key: str, default = None) -> Any:
18916
+ RegionInstanceGroupManagerStatusAllInstancesConfig.__key_warning(key)
18917
+ return super().get(key, default)
18918
+
18873
18919
  def __init__(__self__, *,
18920
+ current_revision: Optional[str] = None,
18874
18921
  effective: Optional[bool] = None):
18875
18922
  """
18923
+ :param str current_revision: Current all-instances configuration revision. This value is in RFC3339 text format.
18876
18924
  :param bool effective: A bit indicating whether this configuration has been applied to all managed instances in the group.
18877
18925
  """
18926
+ if current_revision is not None:
18927
+ pulumi.set(__self__, "current_revision", current_revision)
18878
18928
  if effective is not None:
18879
18929
  pulumi.set(__self__, "effective", effective)
18880
18930
 
18931
+ @property
18932
+ @pulumi.getter(name="currentRevision")
18933
+ def current_revision(self) -> Optional[str]:
18934
+ """
18935
+ Current all-instances configuration revision. This value is in RFC3339 text format.
18936
+ """
18937
+ return pulumi.get(self, "current_revision")
18938
+
18881
18939
  @property
18882
18940
  @pulumi.getter
18883
18941
  def effective(self) -> Optional[bool]:
@@ -18913,7 +18971,7 @@ class RegionInstanceGroupManagerStatusStateful(dict):
18913
18971
  per_instance_configs: Optional[Sequence['outputs.RegionInstanceGroupManagerStatusStatefulPerInstanceConfig']] = None):
18914
18972
  """
18915
18973
  :param bool has_stateful_config: A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
18916
- :param Sequence['RegionInstanceGroupManagerStatusStatefulPerInstanceConfigArgs'] per_instance_configs: Status of per-instance configs on the instance.
18974
+ :param Sequence['RegionInstanceGroupManagerStatusStatefulPerInstanceConfigArgs'] per_instance_configs: Status of per-instance configs on the instances.
18917
18975
  """
18918
18976
  if has_stateful_config is not None:
18919
18977
  pulumi.set(__self__, "has_stateful_config", has_stateful_config)
@@ -18932,7 +18990,7 @@ class RegionInstanceGroupManagerStatusStateful(dict):
18932
18990
  @pulumi.getter(name="perInstanceConfigs")
18933
18991
  def per_instance_configs(self) -> Optional[Sequence['outputs.RegionInstanceGroupManagerStatusStatefulPerInstanceConfig']]:
18934
18992
  """
18935
- Status of per-instance configs on the instance.
18993
+ Status of per-instance configs on the instances.
18936
18994
  """
18937
18995
  return pulumi.get(self, "per_instance_configs")
18938
18996
 
@@ -25413,6 +25471,8 @@ class RegionUrlMapPathMatcherRouteRuleMatchRule(dict):
25413
25471
  suggest = "ignore_case"
25414
25472
  elif key == "metadataFilters":
25415
25473
  suggest = "metadata_filters"
25474
+ elif key == "pathTemplateMatch":
25475
+ suggest = "path_template_match"
25416
25476
  elif key == "prefixMatch":
25417
25477
  suggest = "prefix_match"
25418
25478
  elif key == "queryParameterMatches":
@@ -25436,6 +25496,7 @@ class RegionUrlMapPathMatcherRouteRuleMatchRule(dict):
25436
25496
  header_matches: Optional[Sequence['outputs.RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatch']] = None,
25437
25497
  ignore_case: Optional[bool] = None,
25438
25498
  metadata_filters: Optional[Sequence['outputs.RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilter']] = None,
25499
+ path_template_match: Optional[str] = None,
25439
25500
  prefix_match: Optional[str] = None,
25440
25501
  query_parameter_matches: Optional[Sequence['outputs.RegionUrlMapPathMatcherRouteRuleMatchRuleQueryParameterMatch']] = None,
25441
25502
  regex_match: Optional[str] = None):
@@ -25462,6 +25523,14 @@ class RegionUrlMapPathMatcherRouteRuleMatchRule(dict):
25462
25523
  UrlMap. metadataFilters only applies to Loadbalancers that have their
25463
25524
  loadBalancingScheme set to INTERNAL_SELF_MANAGED.
25464
25525
  Structure is documented below.
25526
+ :param str path_template_match: For satisfying the matchRule condition, the path of the request
25527
+ must match the wildcard pattern specified in pathTemplateMatch
25528
+ after removing any query parameters and anchor that may be part
25529
+ of the original URL.
25530
+ pathTemplateMatch must be between 1 and 255 characters
25531
+ (inclusive). The pattern specified by pathTemplateMatch may
25532
+ have at most 5 wildcard operators and at most 5 variable
25533
+ captures in total.
25465
25534
  :param str prefix_match: For satisfying the matchRule condition, the request's path must begin with the
25466
25535
  specified prefixMatch. prefixMatch must begin with a /. The value must be
25467
25536
  between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or
@@ -25483,6 +25552,8 @@ class RegionUrlMapPathMatcherRouteRuleMatchRule(dict):
25483
25552
  pulumi.set(__self__, "ignore_case", ignore_case)
25484
25553
  if metadata_filters is not None:
25485
25554
  pulumi.set(__self__, "metadata_filters", metadata_filters)
25555
+ if path_template_match is not None:
25556
+ pulumi.set(__self__, "path_template_match", path_template_match)
25486
25557
  if prefix_match is not None:
25487
25558
  pulumi.set(__self__, "prefix_match", prefix_match)
25488
25559
  if query_parameter_matches is not None:
@@ -25540,6 +25611,21 @@ class RegionUrlMapPathMatcherRouteRuleMatchRule(dict):
25540
25611
  """
25541
25612
  return pulumi.get(self, "metadata_filters")
25542
25613
 
25614
+ @property
25615
+ @pulumi.getter(name="pathTemplateMatch")
25616
+ def path_template_match(self) -> Optional[str]:
25617
+ """
25618
+ For satisfying the matchRule condition, the path of the request
25619
+ must match the wildcard pattern specified in pathTemplateMatch
25620
+ after removing any query parameters and anchor that may be part
25621
+ of the original URL.
25622
+ pathTemplateMatch must be between 1 and 255 characters
25623
+ (inclusive). The pattern specified by pathTemplateMatch may
25624
+ have at most 5 wildcard operators and at most 5 variable
25625
+ captures in total.
25626
+ """
25627
+ return pulumi.get(self, "path_template_match")
25628
+
25543
25629
  @property
25544
25630
  @pulumi.getter(name="prefixMatch")
25545
25631
  def prefix_match(self) -> Optional[str]:
@@ -26689,6 +26775,8 @@ class RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewrite(dict):
26689
26775
  suggest = "host_rewrite"
26690
26776
  elif key == "pathPrefixRewrite":
26691
26777
  suggest = "path_prefix_rewrite"
26778
+ elif key == "pathTemplateRewrite":
26779
+ suggest = "path_template_rewrite"
26692
26780
 
26693
26781
  if suggest:
26694
26782
  pulumi.log.warn(f"Key '{key}' not found in RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewrite. Access the value via the '{suggest}' property getter instead.")
@@ -26703,17 +26791,31 @@ class RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewrite(dict):
26703
26791
 
26704
26792
  def __init__(__self__, *,
26705
26793
  host_rewrite: Optional[str] = None,
26706
- path_prefix_rewrite: Optional[str] = None):
26794
+ path_prefix_rewrite: Optional[str] = None,
26795
+ path_template_rewrite: Optional[str] = None):
26707
26796
  """
26708
26797
  :param str host_rewrite: Before forwarding the request to the selected service, the request's host header is replaced with contents of hostRewrite.
26709
26798
  The value must be from 1 to 255 characters.
26710
26799
  :param str path_prefix_rewrite: Before forwarding the request to the selected backend service, the matching portion of the request's path is replaced by pathPrefixRewrite.
26711
26800
  The value must be from 1 to 1024 characters.
26801
+ :param str path_template_rewrite: Prior to forwarding the request to the selected origin, if the
26802
+ request matched a pathTemplateMatch, the matching portion of the
26803
+ request's path is replaced re-written using the pattern specified
26804
+ by pathTemplateRewrite.
26805
+ pathTemplateRewrite must be between 1 and 255 characters
26806
+ (inclusive), must start with a '/', and must only use variables
26807
+ captured by the route's pathTemplate matchers.
26808
+ pathTemplateRewrite may only be used when all of a route's
26809
+ MatchRules specify pathTemplate.
26810
+ Only one of pathPrefixRewrite and pathTemplateRewrite may be
26811
+ specified.
26712
26812
  """
26713
26813
  if host_rewrite is not None:
26714
26814
  pulumi.set(__self__, "host_rewrite", host_rewrite)
26715
26815
  if path_prefix_rewrite is not None:
26716
26816
  pulumi.set(__self__, "path_prefix_rewrite", path_prefix_rewrite)
26817
+ if path_template_rewrite is not None:
26818
+ pulumi.set(__self__, "path_template_rewrite", path_template_rewrite)
26717
26819
 
26718
26820
  @property
26719
26821
  @pulumi.getter(name="hostRewrite")
@@ -26733,6 +26835,24 @@ class RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewrite(dict):
26733
26835
  """
26734
26836
  return pulumi.get(self, "path_prefix_rewrite")
26735
26837
 
26838
+ @property
26839
+ @pulumi.getter(name="pathTemplateRewrite")
26840
+ def path_template_rewrite(self) -> Optional[str]:
26841
+ """
26842
+ Prior to forwarding the request to the selected origin, if the
26843
+ request matched a pathTemplateMatch, the matching portion of the
26844
+ request's path is replaced re-written using the pattern specified
26845
+ by pathTemplateRewrite.
26846
+ pathTemplateRewrite must be between 1 and 255 characters
26847
+ (inclusive), must start with a '/', and must only use variables
26848
+ captured by the route's pathTemplate matchers.
26849
+ pathTemplateRewrite may only be used when all of a route's
26850
+ MatchRules specify pathTemplate.
26851
+ Only one of pathPrefixRewrite and pathTemplateRewrite may be
26852
+ specified.
26853
+ """
26854
+ return pulumi.get(self, "path_template_rewrite")
26855
+
26736
26856
 
26737
26857
  @pulumi.output_type
26738
26858
  class RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendService(dict):
@@ -30148,8 +30268,8 @@ class SecurityPolicyRulePreconfiguredWafConfigExclusion(dict):
30148
30268
  :param str target_rule_set: Target WAF rule set to apply the preconfigured WAF exclusion.
30149
30269
  :param Sequence['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestCookyArgs'] request_cookies: Request cookie whose value will be excluded from inspection during preconfigured WAF evaluation. Structure is documented below.
30150
30270
  :param Sequence['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestHeaderArgs'] request_headers: Request header whose value will be excluded from inspection during preconfigured WAF evaluation. Structure is documented below.
30151
- :param Sequence['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs'] request_query_params: Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
30152
- :param Sequence['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestUriArgs'] request_uris: Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
30271
+ :param Sequence['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs'] request_query_params: Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
30272
+ :param Sequence['SecurityPolicyRulePreconfiguredWafConfigExclusionRequestUriArgs'] request_uris: Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
30153
30273
  :param Sequence[str] target_rule_ids: A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
30154
30274
 
30155
30275
  <a name="nested_field_params"></a>The `request_header`, `request_cookie`, `request_uri` and `request_query_param` blocks support:
@@ -30194,7 +30314,7 @@ class SecurityPolicyRulePreconfiguredWafConfigExclusion(dict):
30194
30314
  @pulumi.getter(name="requestQueryParams")
30195
30315
  def request_query_params(self) -> Optional[Sequence['outputs.SecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParam']]:
30196
30316
  """
30197
- Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
30317
+ Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
30198
30318
  """
30199
30319
  return pulumi.get(self, "request_query_params")
30200
30320
 
@@ -30202,7 +30322,7 @@ class SecurityPolicyRulePreconfiguredWafConfigExclusion(dict):
30202
30322
  @pulumi.getter(name="requestUris")
30203
30323
  def request_uris(self) -> Optional[Sequence['outputs.SecurityPolicyRulePreconfiguredWafConfigExclusionRequestUri']]:
30204
30324
  """
30205
- Request query parameter whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body. Structure is documented below.
30325
+ Request URI from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded. Structure is documented below.
30206
30326
  """
30207
30327
  return pulumi.get(self, "request_uris")
30208
30328
 
@@ -42214,12 +42334,23 @@ class GetInstanceGroupManagerStatusResult(dict):
42214
42334
  @pulumi.output_type
42215
42335
  class GetInstanceGroupManagerStatusAllInstancesConfigResult(dict):
42216
42336
  def __init__(__self__, *,
42337
+ current_revision: str,
42217
42338
  effective: bool):
42218
42339
  """
42340
+ :param str current_revision: Current all-instances configuration revision. This value is in RFC3339 text format.
42219
42341
  :param bool effective: A bit indicating whether this configuration has been applied to all managed instances in the group.
42220
42342
  """
42343
+ pulumi.set(__self__, "current_revision", current_revision)
42221
42344
  pulumi.set(__self__, "effective", effective)
42222
42345
 
42346
+ @property
42347
+ @pulumi.getter(name="currentRevision")
42348
+ def current_revision(self) -> str:
42349
+ """
42350
+ Current all-instances configuration revision. This value is in RFC3339 text format.
42351
+ """
42352
+ return pulumi.get(self, "current_revision")
42353
+
42223
42354
  @property
42224
42355
  @pulumi.getter
42225
42356
  def effective(self) -> bool:
@@ -42236,7 +42367,7 @@ class GetInstanceGroupManagerStatusStatefulResult(dict):
42236
42367
  per_instance_configs: Sequence['outputs.GetInstanceGroupManagerStatusStatefulPerInstanceConfigResult']):
42237
42368
  """
42238
42369
  :param bool has_stateful_config: A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
42239
- :param Sequence['GetInstanceGroupManagerStatusStatefulPerInstanceConfigArgs'] per_instance_configs: Status of per-instance configs on the instance.
42370
+ :param Sequence['GetInstanceGroupManagerStatusStatefulPerInstanceConfigArgs'] per_instance_configs: Status of per-instance configs on the instances.
42240
42371
  """
42241
42372
  pulumi.set(__self__, "has_stateful_config", has_stateful_config)
42242
42373
  pulumi.set(__self__, "per_instance_configs", per_instance_configs)
@@ -42253,7 +42384,7 @@ class GetInstanceGroupManagerStatusStatefulResult(dict):
42253
42384
  @pulumi.getter(name="perInstanceConfigs")
42254
42385
  def per_instance_configs(self) -> Sequence['outputs.GetInstanceGroupManagerStatusStatefulPerInstanceConfigResult']:
42255
42386
  """
42256
- Status of per-instance configs on the instance.
42387
+ Status of per-instance configs on the instances.
42257
42388
  """
42258
42389
  return pulumi.get(self, "per_instance_configs")
42259
42390
 
@@ -690,6 +690,21 @@ class RegionNetworkEndpointGroup(pulumi.CustomResource):
690
690
  ))
691
691
  ```
692
692
  <!--End PulumiCodeChooser -->
693
+ ### Region Network Endpoint Group Appengine Empty
694
+
695
+ <!--Start PulumiCodeChooser -->
696
+ ```python
697
+ import pulumi
698
+ import pulumi_gcp as gcp
699
+
700
+ # App Engine Example
701
+ appengine_neg = gcp.compute.RegionNetworkEndpointGroup("appengine_neg",
702
+ name="appengine-neg",
703
+ network_endpoint_type="SERVERLESS",
704
+ region="us-central1",
705
+ app_engine=gcp.compute.RegionNetworkEndpointGroupAppEngineArgs())
706
+ ```
707
+ <!--End PulumiCodeChooser -->
693
708
  ### Region Network Endpoint Group Psc
694
709
 
695
710
  <!--Start PulumiCodeChooser -->
@@ -1007,6 +1022,21 @@ class RegionNetworkEndpointGroup(pulumi.CustomResource):
1007
1022
  ))
1008
1023
  ```
1009
1024
  <!--End PulumiCodeChooser -->
1025
+ ### Region Network Endpoint Group Appengine Empty
1026
+
1027
+ <!--Start PulumiCodeChooser -->
1028
+ ```python
1029
+ import pulumi
1030
+ import pulumi_gcp as gcp
1031
+
1032
+ # App Engine Example
1033
+ appengine_neg = gcp.compute.RegionNetworkEndpointGroup("appengine_neg",
1034
+ name="appengine-neg",
1035
+ network_endpoint_type="SERVERLESS",
1036
+ region="us-central1",
1037
+ app_engine=gcp.compute.RegionNetworkEndpointGroupAppEngineArgs())
1038
+ ```
1039
+ <!--End PulumiCodeChooser -->
1010
1040
  ### Region Network Endpoint Group Psc
1011
1041
 
1012
1042
  <!--Start PulumiCodeChooser -->