pulumi-gcp 7.3.0a1702567892__py3-none-any.whl → 7.3.1__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. pulumi_gcp/__init__.py +129 -0
  2. pulumi_gcp/artifactregistry/_inputs.py +88 -0
  3. pulumi_gcp/artifactregistry/outputs.py +148 -0
  4. pulumi_gcp/artifactregistry/repository.py +116 -16
  5. pulumi_gcp/bigquery/_inputs.py +110 -0
  6. pulumi_gcp/bigquery/connection.py +123 -3
  7. pulumi_gcp/bigquery/outputs.py +145 -0
  8. pulumi_gcp/cloudbuild/_inputs.py +241 -1
  9. pulumi_gcp/cloudbuild/outputs.py +353 -2
  10. pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -2
  11. pulumi_gcp/cloudfunctionsv2/outputs.py +6 -2
  12. pulumi_gcp/cloudidentity/_inputs.py +54 -5
  13. pulumi_gcp/cloudidentity/group_membership.py +0 -8
  14. pulumi_gcp/cloudidentity/outputs.py +99 -4
  15. pulumi_gcp/cloudrunv2/_inputs.py +8 -4
  16. pulumi_gcp/cloudrunv2/job.py +44 -0
  17. pulumi_gcp/cloudrunv2/outputs.py +8 -4
  18. pulumi_gcp/cloudrunv2/service.py +42 -0
  19. pulumi_gcp/cloudtasks/queue.py +0 -10
  20. pulumi_gcp/composer/_inputs.py +17 -4
  21. pulumi_gcp/composer/outputs.py +20 -4
  22. pulumi_gcp/compute/_inputs.py +46 -0
  23. pulumi_gcp/compute/get_global_forwarding_rule.py +11 -1
  24. pulumi_gcp/compute/global_forwarding_rule.py +69 -0
  25. pulumi_gcp/compute/outputs.py +75 -0
  26. pulumi_gcp/config/__init__.pyi +6 -0
  27. pulumi_gcp/config/vars.py +12 -0
  28. pulumi_gcp/container/_inputs.py +58 -0
  29. pulumi_gcp/container/node_pool.py +68 -14
  30. pulumi_gcp/container/outputs.py +68 -0
  31. pulumi_gcp/dataform/__init__.py +4 -0
  32. pulumi_gcp/dataform/_inputs.py +80 -0
  33. pulumi_gcp/dataform/get_repository_iam_policy.py +144 -0
  34. pulumi_gcp/dataform/outputs.py +56 -0
  35. pulumi_gcp/dataform/repository_iam_binding.py +325 -0
  36. pulumi_gcp/dataform/repository_iam_member.py +325 -0
  37. pulumi_gcp/dataform/repository_iam_policy.py +254 -0
  38. pulumi_gcp/dataloss/_inputs.py +29 -26
  39. pulumi_gcp/dataloss/outputs.py +28 -25
  40. pulumi_gcp/dataloss/prevention_job_trigger.py +78 -0
  41. pulumi_gcp/datastream/connection_profile.py +82 -4
  42. pulumi_gcp/datastream/stream.py +32 -22
  43. pulumi_gcp/firestore/database.py +146 -28
  44. pulumi_gcp/gkehub/_inputs.py +821 -3
  45. pulumi_gcp/gkehub/feature.py +176 -0
  46. pulumi_gcp/gkehub/feature_membership.py +105 -59
  47. pulumi_gcp/gkehub/fleet.py +70 -2
  48. pulumi_gcp/gkehub/outputs.py +819 -3
  49. pulumi_gcp/gkehub/scope.py +2 -2
  50. pulumi_gcp/iam/_inputs.py +72 -0
  51. pulumi_gcp/iam/outputs.py +79 -0
  52. pulumi_gcp/iam/workforce_pool.py +75 -0
  53. pulumi_gcp/identityplatform/project_default_config.py +4 -0
  54. pulumi_gcp/logging/__init__.py +3 -0
  55. pulumi_gcp/logging/get_folder_settings.py +197 -0
  56. pulumi_gcp/logging/get_organization_settings.py +197 -0
  57. pulumi_gcp/logging/get_project_settings.py +197 -0
  58. pulumi_gcp/migrationcenter/__init__.py +8 -0
  59. pulumi_gcp/migrationcenter/group.py +652 -0
  60. pulumi_gcp/netapp/__init__.py +8 -0
  61. pulumi_gcp/netapp/storage_pool.py +970 -0
  62. pulumi_gcp/projects/iam_custom_role.py +7 -7
  63. pulumi_gcp/provider.py +60 -0
  64. pulumi_gcp/securesourcemanager/__init__.py +14 -0
  65. pulumi_gcp/securesourcemanager/_inputs.py +94 -0
  66. pulumi_gcp/securesourcemanager/get_instance_iam_policy.py +168 -0
  67. pulumi_gcp/securesourcemanager/instance.py +607 -0
  68. pulumi_gcp/securesourcemanager/instance_iam_binding.py +325 -0
  69. pulumi_gcp/securesourcemanager/instance_iam_member.py +325 -0
  70. pulumi_gcp/securesourcemanager/instance_iam_policy.py +254 -0
  71. pulumi_gcp/securesourcemanager/outputs.py +70 -0
  72. pulumi_gcp/securitycenter/__init__.py +1 -0
  73. pulumi_gcp/securitycenter/event_threat_detection_custom_module.py +528 -0
  74. pulumi_gcp/sql/_inputs.py +2 -2
  75. pulumi_gcp/sql/database_instance.py +4 -4
  76. pulumi_gcp/sql/outputs.py +2 -2
  77. pulumi_gcp/storage/_inputs.py +16 -0
  78. pulumi_gcp/storage/outputs.py +21 -0
  79. pulumi_gcp/vertex/__init__.py +4 -0
  80. pulumi_gcp/vertex/_inputs.py +80 -0
  81. pulumi_gcp/vertex/ai_endpoint_iam_binding.py +325 -0
  82. pulumi_gcp/vertex/ai_endpoint_iam_member.py +325 -0
  83. pulumi_gcp/vertex/ai_endpoint_iam_policy.py +254 -0
  84. pulumi_gcp/vertex/get_ai_endpoint_iam_policy.py +140 -0
  85. pulumi_gcp/vertex/outputs.py +56 -0
  86. pulumi_gcp/vmwareengine/__init__.py +5 -0
  87. pulumi_gcp/vmwareengine/_inputs.py +104 -2
  88. pulumi_gcp/vmwareengine/get_network.py +14 -4
  89. pulumi_gcp/vmwareengine/get_network_peering.py +260 -0
  90. pulumi_gcp/vmwareengine/get_network_policy.py +228 -0
  91. pulumi_gcp/vmwareengine/get_nsx_credentials.py +133 -0
  92. pulumi_gcp/vmwareengine/get_private_cloud.py +14 -4
  93. pulumi_gcp/vmwareengine/network.py +41 -7
  94. pulumi_gcp/vmwareengine/network_peering.py +959 -0
  95. pulumi_gcp/vmwareengine/network_policy.py +836 -0
  96. pulumi_gcp/vmwareengine/outputs.py +133 -2
  97. pulumi_gcp/vmwareengine/private_cloud.py +20 -68
  98. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/METADATA +1 -1
  99. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/RECORD +101 -72
  100. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/WHEEL +0 -0
  101. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/top_level.txt +0 -0
