pulumi-gcp 8.23.0a1742538920__py3-none-any.whl → 8.24.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 (106) hide show
  1. pulumi_gcp/__init__.py +59 -0
  2. pulumi_gcp/alloydb/_inputs.py +27 -1
  3. pulumi_gcp/alloydb/outputs.py +33 -2
  4. pulumi_gcp/applicationintegration/client.py +18 -24
  5. pulumi_gcp/bigquery/_inputs.py +178 -0
  6. pulumi_gcp/bigquery/outputs.py +127 -0
  7. pulumi_gcp/bigquery/reservation.py +189 -1
  8. pulumi_gcp/bigquery/table.py +61 -0
  9. pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +11 -7
  10. pulumi_gcp/bigtable/table.py +7 -7
  11. pulumi_gcp/chronicle/data_access_label.py +16 -0
  12. pulumi_gcp/clouddeploy/_inputs.py +20 -0
  13. pulumi_gcp/clouddeploy/outputs.py +15 -1
  14. pulumi_gcp/cloudfunctions/function.py +11 -11
  15. pulumi_gcp/cloudfunctionsv2/function.py +24 -24
  16. pulumi_gcp/cloudidentity/get_group_transitive_memberships.py +41 -2
  17. pulumi_gcp/cloudidentity/outputs.py +18 -38
  18. pulumi_gcp/cloudrunv2/service.py +14 -14
  19. pulumi_gcp/compute/__init__.py +1 -0
  20. pulumi_gcp/compute/_inputs.py +616 -18
  21. pulumi_gcp/compute/firewall_policy.py +20 -0
  22. pulumi_gcp/compute/get_images.py +172 -0
  23. pulumi_gcp/compute/get_resource_policy.py +15 -4
  24. pulumi_gcp/compute/image.py +54 -0
  25. pulumi_gcp/compute/interconnect.py +14 -7
  26. pulumi_gcp/compute/outputs.py +710 -18
  27. pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
  28. pulumi_gcp/compute/resource_policy.py +169 -3
  29. pulumi_gcp/compute/router_route_policy.py +16 -0
  30. pulumi_gcp/compute/subnetwork.py +109 -1
  31. pulumi_gcp/compute/target_https_proxy.py +7 -7
  32. pulumi_gcp/config/__init__.pyi +8 -0
  33. pulumi_gcp/config/vars.py +16 -0
  34. pulumi_gcp/container/_inputs.py +265 -4
  35. pulumi_gcp/container/cluster.py +54 -0
  36. pulumi_gcp/container/get_attached_versions.py +2 -2
  37. pulumi_gcp/container/get_cluster.py +12 -1
  38. pulumi_gcp/container/outputs.py +301 -6
  39. pulumi_gcp/dataform/repository.py +49 -0
  40. pulumi_gcp/dataproc/_inputs.py +23 -0
  41. pulumi_gcp/dataproc/get_metastore_service.py +26 -4
  42. pulumi_gcp/dataproc/metastore_federation.py +56 -0
  43. pulumi_gcp/dataproc/metastore_service.py +58 -2
  44. pulumi_gcp/dataproc/outputs.py +27 -0
  45. pulumi_gcp/eventarc/__init__.py +1 -0
  46. pulumi_gcp/eventarc/_inputs.py +1758 -0
  47. pulumi_gcp/eventarc/outputs.py +1337 -0
  48. pulumi_gcp/eventarc/pipeline.py +1596 -0
  49. pulumi_gcp/firebase/__init__.py +1 -0
  50. pulumi_gcp/firebase/_inputs.py +154 -0
  51. pulumi_gcp/firebase/app_hosting_backend.py +1303 -0
  52. pulumi_gcp/firebase/hosting_version.py +2 -2
  53. pulumi_gcp/firebase/outputs.py +127 -0
  54. pulumi_gcp/kms/get_key_rings.py +39 -2
  55. pulumi_gcp/lustre/__init__.py +8 -0
  56. pulumi_gcp/lustre/instance.py +983 -0
  57. pulumi_gcp/managedkafka/__init__.py +2 -0
  58. pulumi_gcp/managedkafka/_inputs.py +263 -0
  59. pulumi_gcp/managedkafka/connect_cluster.py +795 -0
  60. pulumi_gcp/managedkafka/connector.py +695 -0
  61. pulumi_gcp/managedkafka/outputs.py +248 -0
  62. pulumi_gcp/memorystore/_inputs.py +419 -0
  63. pulumi_gcp/memorystore/get_instance.py +23 -1
  64. pulumi_gcp/memorystore/instance.py +144 -14
  65. pulumi_gcp/memorystore/outputs.py +544 -0
  66. pulumi_gcp/monitoring/uptime_check_config.py +2 -2
  67. pulumi_gcp/networkmanagement/_inputs.py +422 -91
  68. pulumi_gcp/networkmanagement/connectivity_test.py +233 -211
  69. pulumi_gcp/networkmanagement/outputs.py +280 -61
  70. pulumi_gcp/networksecurity/_inputs.py +1277 -242
  71. pulumi_gcp/networksecurity/gateway_security_policy.py +0 -7
  72. pulumi_gcp/networksecurity/intercept_deployment_group.py +44 -16
  73. pulumi_gcp/networksecurity/intercept_endpoint_group.py +90 -36
  74. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +53 -8
  75. pulumi_gcp/networksecurity/mirroring_deployment.py +22 -0
  76. pulumi_gcp/networksecurity/mirroring_deployment_group.py +20 -0
  77. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +24 -0
  78. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +28 -0
  79. pulumi_gcp/networksecurity/outputs.py +723 -8
  80. pulumi_gcp/networksecurity/tls_inspection_policy.py +14 -0
  81. pulumi_gcp/networkservices/gateway.py +242 -120
  82. pulumi_gcp/organizations/__init__.py +1 -0
  83. pulumi_gcp/organizations/get_iam_custom_role.py +198 -0
  84. pulumi_gcp/osconfig/__init__.py +1 -0
  85. pulumi_gcp/osconfig/_inputs.py +5413 -0
  86. pulumi_gcp/osconfig/outputs.py +3962 -0
  87. pulumi_gcp/osconfig/v2_policy_orchestrator.py +971 -0
  88. pulumi_gcp/projects/__init__.py +2 -0
  89. pulumi_gcp/projects/get_iam_custom_role.py +198 -0
  90. pulumi_gcp/projects/get_iam_custom_roles.py +164 -0
  91. pulumi_gcp/projects/outputs.py +96 -0
  92. pulumi_gcp/provider.py +80 -0
  93. pulumi_gcp/pulumi-plugin.json +1 -1
  94. pulumi_gcp/servicenetworking/peered_dns_domain.py +4 -0
  95. pulumi_gcp/sql/outputs.py +8 -8
  96. pulumi_gcp/storage/__init__.py +2 -0
  97. pulumi_gcp/storage/_inputs.py +740 -6
  98. pulumi_gcp/storage/control_project_intelligence_config.py +366 -0
  99. pulumi_gcp/storage/get_control_project_intelligence_config.py +130 -0
  100. pulumi_gcp/storage/insights_report_config.py +121 -20
  101. pulumi_gcp/storage/outputs.py +723 -4
  102. pulumi_gcp/workflows/workflow.py +75 -7
  103. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/METADATA +1 -1
  104. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/RECORD +106 -93
  105. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/WHEEL +1 -1
  106. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/top_level.txt +0 -0
