pulumi-gcp 8.22.0a1741790977__py3-none-any.whl → 8.23.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 (124) hide show
  1. pulumi_gcp/__init__.py +64 -0
  2. pulumi_gcp/alloydb/_inputs.py +93 -1
  3. pulumi_gcp/alloydb/outputs.py +128 -2
  4. pulumi_gcp/applicationintegration/client.py +18 -24
  5. pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
  6. pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
  7. pulumi_gcp/bigquery/_inputs.py +20 -0
  8. pulumi_gcp/bigquery/outputs.py +12 -0
  9. pulumi_gcp/bigquery/table.py +61 -0
  10. pulumi_gcp/bigtable/table.py +7 -7
  11. pulumi_gcp/certificatemanager/certificate.py +53 -7
  12. pulumi_gcp/certificatemanager/outputs.py +8 -2
  13. pulumi_gcp/clouddeploy/_inputs.py +20 -0
  14. pulumi_gcp/clouddeploy/outputs.py +15 -1
  15. pulumi_gcp/cloudfunctions/function.py +11 -11
  16. pulumi_gcp/cloudfunctionsv2/function.py +24 -24
  17. pulumi_gcp/cloudidentity/get_group_transitive_memberships.py +41 -2
  18. pulumi_gcp/cloudidentity/outputs.py +18 -38
  19. pulumi_gcp/compute/__init__.py +1 -0
  20. pulumi_gcp/compute/_inputs.py +600 -17
  21. pulumi_gcp/compute/backend_service.py +195 -7
  22. pulumi_gcp/compute/disk.py +108 -0
  23. pulumi_gcp/compute/firewall_policy.py +20 -0
  24. pulumi_gcp/compute/firewall_policy_association.py +28 -2
  25. pulumi_gcp/compute/get_backend_service.py +12 -1
  26. pulumi_gcp/compute/get_disk.py +23 -1
  27. pulumi_gcp/compute/get_region_disk.py +23 -1
  28. pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
  29. pulumi_gcp/compute/outputs.py +623 -23
  30. pulumi_gcp/compute/region_backend_service.py +193 -7
  31. pulumi_gcp/compute/region_disk.py +114 -0
  32. pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
  33. pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
  34. pulumi_gcp/compute/subnetwork.py +256 -1
  35. pulumi_gcp/compute/target_https_proxy.py +7 -7
  36. pulumi_gcp/config/__init__.pyi +2 -0
  37. pulumi_gcp/config/vars.py +4 -0
  38. pulumi_gcp/container/_inputs.py +6 -6
  39. pulumi_gcp/container/get_attached_versions.py +2 -2
  40. pulumi_gcp/container/outputs.py +8 -8
  41. pulumi_gcp/dataform/repository.py +49 -0
  42. pulumi_gcp/dataproc/get_metastore_service.py +26 -4
  43. pulumi_gcp/dataproc/metastore_federation.py +56 -0
  44. pulumi_gcp/dataproc/metastore_service.py +58 -2
  45. pulumi_gcp/datastream/_inputs.py +273 -0
  46. pulumi_gcp/datastream/connection_profile.py +54 -2
  47. pulumi_gcp/datastream/outputs.py +224 -0
  48. pulumi_gcp/eventarc/__init__.py +2 -0
  49. pulumi_gcp/eventarc/_inputs.py +1798 -0
  50. pulumi_gcp/eventarc/channel.py +85 -93
  51. pulumi_gcp/eventarc/google_api_source.py +997 -0
  52. pulumi_gcp/eventarc/outputs.py +1378 -0
  53. pulumi_gcp/eventarc/pipeline.py +1596 -0
  54. pulumi_gcp/firebase/__init__.py +1 -0
  55. pulumi_gcp/firebase/_inputs.py +154 -0
  56. pulumi_gcp/firebase/app_hosting_backend.py +1303 -0
  57. pulumi_gcp/firebase/data_connect_service.py +40 -2
  58. pulumi_gcp/firebase/hosting_version.py +2 -2
  59. pulumi_gcp/firebase/outputs.py +127 -0
  60. pulumi_gcp/iam/__init__.py +2 -0
  61. pulumi_gcp/iam/_inputs.py +51 -18
  62. pulumi_gcp/iam/folders_policy_binding.py +10 -26
  63. pulumi_gcp/iam/oauth_client.py +979 -0
  64. pulumi_gcp/iam/oauth_client_credential.py +641 -0
  65. pulumi_gcp/iam/organizations_policy_binding.py +8 -24
  66. pulumi_gcp/iam/outputs.py +34 -12
  67. pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
  68. pulumi_gcp/iam/projects_policy_binding.py +8 -24
  69. pulumi_gcp/kms/crypto_key_version.py +14 -7
  70. pulumi_gcp/kms/get_key_rings.py +39 -2
  71. pulumi_gcp/managedkafka/__init__.py +2 -0
  72. pulumi_gcp/managedkafka/_inputs.py +263 -0
  73. pulumi_gcp/managedkafka/connect_cluster.py +795 -0
  74. pulumi_gcp/managedkafka/connector.py +695 -0
  75. pulumi_gcp/managedkafka/outputs.py +248 -0
  76. pulumi_gcp/memorystore/instance.py +7 -7
  77. pulumi_gcp/monitoring/_inputs.py +15 -18
  78. pulumi_gcp/monitoring/alert_policy.py +46 -0
  79. pulumi_gcp/monitoring/outputs.py +10 -12
  80. pulumi_gcp/monitoring/uptime_check_config.py +2 -2
  81. pulumi_gcp/networksecurity/__init__.py +1 -0
  82. pulumi_gcp/networksecurity/_inputs.py +673 -18
  83. pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
  84. pulumi_gcp/networksecurity/gateway_security_policy.py +0 -7
  85. pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
  86. pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
  87. pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
  88. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
  89. pulumi_gcp/networksecurity/mirroring_deployment.py +200 -94
  90. pulumi_gcp/networksecurity/mirroring_deployment_group.py +181 -77
  91. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +185 -80
  92. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +165 -105
  93. pulumi_gcp/networksecurity/outputs.py +495 -12
  94. pulumi_gcp/networksecurity/tls_inspection_policy.py +14 -0
  95. pulumi_gcp/networkservices/endpoint_policy.py +12 -0
  96. pulumi_gcp/networkservices/gateway.py +242 -120
  97. pulumi_gcp/networkservices/grpc_route.py +12 -0
  98. pulumi_gcp/networkservices/http_route.py +16 -0
  99. pulumi_gcp/networkservices/mesh.py +16 -0
  100. pulumi_gcp/networkservices/service_binding.py +14 -0
  101. pulumi_gcp/networkservices/tcp_route.py +16 -0
  102. pulumi_gcp/networkservices/tls_route.py +12 -0
  103. pulumi_gcp/projects/__init__.py +2 -0
  104. pulumi_gcp/projects/get_iam_custom_role.py +198 -0
  105. pulumi_gcp/projects/get_iam_custom_roles.py +164 -0
  106. pulumi_gcp/projects/outputs.py +96 -0
  107. pulumi_gcp/provider.py +20 -0
  108. pulumi_gcp/pulumi-plugin.json +1 -1
  109. pulumi_gcp/servicenetworking/peered_dns_domain.py +4 -0
  110. pulumi_gcp/sql/outputs.py +8 -8
  111. pulumi_gcp/storage/_inputs.py +14 -6
  112. pulumi_gcp/storage/insights_report_config.py +121 -20
  113. pulumi_gcp/storage/outputs.py +7 -4
  114. pulumi_gcp/tpu/_inputs.py +21 -1
  115. pulumi_gcp/tpu/outputs.py +13 -1
  116. pulumi_gcp/tpu/v2_vm.py +2 -0
  117. pulumi_gcp/vmwareengine/_inputs.py +6 -0
  118. pulumi_gcp/vmwareengine/outputs.py +8 -0
  119. pulumi_gcp/workflows/workflow.py +75 -7
  120. pulumi_gcp/workstations/workstation_cluster.py +137 -1
  121. {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/METADATA +2 -2
  122. {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/RECORD +124 -113
  123. {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/WHEEL +1 -1
  124. {pulumi_gcp-8.22.0a1741790977.dist-info → pulumi_gcp-8.23.0.dist-info}/top_level.txt +0 -0
@@ -505,7 +505,7 @@ class DataConnectService(pulumi.CustomResource):
505
505
  project="my-project-name",
506
506
  service="firebasedataconnect.googleapis.com",
507
507
  disable_on_destroy=False)
508
- # Create an FDC service
508
+ # Create a Firebase Data Connect service
509
509
  default = gcp.firebase.DataConnectService("default",
510
510
  project="my-project-name",
511
511
  location="us-central1",
@@ -520,6 +520,25 @@ class DataConnectService(pulumi.CustomResource):
520
520
  },
521
521
  opts = pulumi.ResourceOptions(depends_on=[fdc]))
522
522
  ```
523
+ ### Firebasedataconnect Service With Force Deletion
524
+
525
+ ```python
526
+ import pulumi
527
+ import pulumi_gcp as gcp
528
+
529
+ # Enable Firebase Data Connect API
530
+ fdc = gcp.projects.Service("fdc",
531
+ project="my-project-name",
532
+ service="firebasedataconnect.googleapis.com",
533
+ disable_on_destroy=False)
534
+ # Create a Firebase Data Connect service
535
+ default = gcp.firebase.DataConnectService("default",
536
+ project="my-project-name",
537
+ location="us-central1",
538
+ service_id="example-service",
539
+ deletion_policy="FORCE",
540
+ opts = pulumi.ResourceOptions(depends_on=[fdc]))
541
+ ```
523
542
 
524
543
  ## Import
525
544
 
@@ -596,7 +615,7 @@ class DataConnectService(pulumi.CustomResource):
596
615
  project="my-project-name",
597
616
  service="firebasedataconnect.googleapis.com",
598
617
  disable_on_destroy=False)
599
- # Create an FDC service
618
+ # Create a Firebase Data Connect service
600
619
  default = gcp.firebase.DataConnectService("default",
601
620
  project="my-project-name",
602
621
  location="us-central1",
@@ -611,6 +630,25 @@ class DataConnectService(pulumi.CustomResource):
611
630
  },
612
631
  opts = pulumi.ResourceOptions(depends_on=[fdc]))
613
632
  ```
633
+ ### Firebasedataconnect Service With Force Deletion
634
+
635
+ ```python
636
+ import pulumi
637
+ import pulumi_gcp as gcp
638
+
639
+ # Enable Firebase Data Connect API
640
+ fdc = gcp.projects.Service("fdc",
641
+ project="my-project-name",
642
+ service="firebasedataconnect.googleapis.com",
643
+ disable_on_destroy=False)
644
+ # Create a Firebase Data Connect service
645
+ default = gcp.firebase.DataConnectService("default",
646
+ project="my-project-name",
647
+ location="us-central1",
648
+ service_id="example-service",
649
+ deletion_policy="FORCE",
650
+ opts = pulumi.ResourceOptions(depends_on=[fdc]))
651
+ ```
614
652
 
615
653
  ## Import
616
654
 
@@ -309,7 +309,7 @@ class HostingVersion(pulumi.CustomResource):
309
309
  project="my-project-name",
310
310
  name="cloud-function-via-hosting",
311
311
  description="A Cloud Function connected to Firebase Hosing",
312
- runtime="nodejs16",
312
+ runtime="nodejs20",
313
313
  available_memory_mb=128,
314
314
  source_archive_bucket=bucket.name,
315
315
  source_archive_object=object.name,
@@ -516,7 +516,7 @@ class HostingVersion(pulumi.CustomResource):
516
516
  project="my-project-name",
517
517
  name="cloud-function-via-hosting",
518
518
  description="A Cloud Function connected to Firebase Hosing",
519
- runtime="nodejs16",
519
+ runtime="nodejs20",
520
520
  available_memory_mb=128,
521
521
  source_archive_bucket=bucket.name,
522
522
  source_archive_object=object.name,
@@ -16,6 +16,9 @@ from .. import _utilities
16
16
  from . import outputs
17
17
 
18
18
  __all__ = [
19
+ 'AppHostingBackendCodebase',
20
+ 'AppHostingBackendManagedResource',
21
+ 'AppHostingBackendManagedResourceRunService',
19
22
  'ExtensionsInstanceConfig',
20
23
  'ExtensionsInstanceErrorStatus',
21
24
  'ExtensionsInstanceRuntimeData',
@@ -42,6 +45,130 @@ __all__ = [
42
45
  'HostingVersionConfigRewriteRun',
43
46
  ]
44
47
 
48
+ @pulumi.output_type
49
+ class AppHostingBackendCodebase(dict):
50
+ @staticmethod
51
+ def __key_warning(key: str):
52
+ suggest = None
53
+ if key == "rootDirectory":
54
+ suggest = "root_directory"
55
+
56
+ if suggest:
57
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingBackendCodebase. Access the value via the '{suggest}' property getter instead.")
58
+
59
+ def __getitem__(self, key: str) -> Any:
60
+ AppHostingBackendCodebase.__key_warning(key)
61
+ return super().__getitem__(key)
62
+
63
+ def get(self, key: str, default = None) -> Any:
64
+ AppHostingBackendCodebase.__key_warning(key)
65
+ return super().get(key, default)
66
+
67
+ def __init__(__self__, *,
68
+ repository: str,
69
+ root_directory: Optional[str] = None):
70
+ """
71
+ :param str repository: The resource name for the Developer Connect
72
+ [`gitRepositoryLink`](https://cloud.google.com/developer-connect/docs/api/reference/rest/v1/projects.locations.connections.gitRepositoryLinks)
73
+ connected to this backend, in the format:
74
+ projects/{project}/locations/{location}/connections/{connection}/gitRepositoryLinks/{repositoryLink}
75
+ :param str root_directory: If `repository` is provided, the directory relative to the root of the
76
+ repository to use as the root for the deployed web app.
77
+ """
78
+ pulumi.set(__self__, "repository", repository)
79
+ if root_directory is not None:
80
+ pulumi.set(__self__, "root_directory", root_directory)
81
+
82
+ @property
83
+ @pulumi.getter
84
+ def repository(self) -> str:
85
+ """
86
+ The resource name for the Developer Connect
87
+ [`gitRepositoryLink`](https://cloud.google.com/developer-connect/docs/api/reference/rest/v1/projects.locations.connections.gitRepositoryLinks)
88
+ connected to this backend, in the format:
89
+ projects/{project}/locations/{location}/connections/{connection}/gitRepositoryLinks/{repositoryLink}
90
+ """
91
+ return pulumi.get(self, "repository")
92
+
93
+ @property
94
+ @pulumi.getter(name="rootDirectory")
95
+ def root_directory(self) -> Optional[str]:
96
+ """
97
+ If `repository` is provided, the directory relative to the root of the
98
+ repository to use as the root for the deployed web app.
99
+ """
100
+ return pulumi.get(self, "root_directory")
101
+
102
+
103
+ @pulumi.output_type
104
+ class AppHostingBackendManagedResource(dict):
105
+ @staticmethod
106
+ def __key_warning(key: str):
107
+ suggest = None
108
+ if key == "runServices":
109
+ suggest = "run_services"
110
+
111
+ if suggest:
112
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingBackendManagedResource. Access the value via the '{suggest}' property getter instead.")
113
+
114
+ def __getitem__(self, key: str) -> Any:
115
+ AppHostingBackendManagedResource.__key_warning(key)
116
+ return super().__getitem__(key)
117
+
118
+ def get(self, key: str, default = None) -> Any:
119
+ AppHostingBackendManagedResource.__key_warning(key)
120
+ return super().get(key, default)
121
+
122
+ def __init__(__self__, *,
123
+ run_services: Optional[Sequence['outputs.AppHostingBackendManagedResourceRunService']] = None):
124
+ """
125
+ :param Sequence['AppHostingBackendManagedResourceRunServiceArgs'] run_services: (Output)
126
+ A managed Cloud Run
127
+ [`service`](https://cloud.google.com/run/docs/reference/rest/v2/projects.locations.services#resource:-service).
128
+ Structure is documented below.
129
+ """
130
+ if run_services is not None:
131
+ pulumi.set(__self__, "run_services", run_services)
132
+
133
+ @property
134
+ @pulumi.getter(name="runServices")
135
+ def run_services(self) -> Optional[Sequence['outputs.AppHostingBackendManagedResourceRunService']]:
136
+ """
137
+ (Output)
138
+ A managed Cloud Run
139
+ [`service`](https://cloud.google.com/run/docs/reference/rest/v2/projects.locations.services#resource:-service).
140
+ Structure is documented below.
141
+ """
142
+ return pulumi.get(self, "run_services")
143
+
144
+
145
+ @pulumi.output_type
146
+ class AppHostingBackendManagedResourceRunService(dict):
147
+ def __init__(__self__, *,
148
+ service: Optional[str] = None):
149
+ """
150
+ :param str service: (Output)
151
+ The name of the Cloud Run
152
+ [`service`](https://cloud.google.com/run/docs/reference/rest/v2/projects.locations.services#resource:-service),
153
+ in the format:
154
+ projects/{project}/locations/{location}/services/{serviceId}
155
+ """
156
+ if service is not None:
157
+ pulumi.set(__self__, "service", service)
158
+
159
+ @property
160
+ @pulumi.getter
161
+ def service(self) -> Optional[str]:
162
+ """
163
+ (Output)
164
+ The name of the Cloud Run
165
+ [`service`](https://cloud.google.com/run/docs/reference/rest/v2/projects.locations.services#resource:-service),
166
+ in the format:
167
+ projects/{project}/locations/{location}/services/{serviceId}
168
+ """
169
+ return pulumi.get(self, "service")
170
+
171
+
45
172
  @pulumi.output_type
46
173
  class ExtensionsInstanceConfig(dict):
47
174
  @staticmethod
@@ -12,6 +12,8 @@ from .get_rule import *
12
12
  from .get_testable_permissions import *
13
13
  from .get_workload_identity_pool import *
14
14
  from .get_workload_identity_pool_provider import *
15
+ from .oauth_client import *
16
+ from .oauth_client_credential import *
15
17
  from .organizations_policy_binding import *
16
18
  from .principal_access_boundary_policy import *
17
19
  from .projects_policy_binding import *
pulumi_gcp/iam/_inputs.py CHANGED
@@ -703,8 +703,10 @@ if not MYPY:
703
703
  class FoldersPolicyBindingTargetArgsDict(TypedDict):
704
704
  principal_set: NotRequired[pulumi.Input[str]]
705
705
  """
706
- Required. Immutable. The resource name of the policy to be bound.
707
- The binding parent and policy must belong to the same Organization (or Project).
706
+ Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
707
+ Examples for each one of the following supported principal set types:
708
+ * Folder: `//cloudresourcemanager.googleapis.com/folders/FOLDER_ID`
709
+ It must be parent by the policy binding's parent (the folder).
708
710
 
709
711
  - - -
710
712
  """
@@ -716,8 +718,10 @@ class FoldersPolicyBindingTargetArgs:
716
718
  def __init__(__self__, *,
717
719
  principal_set: Optional[pulumi.Input[str]] = None):
718
720
  """
719
- :param pulumi.Input[str] principal_set: Required. Immutable. The resource name of the policy to be bound.
720
- The binding parent and policy must belong to the same Organization (or Project).
721
+ :param pulumi.Input[str] principal_set: Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
722
+ Examples for each one of the following supported principal set types:
723
+ * Folder: `//cloudresourcemanager.googleapis.com/folders/FOLDER_ID`
724
+ It must be parent by the policy binding's parent (the folder).
721
725
 
722
726
  - - -
723
727
  """
@@ -728,8 +732,10 @@ class FoldersPolicyBindingTargetArgs:
728
732
  @pulumi.getter(name="principalSet")
729
733
  def principal_set(self) -> Optional[pulumi.Input[str]]:
730
734
  """
731
- Required. Immutable. The resource name of the policy to be bound.
732
- The binding parent and policy must belong to the same Organization (or Project).
735
+ Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
736
+ Examples for each one of the following supported principal set types:
737
+ * Folder: `//cloudresourcemanager.googleapis.com/folders/FOLDER_ID`
738
+ It must be parent by the policy binding's parent (the folder).
733
739
 
734
740
  - - -
735
741
  """
@@ -836,8 +842,12 @@ if not MYPY:
836
842
  class OrganizationsPolicyBindingTargetArgsDict(TypedDict):
837
843
  principal_set: NotRequired[pulumi.Input[str]]
838
844
  """
839
- Required. Immutable. The resource name of the policy to be bound.
840
- The binding parent and policy must belong to the same Organization (or Project).
845
+ Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
846
+ Examples for each one of the following supported principal set types:
847
+ * Organization `//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID`
848
+ * Workforce Identity: `//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID`
849
+ * Workspace Identity: `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID`
850
+ It must be parent by the policy binding's parent (the organization).
841
851
 
842
852
  - - -
843
853
  """
@@ -849,8 +859,12 @@ class OrganizationsPolicyBindingTargetArgs:
849
859
  def __init__(__self__, *,
850
860
  principal_set: Optional[pulumi.Input[str]] = None):
851
861
  """
852
- :param pulumi.Input[str] principal_set: Required. Immutable. The resource name of the policy to be bound.
853
- The binding parent and policy must belong to the same Organization (or Project).
862
+ :param pulumi.Input[str] principal_set: Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
863
+ Examples for each one of the following supported principal set types:
864
+ * Organization `//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID`
865
+ * Workforce Identity: `//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID`
866
+ * Workspace Identity: `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID`
867
+ It must be parent by the policy binding's parent (the organization).
854
868
 
855
869
  - - -
856
870
  """
@@ -861,8 +875,12 @@ class OrganizationsPolicyBindingTargetArgs:
861
875
  @pulumi.getter(name="principalSet")
862
876
  def principal_set(self) -> Optional[pulumi.Input[str]]:
863
877
  """
864
- Required. Immutable. The resource name of the policy to be bound.
865
- The binding parent and policy must belong to the same Organization (or Project).
878
+ Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
879
+ Examples for each one of the following supported principal set types:
880
+ * Organization `//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID`
881
+ * Workforce Identity: `//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID`
882
+ * Workspace Identity: `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID`
883
+ It must be parent by the policy binding's parent (the organization).
866
884
 
867
885
  - - -
868
886
  """
@@ -1126,8 +1144,13 @@ if not MYPY:
1126
1144
  class ProjectsPolicyBindingTargetArgsDict(TypedDict):
1127
1145
  principal_set: NotRequired[pulumi.Input[str]]
1128
1146
  """
1129
- Required. Immutable. The resource name of the policy to be bound.
1130
- The binding parent and policy must belong to the same Organization (or Project).
1147
+ Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
1148
+ Examples for each one of the following supported principal set types:
1149
+ * Project:
1150
+ * `//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER`
1151
+ * `//cloudresourcemanager.googleapis.com/projects/PROJECT_ID`
1152
+ * Workload Identity Pool: `//iam.googleapis.com/projects/PROJECT_NUMBER/locations/LOCATION/workloadIdentityPools/WORKLOAD_POOL_ID`
1153
+ It must be parent by the policy binding's parent (the project).
1131
1154
 
1132
1155
  - - -
1133
1156
  """
@@ -1139,8 +1162,13 @@ class ProjectsPolicyBindingTargetArgs:
1139
1162
  def __init__(__self__, *,
1140
1163
  principal_set: Optional[pulumi.Input[str]] = None):
1141
1164
  """
1142
- :param pulumi.Input[str] principal_set: Required. Immutable. The resource name of the policy to be bound.
1143
- The binding parent and policy must belong to the same Organization (or Project).
1165
+ :param pulumi.Input[str] principal_set: Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
1166
+ Examples for each one of the following supported principal set types:
1167
+ * Project:
1168
+ * `//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER`
1169
+ * `//cloudresourcemanager.googleapis.com/projects/PROJECT_ID`
1170
+ * Workload Identity Pool: `//iam.googleapis.com/projects/PROJECT_NUMBER/locations/LOCATION/workloadIdentityPools/WORKLOAD_POOL_ID`
1171
+ It must be parent by the policy binding's parent (the project).
1144
1172
 
1145
1173
  - - -
1146
1174
  """
@@ -1151,8 +1179,13 @@ class ProjectsPolicyBindingTargetArgs:
1151
1179
  @pulumi.getter(name="principalSet")
1152
1180
  def principal_set(self) -> Optional[pulumi.Input[str]]:
1153
1181
  """
1154
- Required. Immutable. The resource name of the policy to be bound.
1155
- The binding parent and policy must belong to the same Organization (or Project).
1182
+ Required. Immutable. Full Resource Name of the principal set used for principal access boundary policy bindings.
1183
+ Examples for each one of the following supported principal set types:
1184
+ * Project:
1185
+ * `//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER`
1186
+ * `//cloudresourcemanager.googleapis.com/projects/PROJECT_ID`
1187
+ * Workload Identity Pool: `//iam.googleapis.com/projects/PROJECT_NUMBER/locations/LOCATION/workloadIdentityPools/WORKLOAD_POOL_ID`
1188
+ It must be parent by the policy binding's parent (the project).
1156
1189
 
1157
1190
  - - -
1158
1191
  """
@@ -497,14 +497,6 @@ class FoldersPolicyBinding(pulumi.CustomResource):
497
497
  target: Optional[pulumi.Input[Union['FoldersPolicyBindingTargetArgs', 'FoldersPolicyBindingTargetArgsDict']]] = None,
498
498
  __props__=None):
499
499
  """
500
- A policy binding to a folder
501
-
502
- To get more information about FoldersPolicyBinding, see:
503
-
504
- * [API documentation](https://cloud.google.com/iam/docs/reference/rest/v3/folders.locations.policyBindings)
505
- * How-to Guides
506
- * [Apply a policy binding](https://cloud.google.com/iam/docs/principal-access-boundary-policies-create#create_binding)
507
-
508
500
  ## Example Usage
509
501
 
510
502
  ### Iam Folders Policy Binding
@@ -517,20 +509,20 @@ class FoldersPolicyBinding(pulumi.CustomResource):
517
509
  pab_policy = gcp.iam.PrincipalAccessBoundaryPolicy("pab_policy",
518
510
  organization="123456789",
519
511
  location="global",
520
- display_name="test folder binding",
512
+ display_name="binding for all principals in the folder",
521
513
  principal_access_boundary_policy_id="my-pab-policy")
522
514
  folder = gcp.organizations.Folder("folder",
523
- display_name="test folder",
515
+ display_name="my folder",
524
516
  parent="organizations/123456789",
525
517
  deletion_protection=False)
526
518
  wait120s = time.index.Sleep("wait_120s", create_duration=120s,
527
519
  opts = pulumi.ResourceOptions(depends_on=[folder]))
528
- my_folder_binding = gcp.iam.FoldersPolicyBinding("my-folder-binding",
520
+ binding_for_all_folder_principals = gcp.iam.FoldersPolicyBinding("binding-for-all-folder-principals",
529
521
  folder=folder.folder_id,
530
522
  location="global",
531
- display_name="test folder binding",
523
+ display_name="binding for all principals in the folder",
532
524
  policy_kind="PRINCIPAL_ACCESS_BOUNDARY",
533
- policy_binding_id="test-folder-binding",
525
+ policy_binding_id="binding-for-all-folder-principals",
534
526
  policy=pab_policy.principal_access_boundary_policy_id.apply(lambda principal_access_boundary_policy_id: f"organizations/123456789/locations/global/principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}"),
535
527
  target={
536
528
  "principal_set": folder.folder_id.apply(lambda folder_id: f"//cloudresourcemanager.googleapis.com/folders/{folder_id}"),
@@ -589,14 +581,6 @@ class FoldersPolicyBinding(pulumi.CustomResource):
589
581
  args: FoldersPolicyBindingArgs,
590
582
  opts: Optional[pulumi.ResourceOptions] = None):
591
583
  """
592
- A policy binding to a folder
593
-
594
- To get more information about FoldersPolicyBinding, see:
595
-
596
- * [API documentation](https://cloud.google.com/iam/docs/reference/rest/v3/folders.locations.policyBindings)
597
- * How-to Guides
598
- * [Apply a policy binding](https://cloud.google.com/iam/docs/principal-access-boundary-policies-create#create_binding)
599
-
600
584
  ## Example Usage
601
585
 
602
586
  ### Iam Folders Policy Binding
@@ -609,20 +593,20 @@ class FoldersPolicyBinding(pulumi.CustomResource):
609
593
  pab_policy = gcp.iam.PrincipalAccessBoundaryPolicy("pab_policy",
610
594
  organization="123456789",
611
595
  location="global",
612
- display_name="test folder binding",
596
+ display_name="binding for all principals in the folder",
613
597
  principal_access_boundary_policy_id="my-pab-policy")
614
598
  folder = gcp.organizations.Folder("folder",
615
- display_name="test folder",
599
+ display_name="my folder",
616
600
  parent="organizations/123456789",
617
601
  deletion_protection=False)
618
602
  wait120s = time.index.Sleep("wait_120s", create_duration=120s,
619
603
  opts = pulumi.ResourceOptions(depends_on=[folder]))
620
- my_folder_binding = gcp.iam.FoldersPolicyBinding("my-folder-binding",
604
+ binding_for_all_folder_principals = gcp.iam.FoldersPolicyBinding("binding-for-all-folder-principals",
621
605
  folder=folder.folder_id,
622
606
  location="global",
623
- display_name="test folder binding",
607
+ display_name="binding for all principals in the folder",
624
608
  policy_kind="PRINCIPAL_ACCESS_BOUNDARY",
625
- policy_binding_id="test-folder-binding",
609
+ policy_binding_id="binding-for-all-folder-principals",
626
610
  policy=pab_policy.principal_access_boundary_policy_id.apply(lambda principal_access_boundary_policy_id: f"organizations/123456789/locations/global/principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}"),
627
611
  target={
628
612
  "principal_set": folder.folder_id.apply(lambda folder_id: f"//cloudresourcemanager.googleapis.com/folders/{folder_id}"),