@@ -498,6 +498,94 @@ class Feature(pulumi.CustomResource):
498
498
  ),
499
499
  ))
500
500
  ```
501
+ ### Enable Fleet Default Member Config Service Mesh
502
+
503
+ ```python
504
+ import pulumi
505
+ import pulumi_gcp as gcp
506
+
507
+ feature = gcp.gkehub.Feature("feature",
508
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
509
+ mesh=gcp.gkehub.FeatureFleetDefaultMemberConfigMeshArgs(
510
+ management="MANAGEMENT_AUTOMATIC",
511
+ ),
512
+ ),
513
+ location="global")
514
+ ```
515
+ ### Enable Fleet Default Member Config Configmanagement
516
+
517
+ ```python
518
+ import pulumi
519
+ import pulumi_gcp as gcp
520
+
521
+ feature = gcp.gkehub.Feature("feature",
522
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
523
+ configmanagement=gcp.gkehub.FeatureFleetDefaultMemberConfigConfigmanagementArgs(
524
+ config_sync=gcp.gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs(
525
+ git=gcp.gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs(
526
+ sync_repo="https://github.com/hashicorp/terraform",
527
+ ),
528
+ ),
529
+ ),
530
+ ),
531
+ location="global")
532
+ ```
533
+ ### Enable Fleet Default Member Config Policycontroller
534
+
535
+ ```python
536
+ import pulumi
537
+ import pulumi_gcp as gcp
538
+
539
+ feature = gcp.gkehub.Feature("feature",
540
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
541
+ policycontroller=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs(
542
+ policy_controller_hub_config=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs(
543
+ audit_interval_seconds=30,
544
+ exemptable_namespaces=["foo"],
545
+ install_spec="INSTALL_SPEC_ENABLED",
546
+ policy_content=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs(
547
+ bundles=[gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs(
548
+ bundle="policy-essentials-v2022",
549
+ exempted_namespaces=[
550
+ "foo",
551
+ "bar",
552
+ ],
553
+ )],
554
+ template_library=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs(
555
+ installation="ALL",
556
+ ),
557
+ ),
558
+ referential_rules_enabled=True,
559
+ ),
560
+ ),
561
+ ),
562
+ location="global")
563
+ ```
564
+ ### Enable Fleet Default Member Config Policycontroller Set Empty
565
+
566
+ ```python
567
+ import pulumi
568
+ import pulumi_gcp as gcp
569
+
570
+ feature = gcp.gkehub.Feature("feature",
571
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
572
+ policycontroller=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs(
573
+ policy_controller_hub_config=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs(
574
+ constraint_violation_limit=50,
575
+ deployment_configs=[gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs(
576
+ component="admission",
577
+ )],
578
+ install_spec="INSTALL_SPEC_ENABLED",
579
+ log_denies_enabled=True,
580
+ monitoring=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs(),
581
+ mutation_enabled=True,
582
+ policy_content=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs(),
583
+ referential_rules_enabled=True,
584
+ ),
585
+ ),
586
+ ),
587
+ location="global")
588
+ ```
501
589
 
502
590
  ## Import
503
591
 
@@ -658,6 +746,94 @@ class Feature(pulumi.CustomResource):
658
746
  ),
659
747
  ))
660
748
  ```
749
+ ### Enable Fleet Default Member Config Service Mesh
750
+
751
+ ```python
752
+ import pulumi
753
+ import pulumi_gcp as gcp
754
+
755
+ feature = gcp.gkehub.Feature("feature",
756
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
757
+ mesh=gcp.gkehub.FeatureFleetDefaultMemberConfigMeshArgs(
758
+ management="MANAGEMENT_AUTOMATIC",
759
+ ),
760
+ ),
761
+ location="global")
762
+ ```
763
+ ### Enable Fleet Default Member Config Configmanagement
764
+
765
+ ```python
766
+ import pulumi
767
+ import pulumi_gcp as gcp
768
+
769
+ feature = gcp.gkehub.Feature("feature",
770
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
771
+ configmanagement=gcp.gkehub.FeatureFleetDefaultMemberConfigConfigmanagementArgs(
772
+ config_sync=gcp.gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs(
773
+ git=gcp.gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs(
774
+ sync_repo="https://github.com/hashicorp/terraform",
775
+ ),
776
+ ),
777
+ ),
778
+ ),
779
+ location="global")
780
+ ```
781
+ ### Enable Fleet Default Member Config Policycontroller
782
+
783
+ ```python
784
+ import pulumi
785
+ import pulumi_gcp as gcp
786
+
787
+ feature = gcp.gkehub.Feature("feature",
788
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
789
+ policycontroller=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs(
790
+ policy_controller_hub_config=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs(
791
+ audit_interval_seconds=30,
792
+ exemptable_namespaces=["foo"],
793
+ install_spec="INSTALL_SPEC_ENABLED",
794
+ policy_content=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs(
795
+ bundles=[gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs(
796
+ bundle="policy-essentials-v2022",
797
+ exempted_namespaces=[
798
+ "foo",
799
+ "bar",
800
+ ],
801
+ )],
802
+ template_library=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs(
803
+ installation="ALL",
804
+ ),
805
+ ),
806
+ referential_rules_enabled=True,
807
+ ),
808
+ ),
809
+ ),
810
+ location="global")
811
+ ```
812
+ ### Enable Fleet Default Member Config Policycontroller Set Empty
813
+
814
+ ```python
815
+ import pulumi
816
+ import pulumi_gcp as gcp
817
+
818
+ feature = gcp.gkehub.Feature("feature",
819
+ fleet_default_member_config=gcp.gkehub.FeatureFleetDefaultMemberConfigArgs(
820
+ policycontroller=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs(
821
+ policy_controller_hub_config=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs(
822
+ constraint_violation_limit=50,
823
+ deployment_configs=[gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs(
824
+ component="admission",
825
+ )],
826
+ install_spec="INSTALL_SPEC_ENABLED",
827
+ log_denies_enabled=True,
828
+ monitoring=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs(),
829
+ mutation_enabled=True,
830
+ policy_content=gcp.gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs(),
831
+ referential_rules_enabled=True,
832
+ ),
833
+ ),
834
+ ),
835
+ location="global")
836
+ ```
661
837
 
662
838
  ## Import
663
839
 
@@ -29,7 +29,7 @@ class FeatureMembershipArgs:
29
29
  :param pulumi.Input[str] location: The location of the feature
30
30
  :param pulumi.Input[str] membership: The name of the membership
31
31
  :param pulumi.Input['FeatureMembershipConfigmanagementArgs'] configmanagement: Config Management-specific spec. Structure is documented below.
32
- :param pulumi.Input[str] membership_location: The location of the membership
32
+ :param pulumi.Input[str] membership_location: The location of the membership, for example, "us-central1". Default is "global".
33
33
  :param pulumi.Input['FeatureMembershipMeshArgs'] mesh: Service mesh specific spec. Structure is documented below.
34
34
  :param pulumi.Input[str] project: The project of the feature
35
35
  """
@@ -97,7 +97,7 @@ class FeatureMembershipArgs:
97
97
  @pulumi.getter(name="membershipLocation")
98
98
  def membership_location(self) -> Optional[pulumi.Input[str]]:
99
99
  """
100
- The location of the membership
100
+ The location of the membership, for example, "us-central1". Default is "global".
101
101
  """
102
102
  return pulumi.get(self, "membership_location")
103
103
 
@@ -146,7 +146,7 @@ class _FeatureMembershipState:
146
146
  :param pulumi.Input[str] feature: The name of the feature
147
147
  :param pulumi.Input[str] location: The location of the feature
148
148
  :param pulumi.Input[str] membership: The name of the membership
149
- :param pulumi.Input[str] membership_location: The location of the membership
149
+ :param pulumi.Input[str] membership_location: The location of the membership, for example, "us-central1". Default is "global".
150
150
  :param pulumi.Input['FeatureMembershipMeshArgs'] mesh: Service mesh specific spec. Structure is documented below.
151
151
  :param pulumi.Input[str] project: The project of the feature
152
152
  """
@@ -217,7 +217,7 @@ class _FeatureMembershipState:
217
217
  @pulumi.getter(name="membershipLocation")
218
218
  def membership_location(self) -> Optional[pulumi.Input[str]]:
219
219
  """
220
- The location of the membership
220
+ The location of the membership, for example, "us-central1". Default is "global".
221
221
  """
222
222
  return pulumi.get(self, "membership_location")
223
223
 
@@ -275,22 +275,19 @@ class FeatureMembership(pulumi.CustomResource):
275
275
 
276
276
  cluster = gcp.container.Cluster("cluster",
277
277
  location="us-central1-a",
278
- initial_node_count=1,
279
- opts=pulumi.ResourceOptions(provider=google_beta))
278
+ initial_node_count=1)
280
279
  membership = gcp.gkehub.Membership("membership",
281
280
  membership_id="my-membership",
282
281
  endpoint=gcp.gkehub.MembershipEndpointArgs(
283
282
  gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
284
283
  resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
285
284
  ),
286
- ),
287
- opts=pulumi.ResourceOptions(provider=google_beta))
285
+ ))
288
286
  feature = gcp.gkehub.Feature("feature",
289
287
  location="global",
290
288
  labels={
291
289
  "foo": "bar",
292
- },
293
- opts=pulumi.ResourceOptions(provider=google_beta))
290
+ })
294
291
  feature_member = gcp.gkehub.FeatureMembership("featureMember",
295
292
  location="global",
296
293
  feature=feature.name,
@@ -302,8 +299,7 @@ class FeatureMembership(pulumi.CustomResource):
302
299
  sync_repo="https://github.com/hashicorp/terraform",
303
300
  ),
304
301
  ),
305
- ),
306
- opts=pulumi.ResourceOptions(provider=google_beta))
302
+ ))
307
303
  ```
308
304
  ### Config Management With OCI
309
305
 
@@ -313,22 +309,19 @@ class FeatureMembership(pulumi.CustomResource):
313
309
 
314
310
  cluster = gcp.container.Cluster("cluster",
315
311
  location="us-central1-a",
316
- initial_node_count=1,
317
- opts=pulumi.ResourceOptions(provider=google_beta))
312
+ initial_node_count=1)
318
313
  membership = gcp.gkehub.Membership("membership",
319
314
  membership_id="my-membership",
320
315
  endpoint=gcp.gkehub.MembershipEndpointArgs(
321
316
  gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
322
317
  resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
323
318
  ),
324
- ),
325
- opts=pulumi.ResourceOptions(provider=google_beta))
319
+ ))
326
320
  feature = gcp.gkehub.Feature("feature",
327
321
  location="global",
328
322
  labels={
329
323
  "foo": "bar",
330
- },
331
- opts=pulumi.ResourceOptions(provider=google_beta))
324
+ })
332
325
  feature_member = gcp.gkehub.FeatureMembership("featureMember",
333
326
  location="global",
334
327
  feature=feature.name,
@@ -344,8 +337,7 @@ class FeatureMembership(pulumi.CustomResource):
344
337
  gcp_service_account_email="sa@project-id.iam.gserviceaccount.com",
345
338
  ),
346
339
  ),
347
- ),
348
- opts=pulumi.ResourceOptions(provider=google_beta))
340
+ ))
349
341
  ```
350
342
  ### Multi Cluster Service Discovery
351
343
 
@@ -354,11 +346,10 @@ class FeatureMembership(pulumi.CustomResource):
354
346
  import pulumi_gcp as gcp
355
347
 
356
348
  feature = gcp.gkehub.Feature("feature",
357
- location="global",
358
349
  labels={
359
350
  "foo": "bar",
360
351
  },
361
- opts=pulumi.ResourceOptions(provider=google_beta))
352
+ location="global")
362
353
  ```
363
354
  ### Service Mesh
364
355
 
@@ -368,26 +359,58 @@ class FeatureMembership(pulumi.CustomResource):
368
359
 
369
360
  cluster = gcp.container.Cluster("cluster",
370
361
  location="us-central1-a",
371
- initial_node_count=1,
372
- opts=pulumi.ResourceOptions(provider=google_beta))
362
+ initial_node_count=1)
373
363
  membership = gcp.gkehub.Membership("membership",
374
364
  membership_id="my-membership",
375
365
  endpoint=gcp.gkehub.MembershipEndpointArgs(
376
366
  gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
377
367
  resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
378
368
  ),
379
- ),
380
- opts=pulumi.ResourceOptions(provider=google_beta))
381
- feature = gcp.gkehub.Feature("feature", location="global",
382
- opts=pulumi.ResourceOptions(provider=google_beta))
369
+ ))
370
+ feature = gcp.gkehub.Feature("feature", location="global")
383
371
  feature_member = gcp.gkehub.FeatureMembership("featureMember",
384
372
  location="global",
385
373
  feature=feature.name,
386
374
  membership=membership.membership_id,
387
375
  mesh=gcp.gkehub.FeatureMembershipMeshArgs(
388
376
  management="MANAGEMENT_AUTOMATIC",
389
- ),
390
- opts=pulumi.ResourceOptions(provider=google_beta))
377
+ ))
378
+ ```
379
+ ### Config Management With Regional Membership
380
+
381
+ ```python
382
+ import pulumi
383
+ import pulumi_gcp as gcp
384
+
385
+ cluster = gcp.container.Cluster("cluster",
386
+ location="us-central1-a",
387
+ initial_node_count=1)
388
+ membership = gcp.gkehub.Membership("membership",
389
+ membership_id="my-membership",
390
+ location="us-central1",
391
+ endpoint=gcp.gkehub.MembershipEndpointArgs(
392
+ gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
393
+ resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
394
+ ),
395
+ ))
396
+ feature = gcp.gkehub.Feature("feature",
397
+ location="global",
398
+ labels={
399
+ "foo": "bar",
400
+ })
401
+ feature_member = gcp.gkehub.FeatureMembership("featureMember",
402
+ location="global",
403
+ feature=feature.name,
404
+ membership=membership.membership_id,
405
+ membership_location=membership.location,
406
+ configmanagement=gcp.gkehub.FeatureMembershipConfigmanagementArgs(
407
+ version="1.6.2",
408
+ config_sync=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncArgs(
409
+ git=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncGitArgs(
410
+ sync_repo="https://github.com/hashicorp/terraform",
411
+ ),
412
+ ),
413
+ ))
391
414
  ```
392
415
 
393
416
  ## Import
@@ -420,7 +443,7 @@ class FeatureMembership(pulumi.CustomResource):
420
443
  :param pulumi.Input[str] feature: The name of the feature
421
444
  :param pulumi.Input[str] location: The location of the feature
422
445
  :param pulumi.Input[str] membership: The name of the membership
423
- :param pulumi.Input[str] membership_location: The location of the membership
446
+ :param pulumi.Input[str] membership_location: The location of the membership, for example, "us-central1". Default is "global".
424
447
  :param pulumi.Input[pulumi.InputType['FeatureMembershipMeshArgs']] mesh: Service mesh specific spec. Structure is documented below.
425
448
  :param pulumi.Input[str] project: The project of the feature
426
449
  """
@@ -442,22 +465,19 @@ class FeatureMembership(pulumi.CustomResource):
442
465
 
443
466
  cluster = gcp.container.Cluster("cluster",
444
467
  location="us-central1-a",
445
- initial_node_count=1,
446
- opts=pulumi.ResourceOptions(provider=google_beta))
468
+ initial_node_count=1)
447
469
  membership = gcp.gkehub.Membership("membership",
448
470
  membership_id="my-membership",
449
471
  endpoint=gcp.gkehub.MembershipEndpointArgs(
450
472
  gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
451
473
  resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
452
474
  ),
453
- ),
454
- opts=pulumi.ResourceOptions(provider=google_beta))
475
+ ))
455
476
  feature = gcp.gkehub.Feature("feature",
456
477
  location="global",
457
478
  labels={
458
479
  "foo": "bar",
459
- },
460
- opts=pulumi.ResourceOptions(provider=google_beta))
480
+ })
461
481
  feature_member = gcp.gkehub.FeatureMembership("featureMember",
462
482
  location="global",
463
483
  feature=feature.name,
@@ -469,8 +489,7 @@ class FeatureMembership(pulumi.CustomResource):
469
489
  sync_repo="https://github.com/hashicorp/terraform",
470
490
  ),
471
491
  ),
472
- ),
473
- opts=pulumi.ResourceOptions(provider=google_beta))
492
+ ))
474
493
  ```
475
494
  ### Config Management With OCI
476
495
 
@@ -480,22 +499,19 @@ class FeatureMembership(pulumi.CustomResource):
480
499
 
481
500
  cluster = gcp.container.Cluster("cluster",
482
501
  location="us-central1-a",
483
- initial_node_count=1,
484
- opts=pulumi.ResourceOptions(provider=google_beta))
502
+ initial_node_count=1)
485
503
  membership = gcp.gkehub.Membership("membership",
486
504
  membership_id="my-membership",
487
505
  endpoint=gcp.gkehub.MembershipEndpointArgs(
488
506
  gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
489
507
  resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
490
508
  ),
491
- ),
492
- opts=pulumi.ResourceOptions(provider=google_beta))
509
+ ))
493
510
  feature = gcp.gkehub.Feature("feature",
494
511
  location="global",
495
512
  labels={
496
513
  "foo": "bar",
497
- },
498
- opts=pulumi.ResourceOptions(provider=google_beta))
514
+ })
499
515
  feature_member = gcp.gkehub.FeatureMembership("featureMember",
500
516
  location="global",
501
517
  feature=feature.name,
@@ -511,8 +527,7 @@ class FeatureMembership(pulumi.CustomResource):
511
527
  gcp_service_account_email="sa@project-id.iam.gserviceaccount.com",
512
528
  ),
513
529
  ),
514
- ),
515
- opts=pulumi.ResourceOptions(provider=google_beta))
530
+ ))
516
531
  ```
517
532
  ### Multi Cluster Service Discovery
518
533
 
@@ -521,11 +536,10 @@ class FeatureMembership(pulumi.CustomResource):
521
536
  import pulumi_gcp as gcp
522
537
 
523
538
  feature = gcp.gkehub.Feature("feature",
524
- location="global",
525
539
  labels={
526
540
  "foo": "bar",
527
541
  },
528
- opts=pulumi.ResourceOptions(provider=google_beta))
542
+ location="global")
529
543
  ```
530
544
  ### Service Mesh
531
545
 
@@ -535,26 +549,58 @@ class FeatureMembership(pulumi.CustomResource):
535
549
 
536
550
  cluster = gcp.container.Cluster("cluster",
537
551
  location="us-central1-a",
538
- initial_node_count=1,
539
- opts=pulumi.ResourceOptions(provider=google_beta))
552
+ initial_node_count=1)
540
553
  membership = gcp.gkehub.Membership("membership",
541
554
  membership_id="my-membership",
542
555
  endpoint=gcp.gkehub.MembershipEndpointArgs(
543
556
  gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
544
557
  resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
545
558
  ),
546
- ),
547
- opts=pulumi.ResourceOptions(provider=google_beta))
548
- feature = gcp.gkehub.Feature("feature", location="global",
549
- opts=pulumi.ResourceOptions(provider=google_beta))
559
+ ))
560
+ feature = gcp.gkehub.Feature("feature", location="global")
550
561
  feature_member = gcp.gkehub.FeatureMembership("featureMember",
551
562
  location="global",
552
563
  feature=feature.name,
553
564
  membership=membership.membership_id,
554
565
  mesh=gcp.gkehub.FeatureMembershipMeshArgs(
555
566
  management="MANAGEMENT_AUTOMATIC",
556
- ),
557
- opts=pulumi.ResourceOptions(provider=google_beta))
567
+ ))
568
+ ```
569
+ ### Config Management With Regional Membership
570
+
571
+ ```python
572
+ import pulumi
573
+ import pulumi_gcp as gcp
574
+
575
+ cluster = gcp.container.Cluster("cluster",
576
+ location="us-central1-a",
577
+ initial_node_count=1)
578
+ membership = gcp.gkehub.Membership("membership",
579
+ membership_id="my-membership",
580
+ location="us-central1",
581
+ endpoint=gcp.gkehub.MembershipEndpointArgs(
582
+ gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
583
+ resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
584
+ ),
585
+ ))
586
+ feature = gcp.gkehub.Feature("feature",
587
+ location="global",
588
+ labels={
589
+ "foo": "bar",
590
+ })
591
+ feature_member = gcp.gkehub.FeatureMembership("featureMember",
592
+ location="global",
593
+ feature=feature.name,
594
+ membership=membership.membership_id,
595
+ membership_location=membership.location,
596
+ configmanagement=gcp.gkehub.FeatureMembershipConfigmanagementArgs(
597
+ version="1.6.2",
598
+ config_sync=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncArgs(
599
+ git=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncGitArgs(
600
+ sync_repo="https://github.com/hashicorp/terraform",
601
+ ),
602
+ ),
603
+ ))
558
604
  ```
559
605
 
560
606
  ## Import
@@ -653,7 +699,7 @@ class FeatureMembership(pulumi.CustomResource):
653
699
  :param pulumi.Input[str] feature: The name of the feature
654
700
  :param pulumi.Input[str] location: The location of the feature
655
701
  :param pulumi.Input[str] membership: The name of the membership
656
- :param pulumi.Input[str] membership_location: The location of the membership
702
+ :param pulumi.Input[str] membership_location: The location of the membership, for example, "us-central1". Default is "global".
657
703
  :param pulumi.Input[pulumi.InputType['FeatureMembershipMeshArgs']] mesh: Service mesh specific spec. Structure is documented below.
658
704
  :param pulumi.Input[str] project: The project of the feature
659
705
  """
@@ -706,7 +752,7 @@ class FeatureMembership(pulumi.CustomResource):
706
752
  @pulumi.getter(name="membershipLocation")
707
753
  def membership_location(self) -> pulumi.Output[Optional[str]]:
708
754
  """
709
- The location of the membership
755
+ The location of the membership, for example, "us-central1". Default is "global".
710
756
  """
711
757
  return pulumi.get(self, "membership_location")
712
758