@@ -621,7 +621,7 @@ class RegionNetworkEndpointGroup(pulumi.CustomResource):
621
621
  function_neg_function = gcp.cloudfunctions.Function("function_neg",
622
622
  name="function-neg",
623
623
  description="My function",
624
- runtime="nodejs10",
624
+ runtime="nodejs20",
625
625
  available_memory_mb=128,
626
626
  source_archive_bucket=bucket.name,
627
627
  source_archive_object=archive.name,
@@ -975,7 +975,7 @@ class RegionNetworkEndpointGroup(pulumi.CustomResource):
975
975
  function_neg_function = gcp.cloudfunctions.Function("function_neg",
976
976
  name="function-neg",
977
977
  description="My function",
978
- runtime="nodejs10",
978
+ runtime="nodejs20",
979
979
  available_memory_mb=128,
980
980
  source_archive_bucket=bucket.name,
981
981
  source_archive_object=archive.name,
@@ -28,7 +28,8 @@ class ResourcePolicyArgs:
28
28
  name: Optional[pulumi.Input[str]] = None,
29
29
  project: Optional[pulumi.Input[str]] = None,
30
30
  region: Optional[pulumi.Input[str]] = None,
31
- snapshot_schedule_policy: Optional[pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs']] = None):
31
+ snapshot_schedule_policy: Optional[pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs']] = None,
32
+ workload_policy: Optional[pulumi.Input['ResourcePolicyWorkloadPolicyArgs']] = None):
32
33
  """
33
34
  The set of arguments for constructing a ResourcePolicy resource.
34
35
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create the resource.
@@ -53,6 +54,8 @@ class ResourcePolicyArgs:
53
54
  :param pulumi.Input[str] region: Region where resource policy resides.
54
55
  :param pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs'] snapshot_schedule_policy: Policy for creating snapshots of persistent disks.
55
56
  Structure is documented below.
57
+ :param pulumi.Input['ResourcePolicyWorkloadPolicyArgs'] workload_policy: Represents the workload policy.
58
+ Structure is documented below.
56
59
  """
57
60
  if description is not None:
58
61
  pulumi.set(__self__, "description", description)
@@ -70,6 +73,8 @@ class ResourcePolicyArgs:
70
73
  pulumi.set(__self__, "region", region)
71
74
  if snapshot_schedule_policy is not None:
72
75
  pulumi.set(__self__, "snapshot_schedule_policy", snapshot_schedule_policy)
76
+ if workload_policy is not None:
77
+ pulumi.set(__self__, "workload_policy", workload_policy)
73
78
 
74
79
  @property
75
80
  @pulumi.getter
@@ -181,6 +186,19 @@ class ResourcePolicyArgs:
181
186
  def snapshot_schedule_policy(self, value: Optional[pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs']]):
182
187
  pulumi.set(self, "snapshot_schedule_policy", value)
183
188
 
189
+ @property
190
+ @pulumi.getter(name="workloadPolicy")
191
+ def workload_policy(self) -> Optional[pulumi.Input['ResourcePolicyWorkloadPolicyArgs']]:
192
+ """
193
+ Represents the workload policy.
194
+ Structure is documented below.
195
+ """
196
+ return pulumi.get(self, "workload_policy")
197
+
198
+ @workload_policy.setter
199
+ def workload_policy(self, value: Optional[pulumi.Input['ResourcePolicyWorkloadPolicyArgs']]):
200
+ pulumi.set(self, "workload_policy", value)
201
+
184
202
 
185
203
  @pulumi.input_type
186
204
  class _ResourcePolicyState:
@@ -193,7 +211,8 @@ class _ResourcePolicyState:
193
211
  project: Optional[pulumi.Input[str]] = None,
194
212
  region: Optional[pulumi.Input[str]] = None,
195
213
  self_link: Optional[pulumi.Input[str]] = None,
196
- snapshot_schedule_policy: Optional[pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs']] = None):
214
+ snapshot_schedule_policy: Optional[pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs']] = None,
215
+ workload_policy: Optional[pulumi.Input['ResourcePolicyWorkloadPolicyArgs']] = None):
197
216
  """
198
217
  Input properties used for looking up and filtering ResourcePolicy resources.
199
218
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create the resource.
@@ -219,6 +238,8 @@ class _ResourcePolicyState:
219
238
  :param pulumi.Input[str] self_link: The URI of the created resource.
220
239
  :param pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs'] snapshot_schedule_policy: Policy for creating snapshots of persistent disks.
221
240
  Structure is documented below.
241
+ :param pulumi.Input['ResourcePolicyWorkloadPolicyArgs'] workload_policy: Represents the workload policy.
242
+ Structure is documented below.
222
243
  """
223
244
  if description is not None:
224
245
  pulumi.set(__self__, "description", description)
@@ -238,6 +259,8 @@ class _ResourcePolicyState:
238
259
  pulumi.set(__self__, "self_link", self_link)
239
260
  if snapshot_schedule_policy is not None:
240
261
  pulumi.set(__self__, "snapshot_schedule_policy", snapshot_schedule_policy)
262
+ if workload_policy is not None:
263
+ pulumi.set(__self__, "workload_policy", workload_policy)
241
264
 
242
265
  @property
243
266
  @pulumi.getter
@@ -361,6 +384,19 @@ class _ResourcePolicyState:
361
384
  def snapshot_schedule_policy(self, value: Optional[pulumi.Input['ResourcePolicySnapshotSchedulePolicyArgs']]):
362
385
  pulumi.set(self, "snapshot_schedule_policy", value)
363
386
 
387
+ @property
388
+ @pulumi.getter(name="workloadPolicy")
389
+ def workload_policy(self) -> Optional[pulumi.Input['ResourcePolicyWorkloadPolicyArgs']]:
390
+ """
391
+ Represents the workload policy.
392
+ Structure is documented below.
393
+ """
394
+ return pulumi.get(self, "workload_policy")
395
+
396
+ @workload_policy.setter
397
+ def workload_policy(self, value: Optional[pulumi.Input['ResourcePolicyWorkloadPolicyArgs']]):
398
+ pulumi.set(self, "workload_policy", value)
399
+
364
400
 
365
401
  class ResourcePolicy(pulumi.CustomResource):
366
402
  @overload
@@ -375,6 +411,7 @@ class ResourcePolicy(pulumi.CustomResource):
375
411
  project: Optional[pulumi.Input[str]] = None,
376
412
  region: Optional[pulumi.Input[str]] = None,
377
413
  snapshot_schedule_policy: Optional[pulumi.Input[Union['ResourcePolicySnapshotSchedulePolicyArgs', 'ResourcePolicySnapshotSchedulePolicyArgsDict']]] = None,
414
+ workload_policy: Optional[pulumi.Input[Union['ResourcePolicyWorkloadPolicyArgs', 'ResourcePolicyWorkloadPolicyArgsDict']]] = None,
378
415
  __props__=None):
379
416
  """
380
417
  A policy that can be attached to a resource to specify or schedule actions on that resource.
@@ -525,6 +562,62 @@ class ResourcePolicy(pulumi.CustomResource):
525
562
  "enabled": True,
526
563
  })
527
564
  ```
565
+ ### Resource Policy Workload Policy
566
+
567
+ ```python
568
+ import pulumi
569
+ import pulumi_gcp as gcp
570
+
571
+ bar = gcp.compute.ResourcePolicy("bar",
572
+ name="gce-policy",
573
+ region="europe-west1",
574
+ workload_policy={
575
+ "type": "HIGH_AVAILABILITY",
576
+ })
577
+ ```
578
+ ### Resource Policy Workload Policy Accelerator Topology
579
+
580
+ ```python
581
+ import pulumi
582
+ import pulumi_gcp as gcp
583
+
584
+ bar = gcp.compute.ResourcePolicy("bar",
585
+ name="gce-policy",
586
+ region="europe-west1",
587
+ workload_policy={
588
+ "type": "HIGH_THROUGHPUT",
589
+ "accelerator_topology": "SOME NEW TOPOLOGY",
590
+ })
591
+ ```
592
+ ### Resource Policy Workload Policy Max Topology Distance
593
+
594
+ ```python
595
+ import pulumi
596
+ import pulumi_gcp as gcp
597
+
598
+ bar = gcp.compute.ResourcePolicy("bar",
599
+ name="gce-policy",
600
+ region="europe-west1",
601
+ workload_policy={
602
+ "type": "HIGH_THROUGHPUT",
603
+ "max_topology_distance": "BLOCK",
604
+ })
605
+ ```
606
+ ### Resource Policy Placement Policy Gpu Topology
607
+
608
+ ```python
609
+ import pulumi
610
+ import pulumi_gcp as gcp
611
+
612
+ baz = gcp.compute.ResourcePolicy("baz",
613
+ name="gce-policy",
614
+ region="europe-west9",
615
+ group_placement_policy={
616
+ "vm_count": 2,
617
+ "collocation": "COLLOCATED",
618
+ "gpu_topology": "1x72",
619
+ })
620
+ ```
528
621
 
529
622
  ## Import
530
623
 
@@ -580,6 +673,8 @@ class ResourcePolicy(pulumi.CustomResource):
580
673
  :param pulumi.Input[str] region: Region where resource policy resides.
581
674
  :param pulumi.Input[Union['ResourcePolicySnapshotSchedulePolicyArgs', 'ResourcePolicySnapshotSchedulePolicyArgsDict']] snapshot_schedule_policy: Policy for creating snapshots of persistent disks.
582
675
  Structure is documented below.
676
+ :param pulumi.Input[Union['ResourcePolicyWorkloadPolicyArgs', 'ResourcePolicyWorkloadPolicyArgsDict']] workload_policy: Represents the workload policy.
677
+ Structure is documented below.
583
678
  """
584
679
  ...
585
680
  @overload
@@ -736,6 +831,62 @@ class ResourcePolicy(pulumi.CustomResource):
736
831
  "enabled": True,
737
832
  })
738
833
  ```
834
+ ### Resource Policy Workload Policy
835
+
836
+ ```python
837
+ import pulumi
838
+ import pulumi_gcp as gcp
839
+
840
+ bar = gcp.compute.ResourcePolicy("bar",
841
+ name="gce-policy",
842
+ region="europe-west1",
843
+ workload_policy={
844
+ "type": "HIGH_AVAILABILITY",
845
+ })
846
+ ```
847
+ ### Resource Policy Workload Policy Accelerator Topology
848
+
849
+ ```python
850
+ import pulumi
851
+ import pulumi_gcp as gcp
852
+
853
+ bar = gcp.compute.ResourcePolicy("bar",
854
+ name="gce-policy",
855
+ region="europe-west1",
856
+ workload_policy={
857
+ "type": "HIGH_THROUGHPUT",
858
+ "accelerator_topology": "SOME NEW TOPOLOGY",
859
+ })
860
+ ```
861
+ ### Resource Policy Workload Policy Max Topology Distance
862
+
863
+ ```python
864
+ import pulumi
865
+ import pulumi_gcp as gcp
866
+
867
+ bar = gcp.compute.ResourcePolicy("bar",
868
+ name="gce-policy",
869
+ region="europe-west1",
870
+ workload_policy={
871
+ "type": "HIGH_THROUGHPUT",
872
+ "max_topology_distance": "BLOCK",
873
+ })
874
+ ```
875
+ ### Resource Policy Placement Policy Gpu Topology
876
+
877
+ ```python
878
+ import pulumi
879
+ import pulumi_gcp as gcp
880
+
881
+ baz = gcp.compute.ResourcePolicy("baz",
882
+ name="gce-policy",
883
+ region="europe-west9",
884
+ group_placement_policy={
885
+ "vm_count": 2,
886
+ "collocation": "COLLOCATED",
887
+ "gpu_topology": "1x72",
888
+ })
889
+ ```
739
890
 
740
891
  ## Import
741
892
 
@@ -790,6 +941,7 @@ class ResourcePolicy(pulumi.CustomResource):
790
941
  project: Optional[pulumi.Input[str]] = None,
791
942
  region: Optional[pulumi.Input[str]] = None,
792
943
  snapshot_schedule_policy: Optional[pulumi.Input[Union['ResourcePolicySnapshotSchedulePolicyArgs', 'ResourcePolicySnapshotSchedulePolicyArgsDict']]] = None,
944
+ workload_policy: Optional[pulumi.Input[Union['ResourcePolicyWorkloadPolicyArgs', 'ResourcePolicyWorkloadPolicyArgsDict']]] = None,
793
945
  __props__=None):
794
946
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
795
947
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -807,6 +959,7 @@ class ResourcePolicy(pulumi.CustomResource):
807
959
  __props__.__dict__["project"] = project
808
960
  __props__.__dict__["region"] = region
809
961
  __props__.__dict__["snapshot_schedule_policy"] = snapshot_schedule_policy
962
+ __props__.__dict__["workload_policy"] = workload_policy
810
963
  __props__.__dict__["self_link"] = None
811
964
  super(ResourcePolicy, __self__).__init__(
812
965
  'gcp:compute/resourcePolicy:ResourcePolicy',
@@ -826,7 +979,8 @@ class ResourcePolicy(pulumi.CustomResource):
826
979
  project: Optional[pulumi.Input[str]] = None,
827
980
  region: Optional[pulumi.Input[str]] = None,
828
981
  self_link: Optional[pulumi.Input[str]] = None,
829
- snapshot_schedule_policy: Optional[pulumi.Input[Union['ResourcePolicySnapshotSchedulePolicyArgs', 'ResourcePolicySnapshotSchedulePolicyArgsDict']]] = None) -> 'ResourcePolicy':
982
+ snapshot_schedule_policy: Optional[pulumi.Input[Union['ResourcePolicySnapshotSchedulePolicyArgs', 'ResourcePolicySnapshotSchedulePolicyArgsDict']]] = None,
983
+ workload_policy: Optional[pulumi.Input[Union['ResourcePolicyWorkloadPolicyArgs', 'ResourcePolicyWorkloadPolicyArgsDict']]] = None) -> 'ResourcePolicy':
830
984
  """
831
985
  Get an existing ResourcePolicy resource's state with the given name, id, and optional extra
832
986
  properties used to qualify the lookup.
@@ -857,6 +1011,8 @@ class ResourcePolicy(pulumi.CustomResource):
857
1011
  :param pulumi.Input[str] self_link: The URI of the created resource.
858
1012
  :param pulumi.Input[Union['ResourcePolicySnapshotSchedulePolicyArgs', 'ResourcePolicySnapshotSchedulePolicyArgsDict']] snapshot_schedule_policy: Policy for creating snapshots of persistent disks.
859
1013
  Structure is documented below.
1014
+ :param pulumi.Input[Union['ResourcePolicyWorkloadPolicyArgs', 'ResourcePolicyWorkloadPolicyArgsDict']] workload_policy: Represents the workload policy.
1015
+ Structure is documented below.
860
1016
  """
861
1017
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
862
1018
 
@@ -871,6 +1027,7 @@ class ResourcePolicy(pulumi.CustomResource):
871
1027
  __props__.__dict__["region"] = region
872
1028
  __props__.__dict__["self_link"] = self_link
873
1029
  __props__.__dict__["snapshot_schedule_policy"] = snapshot_schedule_policy
1030
+ __props__.__dict__["workload_policy"] = workload_policy
874
1031
  return ResourcePolicy(resource_name, opts=opts, __props__=__props__)
875
1032
 
876
1033
  @property
@@ -959,3 +1116,12 @@ class ResourcePolicy(pulumi.CustomResource):
959
1116
  """
960
1117
  return pulumi.get(self, "snapshot_schedule_policy")
961
1118
 
1119
+ @property
1120
+ @pulumi.getter(name="workloadPolicy")
1121
+ def workload_policy(self) -> pulumi.Output[Optional['outputs.ResourcePolicyWorkloadPolicy']]:
1122
+ """
1123
+ Represents the workload policy.
1124
+ Structure is documented below.
1125
+ """
1126
+ return pulumi.get(self, "workload_policy")
1127
+
@@ -255,6 +255,14 @@ class RouterRoutePolicy(pulumi.CustomResource):
255
255
  type: Optional[pulumi.Input[str]] = None,
256
256
  __props__=None):
257
257
  """
258
+ A route policy created in a router
259
+
260
+ To get more information about RouterRoutePolicy, see:
261
+
262
+ * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/routers)
263
+ * How-to Guides
264
+ * [Google Cloud Router](https://cloud.google.com/router/docs/)
265
+
258
266
  ## Example Usage
259
267
 
260
268
  ### Router Route Policy Export
@@ -371,6 +379,14 @@ class RouterRoutePolicy(pulumi.CustomResource):
371
379
  args: RouterRoutePolicyArgs,
372
380
  opts: Optional[pulumi.ResourceOptions] = None):
373
381
  """
382
+ A route policy created in a router
383
+
384
+ To get more information about RouterRoutePolicy, see:
385
+
386
+ * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/routers)
387
+ * How-to Guides
388
+ * [Google Cloud Router](https://cloud.google.com/router/docs/)
389
+
374
390
  ## Example Usage
375
391
 
376
392
  ### Router Route Policy Export
@@ -24,6 +24,7 @@ class SubnetworkArgs:
24
24
  network: pulumi.Input[str],
25
25
  allow_subnet_cidr_routes_overlap: Optional[pulumi.Input[bool]] = None,
26
26
  description: Optional[pulumi.Input[str]] = None,
27
+ enable_flow_logs: Optional[pulumi.Input[bool]] = None,
27
28
  external_ipv6_prefix: Optional[pulumi.Input[str]] = None,
28
29
  ip_cidr_range: Optional[pulumi.Input[str]] = None,
29
30
  ip_collection: Optional[pulumi.Input[str]] = None,
@@ -54,6 +55,10 @@ class SubnetworkArgs:
54
55
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when
55
56
  you create the resource. This field can be set only at resource
56
57
  creation time.
58
+ :param pulumi.Input[bool] enable_flow_logs: Whether to enable flow logging for this subnetwork. If this field is not explicitly set,
59
+ it will not appear in get listings. If not set the default behavior is determined by the
60
+ org policy, if there is no org policy specified, then it will default to disabled.
61
+ This field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
57
62
  :param pulumi.Input[str] external_ipv6_prefix: The range of external IPv6 addresses that are owned by this subnetwork.
58
63
  :param pulumi.Input[str] ip_cidr_range: The range of internal addresses that are owned by this subnetwork.
59
64
  Provide this property when you create the subnetwork. For example,
@@ -127,6 +132,8 @@ class SubnetworkArgs:
127
132
  pulumi.set(__self__, "allow_subnet_cidr_routes_overlap", allow_subnet_cidr_routes_overlap)
128
133
  if description is not None:
129
134
  pulumi.set(__self__, "description", description)
135
+ if enable_flow_logs is not None:
136
+ pulumi.set(__self__, "enable_flow_logs", enable_flow_logs)
130
137
  if external_ipv6_prefix is not None:
131
138
  pulumi.set(__self__, "external_ipv6_prefix", external_ipv6_prefix)
132
139
  if ip_cidr_range is not None:
@@ -205,6 +212,21 @@ class SubnetworkArgs:
205
212
  def description(self, value: Optional[pulumi.Input[str]]):
206
213
  pulumi.set(self, "description", value)
207
214
 
215
+ @property
216
+ @pulumi.getter(name="enableFlowLogs")
217
+ def enable_flow_logs(self) -> Optional[pulumi.Input[bool]]:
218
+ """
219
+ Whether to enable flow logging for this subnetwork. If this field is not explicitly set,
220
+ it will not appear in get listings. If not set the default behavior is determined by the
221
+ org policy, if there is no org policy specified, then it will default to disabled.
222
+ This field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
223
+ """
224
+ return pulumi.get(self, "enable_flow_logs")
225
+
226
+ @enable_flow_logs.setter
227
+ def enable_flow_logs(self, value: Optional[pulumi.Input[bool]]):
228
+ pulumi.set(self, "enable_flow_logs", value)
229
+
208
230
  @property
209
231
  @pulumi.getter(name="externalIpv6Prefix")
210
232
  def external_ipv6_prefix(self) -> Optional[pulumi.Input[str]]:
@@ -455,6 +477,7 @@ class _SubnetworkState:
455
477
  allow_subnet_cidr_routes_overlap: Optional[pulumi.Input[bool]] = None,
456
478
  creation_timestamp: Optional[pulumi.Input[str]] = None,
457
479
  description: Optional[pulumi.Input[str]] = None,
480
+ enable_flow_logs: Optional[pulumi.Input[bool]] = None,
458
481
  external_ipv6_prefix: Optional[pulumi.Input[str]] = None,
459
482
  fingerprint: Optional[pulumi.Input[str]] = None,
460
483
  gateway_address: Optional[pulumi.Input[str]] = None,
@@ -478,6 +501,7 @@ class _SubnetworkState:
478
501
  self_link: Optional[pulumi.Input[str]] = None,
479
502
  send_secondary_ip_range_if_empty: Optional[pulumi.Input[bool]] = None,
480
503
  stack_type: Optional[pulumi.Input[str]] = None,
504
+ state: Optional[pulumi.Input[str]] = None,
481
505
  subnetwork_id: Optional[pulumi.Input[int]] = None):
482
506
  """
483
507
  Input properties used for looking up and filtering Subnetwork resources.
@@ -489,6 +513,10 @@ class _SubnetworkState:
489
513
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when
490
514
  you create the resource. This field can be set only at resource
491
515
  creation time.
516
+ :param pulumi.Input[bool] enable_flow_logs: Whether to enable flow logging for this subnetwork. If this field is not explicitly set,
517
+ it will not appear in get listings. If not set the default behavior is determined by the
518
+ org policy, if there is no org policy specified, then it will default to disabled.
519
+ This field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
492
520
  :param pulumi.Input[str] external_ipv6_prefix: The range of external IPv6 addresses that are owned by this subnetwork.
493
521
  :param pulumi.Input[str] fingerprint: Fingerprint of this resource. This field is used internally during updates of this resource.
494
522
  :param pulumi.Input[str] gateway_address: The gateway address for default routes to reach destination addresses
@@ -572,6 +600,10 @@ class _SubnetworkState:
572
600
  :param pulumi.Input[str] stack_type: The stack type for this subnet to identify whether the IPv6 feature is enabled or not.
573
601
  If not specified IPV4_ONLY will be used.
574
602
  Possible values are: `IPV4_ONLY`, `IPV4_IPV6`, `IPV6_ONLY`.
603
+ :param pulumi.Input[str] state: 'The state of the subnetwork, which can be one of the following values:
604
+ READY: Subnetwork is created and ready to use DRAINING: only applicable to subnetworks that have the purpose
605
+ set to INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load balancer are being drained.
606
+ A subnetwork that is draining cannot be used or modified until it reaches a status of READY'
575
607
  :param pulumi.Input[int] subnetwork_id: The unique identifier number for the resource. This identifier is defined by the server.
576
608
  """
577
609
  if allow_subnet_cidr_routes_overlap is not None:
@@ -580,6 +612,8 @@ class _SubnetworkState:
580
612
  pulumi.set(__self__, "creation_timestamp", creation_timestamp)
581
613
  if description is not None:
582
614
  pulumi.set(__self__, "description", description)
615
+ if enable_flow_logs is not None:
616
+ pulumi.set(__self__, "enable_flow_logs", enable_flow_logs)
583
617
  if external_ipv6_prefix is not None:
584
618
  pulumi.set(__self__, "external_ipv6_prefix", external_ipv6_prefix)
585
619
  if fingerprint is not None:
@@ -629,6 +663,8 @@ class _SubnetworkState:
629
663
  pulumi.set(__self__, "send_secondary_ip_range_if_empty", send_secondary_ip_range_if_empty)
630
664
  if stack_type is not None:
631
665
  pulumi.set(__self__, "stack_type", stack_type)
666
+ if state is not None:
667
+ pulumi.set(__self__, "state", state)
632
668
  if subnetwork_id is not None:
633
669
  pulumi.set(__self__, "subnetwork_id", subnetwork_id)
634
670
 
@@ -673,6 +709,21 @@ class _SubnetworkState:
673
709
  def description(self, value: Optional[pulumi.Input[str]]):
674
710
  pulumi.set(self, "description", value)
675
711
 
712
+ @property
713
+ @pulumi.getter(name="enableFlowLogs")
714
+ def enable_flow_logs(self) -> Optional[pulumi.Input[bool]]:
715
+ """
716
+ Whether to enable flow logging for this subnetwork. If this field is not explicitly set,
717
+ it will not appear in get listings. If not set the default behavior is determined by the
718
+ org policy, if there is no org policy specified, then it will default to disabled.
719
+ This field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
720
+ """
721
+ return pulumi.get(self, "enable_flow_logs")
722
+
723
+ @enable_flow_logs.setter
724
+ def enable_flow_logs(self, value: Optional[pulumi.Input[bool]]):
725
+ pulumi.set(self, "enable_flow_logs", value)
726
+
676
727
  @property
677
728
  @pulumi.getter(name="externalIpv6Prefix")
678
729
  def external_ipv6_prefix(self) -> Optional[pulumi.Input[str]]:
@@ -1010,6 +1061,21 @@ class _SubnetworkState:
1010
1061
  def stack_type(self, value: Optional[pulumi.Input[str]]):
1011
1062
  pulumi.set(self, "stack_type", value)
1012
1063
 
1064
+ @property
1065
+ @pulumi.getter
1066
+ def state(self) -> Optional[pulumi.Input[str]]:
1067
+ """
1068
+ 'The state of the subnetwork, which can be one of the following values:
1069
+ READY: Subnetwork is created and ready to use DRAINING: only applicable to subnetworks that have the purpose
1070
+ set to INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load balancer are being drained.
1071
+ A subnetwork that is draining cannot be used or modified until it reaches a status of READY'
1072
+ """
1073
+ return pulumi.get(self, "state")
1074
+
1075
+ @state.setter
1076
+ def state(self, value: Optional[pulumi.Input[str]]):
1077
+ pulumi.set(self, "state", value)
1078
+
1013
1079
  @property
1014
1080
  @pulumi.getter(name="subnetworkId")
1015
1081
  def subnetwork_id(self) -> Optional[pulumi.Input[int]]:
@@ -1030,6 +1096,7 @@ class Subnetwork(pulumi.CustomResource):
1030
1096
  opts: Optional[pulumi.ResourceOptions] = None,
1031
1097
  allow_subnet_cidr_routes_overlap: Optional[pulumi.Input[bool]] = None,
1032
1098
  description: Optional[pulumi.Input[str]] = None,
1099
+ enable_flow_logs: Optional[pulumi.Input[bool]] = None,
1033
1100
  external_ipv6_prefix: Optional[pulumi.Input[str]] = None,
1034
1101
  ip_cidr_range: Optional[pulumi.Input[str]] = None,
1035
1102
  ip_collection: Optional[pulumi.Input[str]] = None,
@@ -1299,6 +1366,10 @@ class Subnetwork(pulumi.CustomResource):
1299
1366
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when
1300
1367
  you create the resource. This field can be set only at resource
1301
1368
  creation time.
1369
+ :param pulumi.Input[bool] enable_flow_logs: Whether to enable flow logging for this subnetwork. If this field is not explicitly set,
1370
+ it will not appear in get listings. If not set the default behavior is determined by the
1371
+ org policy, if there is no org policy specified, then it will default to disabled.
1372
+ This field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
1302
1373
  :param pulumi.Input[str] external_ipv6_prefix: The range of external IPv6 addresses that are owned by this subnetwork.
1303
1374
  :param pulumi.Input[str] ip_cidr_range: The range of internal addresses that are owned by this subnetwork.
1304
1375
  Provide this property when you create the subnetwork. For example,
@@ -1637,6 +1708,7 @@ class Subnetwork(pulumi.CustomResource):
1637
1708
  opts: Optional[pulumi.ResourceOptions] = None,
1638
1709
  allow_subnet_cidr_routes_overlap: Optional[pulumi.Input[bool]] = None,
1639
1710
  description: Optional[pulumi.Input[str]] = None,
1711
+ enable_flow_logs: Optional[pulumi.Input[bool]] = None,
1640
1712
  external_ipv6_prefix: Optional[pulumi.Input[str]] = None,
1641
1713
  ip_cidr_range: Optional[pulumi.Input[str]] = None,
1642
1714
  ip_collection: Optional[pulumi.Input[str]] = None,
@@ -1665,6 +1737,7 @@ class Subnetwork(pulumi.CustomResource):
1665
1737
 
1666
1738
  __props__.__dict__["allow_subnet_cidr_routes_overlap"] = allow_subnet_cidr_routes_overlap
1667
1739
  __props__.__dict__["description"] = description
1740
+ __props__.__dict__["enable_flow_logs"] = enable_flow_logs
1668
1741
  __props__.__dict__["external_ipv6_prefix"] = external_ipv6_prefix
1669
1742
  __props__.__dict__["ip_cidr_range"] = ip_cidr_range
1670
1743
  __props__.__dict__["ip_collection"] = ip_collection
@@ -1691,6 +1764,7 @@ class Subnetwork(pulumi.CustomResource):
1691
1764
  __props__.__dict__["ipv6_cidr_range"] = None
1692
1765
  __props__.__dict__["ipv6_gce_endpoint"] = None
1693
1766
  __props__.__dict__["self_link"] = None
1767
+ __props__.__dict__["state"] = None
1694
1768
  __props__.__dict__["subnetwork_id"] = None
1695
1769
  super(Subnetwork, __self__).__init__(
1696
1770
  'gcp:compute/subnetwork:Subnetwork',
@@ -1705,6 +1779,7 @@ class Subnetwork(pulumi.CustomResource):
1705
1779
  allow_subnet_cidr_routes_overlap: Optional[pulumi.Input[bool]] = None,
1706
1780
  creation_timestamp: Optional[pulumi.Input[str]] = None,
1707
1781
  description: Optional[pulumi.Input[str]] = None,
1782
+ enable_flow_logs: Optional[pulumi.Input[bool]] = None,
1708
1783
  external_ipv6_prefix: Optional[pulumi.Input[str]] = None,
1709
1784
  fingerprint: Optional[pulumi.Input[str]] = None,
1710
1785
  gateway_address: Optional[pulumi.Input[str]] = None,
@@ -1728,6 +1803,7 @@ class Subnetwork(pulumi.CustomResource):
1728
1803
  self_link: Optional[pulumi.Input[str]] = None,
1729
1804
  send_secondary_ip_range_if_empty: Optional[pulumi.Input[bool]] = None,
1730
1805
  stack_type: Optional[pulumi.Input[str]] = None,
1806
+ state: Optional[pulumi.Input[str]] = None,
1731
1807
  subnetwork_id: Optional[pulumi.Input[int]] = None) -> 'Subnetwork':
1732
1808
  """
1733
1809
  Get an existing Subnetwork resource's state with the given name, id, and optional extra
@@ -1744,6 +1820,10 @@ class Subnetwork(pulumi.CustomResource):
1744
1820
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when
1745
1821
  you create the resource. This field can be set only at resource
1746
1822
  creation time.
1823
+ :param pulumi.Input[bool] enable_flow_logs: Whether to enable flow logging for this subnetwork. If this field is not explicitly set,
1824
+ it will not appear in get listings. If not set the default behavior is determined by the
1825
+ org policy, if there is no org policy specified, then it will default to disabled.
1826
+ This field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
1747
1827
  :param pulumi.Input[str] external_ipv6_prefix: The range of external IPv6 addresses that are owned by this subnetwork.
1748
1828
  :param pulumi.Input[str] fingerprint: Fingerprint of this resource. This field is used internally during updates of this resource.
1749
1829
  :param pulumi.Input[str] gateway_address: The gateway address for default routes to reach destination addresses
@@ -1827,6 +1907,10 @@ class Subnetwork(pulumi.CustomResource):
1827
1907
  :param pulumi.Input[str] stack_type: The stack type for this subnet to identify whether the IPv6 feature is enabled or not.
1828
1908
  If not specified IPV4_ONLY will be used.
1829
1909
  Possible values are: `IPV4_ONLY`, `IPV4_IPV6`, `IPV6_ONLY`.
1910
+ :param pulumi.Input[str] state: 'The state of the subnetwork, which can be one of the following values:
1911
+ READY: Subnetwork is created and ready to use DRAINING: only applicable to subnetworks that have the purpose
1912
+ set to INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load balancer are being drained.
1913
+ A subnetwork that is draining cannot be used or modified until it reaches a status of READY'
1830
1914
  :param pulumi.Input[int] subnetwork_id: The unique identifier number for the resource. This identifier is defined by the server.
1831
1915
  """
1832
1916
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -1836,6 +1920,7 @@ class Subnetwork(pulumi.CustomResource):
1836
1920
  __props__.__dict__["allow_subnet_cidr_routes_overlap"] = allow_subnet_cidr_routes_overlap
1837
1921
  __props__.__dict__["creation_timestamp"] = creation_timestamp
1838
1922
  __props__.__dict__["description"] = description
1923
+ __props__.__dict__["enable_flow_logs"] = enable_flow_logs
1839
1924
  __props__.__dict__["external_ipv6_prefix"] = external_ipv6_prefix
1840
1925
  __props__.__dict__["fingerprint"] = fingerprint
1841
1926
  __props__.__dict__["gateway_address"] = gateway_address
@@ -1859,6 +1944,7 @@ class Subnetwork(pulumi.CustomResource):
1859
1944
  __props__.__dict__["self_link"] = self_link
1860
1945
  __props__.__dict__["send_secondary_ip_range_if_empty"] = send_secondary_ip_range_if_empty
1861
1946
  __props__.__dict__["stack_type"] = stack_type
1947
+ __props__.__dict__["state"] = state
1862
1948
  __props__.__dict__["subnetwork_id"] = subnetwork_id
1863
1949
  return Subnetwork(resource_name, opts=opts, __props__=__props__)
1864
1950
 
@@ -1891,6 +1977,17 @@ class Subnetwork(pulumi.CustomResource):
1891
1977
  """
1892
1978
  return pulumi.get(self, "description")
1893
1979
 
1980
+ @property
1981
+ @pulumi.getter(name="enableFlowLogs")
1982
+ def enable_flow_logs(self) -> pulumi.Output[bool]:
1983
+ """
1984
+ Whether to enable flow logging for this subnetwork. If this field is not explicitly set,
1985
+ it will not appear in get listings. If not set the default behavior is determined by the
1986
+ org policy, if there is no org policy specified, then it will default to disabled.
1987
+ This field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
1988
+ """
1989
+ return pulumi.get(self, "enable_flow_logs")
1990
+
1894
1991
  @property
1895
1992
  @pulumi.getter(name="externalIpv6Prefix")
1896
1993
  def external_ipv6_prefix(self) -> pulumi.Output[str]:
@@ -1986,7 +2083,7 @@ class Subnetwork(pulumi.CustomResource):
1986
2083
 
1987
2084
  @property
1988
2085
  @pulumi.getter(name="logConfig")
1989
- def log_config(self) -> pulumi.Output[Optional['outputs.SubnetworkLogConfig']]:
2086
+ def log_config(self) -> pulumi.Output['outputs.SubnetworkLogConfig']:
1990
2087
  """
1991
2088
  This field denotes the VPC flow logging options for this subnetwork. If
1992
2089
  logging is enabled, logs are exported to Cloud Logging. Flow logging
@@ -2136,6 +2233,17 @@ class Subnetwork(pulumi.CustomResource):
2136
2233
  """
2137
2234
  return pulumi.get(self, "stack_type")
2138
2235
 
2236
+ @property
2237
+ @pulumi.getter
2238
+ def state(self) -> pulumi.Output[str]:
2239
+ """
2240
+ 'The state of the subnetwork, which can be one of the following values:
2241
+ READY: Subnetwork is created and ready to use DRAINING: only applicable to subnetworks that have the purpose
2242
+ set to INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load balancer are being drained.
2243
+ A subnetwork that is draining cannot be used or modified until it reaches a status of READY'
2244
+ """
2245
+ return pulumi.get(self, "state")
2246
+
2139
2247
  @property
2140
2248
  @pulumi.getter(name="subnetworkId")
2141
2249
  def subnetwork_id(self) -> pulumi.Output[int]: