pulumi-gcp 8.17.0a1738274430__py3-none-any.whl → 8.18.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 (137) hide show
  1. pulumi_gcp/__init__.py +115 -0
  2. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +28 -0
  3. pulumi_gcp/alloydb/cluster.py +75 -7
  4. pulumi_gcp/alloydb/user.py +10 -1
  5. pulumi_gcp/apigee/_inputs.py +91 -0
  6. pulumi_gcp/apigee/endpoint_attachment.py +0 -64
  7. pulumi_gcp/apigee/environment.py +54 -0
  8. pulumi_gcp/apigee/outputs.py +54 -0
  9. pulumi_gcp/apihub/__init__.py +10 -0
  10. pulumi_gcp/apihub/_inputs.py +154 -0
  11. pulumi_gcp/apihub/api_hub_instance.py +784 -0
  12. pulumi_gcp/apihub/outputs.py +124 -0
  13. pulumi_gcp/assuredworkloads/workload.py +7 -7
  14. pulumi_gcp/beyondcorp/__init__.py +4 -0
  15. pulumi_gcp/beyondcorp/_inputs.py +130 -0
  16. pulumi_gcp/beyondcorp/get_security_gateway_iam_policy.py +180 -0
  17. pulumi_gcp/beyondcorp/outputs.py +76 -0
  18. pulumi_gcp/beyondcorp/security_gateway.py +52 -25
  19. pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +1075 -0
  20. pulumi_gcp/beyondcorp/security_gateway_iam_member.py +1075 -0
  21. pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +894 -0
  22. pulumi_gcp/bigquery/_inputs.py +33 -0
  23. pulumi_gcp/bigquery/dataset.py +7 -7
  24. pulumi_gcp/bigquery/outputs.py +36 -0
  25. pulumi_gcp/bigquery/table.py +61 -7
  26. pulumi_gcp/chronicle/__init__.py +1 -0
  27. pulumi_gcp/chronicle/_inputs.py +124 -0
  28. pulumi_gcp/chronicle/outputs.py +112 -0
  29. pulumi_gcp/chronicle/retrohunt.py +629 -0
  30. pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +23 -23
  31. pulumi_gcp/cloudrunv2/_inputs.py +197 -0
  32. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  33. pulumi_gcp/cloudrunv2/outputs.py +256 -0
  34. pulumi_gcp/cloudrunv2/service.py +159 -0
  35. pulumi_gcp/colab/__init__.py +5 -0
  36. pulumi_gcp/colab/_inputs.py +131 -0
  37. pulumi_gcp/colab/get_runtime_template_iam_policy.py +182 -0
  38. pulumi_gcp/colab/outputs.py +92 -0
  39. pulumi_gcp/colab/runtime.py +696 -0
  40. pulumi_gcp/colab/runtime_template_iam_binding.py +828 -0
  41. pulumi_gcp/colab/runtime_template_iam_member.py +828 -0
  42. pulumi_gcp/colab/runtime_template_iam_policy.py +667 -0
  43. pulumi_gcp/compute/__init__.py +4 -0
  44. pulumi_gcp/compute/_inputs.py +535 -9
  45. pulumi_gcp/compute/firewall_policy_rule.py +104 -22
  46. pulumi_gcp/compute/firewall_policy_with_rules.py +114 -42
  47. pulumi_gcp/compute/get_instance_template_iam_policy.py +159 -0
  48. pulumi_gcp/compute/get_network.py +3 -3
  49. pulumi_gcp/compute/instance_template_iam_binding.py +998 -0
  50. pulumi_gcp/compute/instance_template_iam_member.py +998 -0
  51. pulumi_gcp/compute/instance_template_iam_policy.py +817 -0
  52. pulumi_gcp/compute/interconnect_attachment.py +189 -2
  53. pulumi_gcp/compute/network.py +7 -7
  54. pulumi_gcp/compute/network_firewall_policy_rule.py +122 -10
  55. pulumi_gcp/compute/network_firewall_policy_with_rules.py +116 -44
  56. pulumi_gcp/compute/outputs.py +358 -6
  57. pulumi_gcp/compute/project_metadata_item.py +12 -0
  58. pulumi_gcp/compute/public_advertised_prefix.py +87 -0
  59. pulumi_gcp/compute/region_network_firewall_policy_rule.py +130 -10
  60. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +104 -32
  61. pulumi_gcp/compute/router_peer.py +227 -3
  62. pulumi_gcp/config/__init__.pyi +2 -0
  63. pulumi_gcp/config/vars.py +4 -0
  64. pulumi_gcp/container/_inputs.py +79 -20
  65. pulumi_gcp/container/outputs.py +75 -12
  66. pulumi_gcp/dataproc/_inputs.py +34 -0
  67. pulumi_gcp/dataproc/outputs.py +37 -0
  68. pulumi_gcp/dataproc/workflow_template.py +47 -0
  69. pulumi_gcp/filestore/get_instance.py +12 -1
  70. pulumi_gcp/filestore/instance.py +75 -0
  71. pulumi_gcp/firestore/field.py +60 -0
  72. pulumi_gcp/gemini/code_repository_index.py +29 -33
  73. pulumi_gcp/gemini/get_repository_group_iam_policy.py +28 -2
  74. pulumi_gcp/gemini/repository_group.py +76 -26
  75. pulumi_gcp/gemini/repository_group_iam_binding.py +258 -0
  76. pulumi_gcp/gemini/repository_group_iam_member.py +258 -0
  77. pulumi_gcp/gemini/repository_group_iam_policy.py +258 -0
  78. pulumi_gcp/gkehub/_inputs.py +20 -0
  79. pulumi_gcp/gkehub/membership_binding.py +6 -6
  80. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  81. pulumi_gcp/gkehub/namespace.py +4 -4
  82. pulumi_gcp/gkehub/outputs.py +26 -1
  83. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  84. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  85. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  86. pulumi_gcp/kms/__init__.py +1 -0
  87. pulumi_gcp/kms/get_key_handles.py +172 -0
  88. pulumi_gcp/kms/outputs.py +45 -0
  89. pulumi_gcp/netapp/storage_pool.py +1 -1
  90. pulumi_gcp/networkconnectivity/spoke.py +76 -14
  91. pulumi_gcp/networksecurity/_inputs.py +72 -0
  92. pulumi_gcp/networksecurity/outputs.py +76 -0
  93. pulumi_gcp/networksecurity/security_profile.py +233 -7
  94. pulumi_gcp/networksecurity/security_profile_group.py +218 -0
  95. pulumi_gcp/organizations/__init__.py +1 -0
  96. pulumi_gcp/organizations/get_s.py +128 -0
  97. pulumi_gcp/organizations/outputs.py +63 -0
  98. pulumi_gcp/orgpolicy/policy.py +2 -2
  99. pulumi_gcp/parametermanager/__init__.py +6 -0
  100. pulumi_gcp/parametermanager/get_parameter.py +211 -0
  101. pulumi_gcp/parametermanager/get_parameter_version.py +216 -0
  102. pulumi_gcp/parametermanager/get_parameters.py +140 -0
  103. pulumi_gcp/parametermanager/get_regional_parameter_version.py +235 -0
  104. pulumi_gcp/parametermanager/get_regional_parameters.py +157 -0
  105. pulumi_gcp/parametermanager/outputs.py +366 -0
  106. pulumi_gcp/parametermanager/parameter_version.py +496 -0
  107. pulumi_gcp/parametermanager/regional_parameter_version.py +10 -38
  108. pulumi_gcp/provider.py +20 -0
  109. pulumi_gcp/pubsub/_inputs.py +477 -1
  110. pulumi_gcp/pubsub/outputs.py +631 -2
  111. pulumi_gcp/pubsub/subscription.py +6 -6
  112. pulumi_gcp/pubsub/topic.py +112 -0
  113. pulumi_gcp/pulumi-plugin.json +1 -1
  114. pulumi_gcp/redis/__init__.py +1 -0
  115. pulumi_gcp/redis/_inputs.py +342 -6
  116. pulumi_gcp/redis/cluster.py +223 -102
  117. pulumi_gcp/redis/cluster_user_created_connections.py +845 -0
  118. pulumi_gcp/redis/outputs.py +268 -4
  119. pulumi_gcp/resourcemanager/lien.py +12 -0
  120. pulumi_gcp/secretmanager/regional_secret.py +4 -0
  121. pulumi_gcp/secretmanager/regional_secret_version.py +12 -0
  122. pulumi_gcp/secretmanager/secret.py +4 -0
  123. pulumi_gcp/secretmanager/secret_version.py +12 -0
  124. pulumi_gcp/securityposture/posture.py +4 -0
  125. pulumi_gcp/securityposture/posture_deployment.py +4 -0
  126. pulumi_gcp/serviceaccount/get_s.py +98 -8
  127. pulumi_gcp/spanner/_inputs.py +68 -0
  128. pulumi_gcp/spanner/backup_schedule.py +70 -4
  129. pulumi_gcp/spanner/outputs.py +60 -0
  130. pulumi_gcp/storage/get_bucket_object_content.py +4 -4
  131. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  132. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  133. pulumi_gcp/workflows/workflow.py +175 -0
  134. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/METADATA +1 -1
  135. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/RECORD +137 -110
  136. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/WHEEL +0 -0
  137. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/top_level.txt +0 -0
@@ -116,7 +116,20 @@ def get_repository_group_iam_policy(code_repository_index: Optional[str] = None,
116
116
  repository_group_id: Optional[str] = None,
117
117
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRepositoryGroupIamPolicyResult:
118
118
  """
119
- Use this data source to access information about an existing resource.
119
+ Retrieves the current IAM policy data for repositorygroup
120
+
121
+ ## example
122
+
123
+ ```python
124
+ import pulumi
125
+ import pulumi_gcp as gcp
126
+
127
+ policy = gcp.gemini.get_repository_group_iam_policy(project=example["project"],
128
+ location=example["location"],
129
+ code_repository_index=example["codeRepositoryIndex"],
130
+ repository_group_id=example["repositoryGroupId"])
131
+ ```
132
+
120
133
 
121
134
  :param str location: The location of the Code Repository Index, for example `us-central1`. Used to find the parent resource to bind the IAM policy to. If not specified,
122
135
  the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
@@ -146,7 +159,20 @@ def get_repository_group_iam_policy_output(code_repository_index: Optional[pulum
146
159
  repository_group_id: Optional[pulumi.Input[str]] = None,
147
160
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRepositoryGroupIamPolicyResult]:
148
161
  """
149
- Use this data source to access information about an existing resource.
162
+ Retrieves the current IAM policy data for repositorygroup
163
+
164
+ ## example
165
+
166
+ ```python
167
+ import pulumi
168
+ import pulumi_gcp as gcp
169
+
170
+ policy = gcp.gemini.get_repository_group_iam_policy(project=example["project"],
171
+ location=example["location"],
172
+ code_repository_index=example["codeRepositoryIndex"],
173
+ repository_group_id=example["repositoryGroupId"])
174
+ ```
175
+
150
176
 
151
177
  :param str location: The location of the Code Repository Index, for example `us-central1`. Used to find the parent resource to bind the IAM policy to. If not specified,
152
178
  the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
@@ -31,10 +31,10 @@ class RepositoryGroupArgs:
31
31
  The set of arguments for constructing a RepositoryGroup resource.
32
32
  :param pulumi.Input[str] code_repository_index: Required. Id of the Code Repository Index.
33
33
  :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
34
- :param pulumi.Input[Sequence[pulumi.Input['RepositoryGroupRepositoryArgs']]] repositories: Required. List of repositories to group
34
+ :param pulumi.Input[Sequence[pulumi.Input['RepositoryGroupRepositoryArgs']]] repositories: Required. List of repositories to group.
35
35
  Structure is documented below.
36
36
  :param pulumi.Input[str] repository_group_id: Required. Id of the Repository Group.
37
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs **Note**: This field is non-authoritative, and will only manage the labels present
37
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs. **Note**: This field is non-authoritative, and will only manage the labels present
38
38
  in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
39
39
  """
40
40
  pulumi.set(__self__, "code_repository_index", code_repository_index)
@@ -74,7 +74,7 @@ class RepositoryGroupArgs:
74
74
  @pulumi.getter
75
75
  def repositories(self) -> pulumi.Input[Sequence[pulumi.Input['RepositoryGroupRepositoryArgs']]]:
76
76
  """
77
- Required. List of repositories to group
77
+ Required. List of repositories to group.
78
78
  Structure is documented below.
79
79
  """
80
80
  return pulumi.get(self, "repositories")
@@ -99,7 +99,7 @@ class RepositoryGroupArgs:
99
99
  @pulumi.getter
100
100
  def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
101
101
  """
102
- Optional. Labels as key value pairs **Note**: This field is non-authoritative, and will only manage the labels present
102
+ Optional. Labels as key value pairs. **Note**: This field is non-authoritative, and will only manage the labels present
103
103
  in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
104
104
  """
105
105
  return pulumi.get(self, "labels")
@@ -135,18 +135,18 @@ class _RepositoryGroupState:
135
135
  """
136
136
  Input properties used for looking up and filtering RepositoryGroup resources.
137
137
  :param pulumi.Input[str] code_repository_index: Required. Id of the Code Repository Index.
138
- :param pulumi.Input[str] create_time: Output only. Create time stamp
138
+ :param pulumi.Input[str] create_time: Output only. Create time stamp.
139
139
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
140
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs **Note**: This field is non-authoritative, and will only manage the labels present
140
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs. **Note**: This field is non-authoritative, and will only manage the labels present
141
141
  in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
142
142
  :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
143
- :param pulumi.Input[str] name: Immutable. Identifier. name of resource
143
+ :param pulumi.Input[str] name: Immutable. Identifier. Name of Repository Group.
144
144
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
145
145
  and default labels configured on the provider.
146
- :param pulumi.Input[Sequence[pulumi.Input['RepositoryGroupRepositoryArgs']]] repositories: Required. List of repositories to group
146
+ :param pulumi.Input[Sequence[pulumi.Input['RepositoryGroupRepositoryArgs']]] repositories: Required. List of repositories to group.
147
147
  Structure is documented below.
148
148
  :param pulumi.Input[str] repository_group_id: Required. Id of the Repository Group.
149
- :param pulumi.Input[str] update_time: Output only. Update time stamp
149
+ :param pulumi.Input[str] update_time: Output only. Update time stamp.
150
150
  """
151
151
  if code_repository_index is not None:
152
152
  pulumi.set(__self__, "code_repository_index", code_repository_index)
@@ -187,7 +187,7 @@ class _RepositoryGroupState:
187
187
  @pulumi.getter(name="createTime")
188
188
  def create_time(self) -> Optional[pulumi.Input[str]]:
189
189
  """
190
- Output only. Create time stamp
190
+ Output only. Create time stamp.
191
191
  """
192
192
  return pulumi.get(self, "create_time")
193
193
 
@@ -211,7 +211,7 @@ class _RepositoryGroupState:
211
211
  @pulumi.getter
212
212
  def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
213
213
  """
214
- Optional. Labels as key value pairs **Note**: This field is non-authoritative, and will only manage the labels present
214
+ Optional. Labels as key value pairs. **Note**: This field is non-authoritative, and will only manage the labels present
215
215
  in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
216
216
  """
217
217
  return pulumi.get(self, "labels")
@@ -236,7 +236,7 @@ class _RepositoryGroupState:
236
236
  @pulumi.getter
237
237
  def name(self) -> Optional[pulumi.Input[str]]:
238
238
  """
239
- Immutable. Identifier. name of resource
239
+ Immutable. Identifier. Name of Repository Group.
240
240
  """
241
241
  return pulumi.get(self, "name")
242
242
 
@@ -270,7 +270,7 @@ class _RepositoryGroupState:
270
270
  @pulumi.getter
271
271
  def repositories(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RepositoryGroupRepositoryArgs']]]]:
272
272
  """
273
- Required. List of repositories to group
273
+ Required. List of repositories to group.
274
274
  Structure is documented below.
275
275
  """
276
276
  return pulumi.get(self, "repositories")
@@ -295,7 +295,7 @@ class _RepositoryGroupState:
295
295
  @pulumi.getter(name="updateTime")
296
296
  def update_time(self) -> Optional[pulumi.Input[str]]:
297
297
  """
298
- Output only. Update time stamp
298
+ Output only. Update time stamp.
299
299
  """
300
300
  return pulumi.get(self, "update_time")
301
301
 
@@ -317,8 +317,33 @@ class RepositoryGroup(pulumi.CustomResource):
317
317
  repository_group_id: Optional[pulumi.Input[str]] = None,
318
318
  __props__=None):
319
319
  """
320
+ The resource for managing Repository Group for Gemini Code Assist.
321
+
322
+ To get more information about RepositoryGroup, see:
323
+
324
+ * [API documentation](https://cloud.google.com/gemini/docs/api/reference/rest/v1/projects.locations.codeRepositoryIndexes.repositoryGroups)
325
+
320
326
  ## Example Usage
321
327
 
328
+ ### Gemini Repository Group Basic
329
+
330
+ ```python
331
+ import pulumi
332
+ import pulumi_gcp as gcp
333
+
334
+ example = gcp.gemini.RepositoryGroup("example",
335
+ location="us-central1",
336
+ code_repository_index="example-cri",
337
+ repository_group_id="example-repository-group",
338
+ repositories=[{
339
+ "resource": "projects/example-project/locations/us-central1/connections/example-connection/gitRepositoryLinks/example-repo",
340
+ "branch_pattern": "main",
341
+ }],
342
+ labels={
343
+ "label1": "value1",
344
+ })
345
+ ```
346
+
322
347
  ## Import
323
348
 
324
349
  RepositoryGroup can be imported using any of these accepted formats:
@@ -346,10 +371,10 @@ class RepositoryGroup(pulumi.CustomResource):
346
371
  :param str resource_name: The name of the resource.
347
372
  :param pulumi.ResourceOptions opts: Options for the resource.
348
373
  :param pulumi.Input[str] code_repository_index: Required. Id of the Code Repository Index.
349
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs **Note**: This field is non-authoritative, and will only manage the labels present
374
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs. **Note**: This field is non-authoritative, and will only manage the labels present
350
375
  in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
351
376
  :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
352
- :param pulumi.Input[Sequence[pulumi.Input[Union['RepositoryGroupRepositoryArgs', 'RepositoryGroupRepositoryArgsDict']]]] repositories: Required. List of repositories to group
377
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RepositoryGroupRepositoryArgs', 'RepositoryGroupRepositoryArgsDict']]]] repositories: Required. List of repositories to group.
353
378
  Structure is documented below.
354
379
  :param pulumi.Input[str] repository_group_id: Required. Id of the Repository Group.
355
380
  """
@@ -360,8 +385,33 @@ class RepositoryGroup(pulumi.CustomResource):
360
385
  args: RepositoryGroupArgs,
361
386
  opts: Optional[pulumi.ResourceOptions] = None):
362
387
  """
388
+ The resource for managing Repository Group for Gemini Code Assist.
389
+
390
+ To get more information about RepositoryGroup, see:
391
+
392
+ * [API documentation](https://cloud.google.com/gemini/docs/api/reference/rest/v1/projects.locations.codeRepositoryIndexes.repositoryGroups)
393
+
363
394
  ## Example Usage
364
395
 
396
+ ### Gemini Repository Group Basic
397
+
398
+ ```python
399
+ import pulumi
400
+ import pulumi_gcp as gcp
401
+
402
+ example = gcp.gemini.RepositoryGroup("example",
403
+ location="us-central1",
404
+ code_repository_index="example-cri",
405
+ repository_group_id="example-repository-group",
406
+ repositories=[{
407
+ "resource": "projects/example-project/locations/us-central1/connections/example-connection/gitRepositoryLinks/example-repo",
408
+ "branch_pattern": "main",
409
+ }],
410
+ labels={
411
+ "label1": "value1",
412
+ })
413
+ ```
414
+
365
415
  ## Import
366
416
 
367
417
  RepositoryGroup can be imported using any of these accepted formats:
@@ -466,18 +516,18 @@ class RepositoryGroup(pulumi.CustomResource):
466
516
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
467
517
  :param pulumi.ResourceOptions opts: Options for the resource.
468
518
  :param pulumi.Input[str] code_repository_index: Required. Id of the Code Repository Index.
469
- :param pulumi.Input[str] create_time: Output only. Create time stamp
519
+ :param pulumi.Input[str] create_time: Output only. Create time stamp.
470
520
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
471
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs **Note**: This field is non-authoritative, and will only manage the labels present
521
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs. **Note**: This field is non-authoritative, and will only manage the labels present
472
522
  in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
473
523
  :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
474
- :param pulumi.Input[str] name: Immutable. Identifier. name of resource
524
+ :param pulumi.Input[str] name: Immutable. Identifier. Name of Repository Group.
475
525
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
476
526
  and default labels configured on the provider.
477
- :param pulumi.Input[Sequence[pulumi.Input[Union['RepositoryGroupRepositoryArgs', 'RepositoryGroupRepositoryArgsDict']]]] repositories: Required. List of repositories to group
527
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RepositoryGroupRepositoryArgs', 'RepositoryGroupRepositoryArgsDict']]]] repositories: Required. List of repositories to group.
478
528
  Structure is documented below.
479
529
  :param pulumi.Input[str] repository_group_id: Required. Id of the Repository Group.
480
- :param pulumi.Input[str] update_time: Output only. Update time stamp
530
+ :param pulumi.Input[str] update_time: Output only. Update time stamp.
481
531
  """
482
532
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
483
533
 
@@ -508,7 +558,7 @@ class RepositoryGroup(pulumi.CustomResource):
508
558
  @pulumi.getter(name="createTime")
509
559
  def create_time(self) -> pulumi.Output[str]:
510
560
  """
511
- Output only. Create time stamp
561
+ Output only. Create time stamp.
512
562
  """
513
563
  return pulumi.get(self, "create_time")
514
564
 
@@ -524,7 +574,7 @@ class RepositoryGroup(pulumi.CustomResource):
524
574
  @pulumi.getter
525
575
  def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
526
576
  """
527
- Optional. Labels as key value pairs **Note**: This field is non-authoritative, and will only manage the labels present
577
+ Optional. Labels as key value pairs. **Note**: This field is non-authoritative, and will only manage the labels present
528
578
  in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
529
579
  """
530
580
  return pulumi.get(self, "labels")
@@ -541,7 +591,7 @@ class RepositoryGroup(pulumi.CustomResource):
541
591
  @pulumi.getter
542
592
  def name(self) -> pulumi.Output[str]:
543
593
  """
544
- Immutable. Identifier. name of resource
594
+ Immutable. Identifier. Name of Repository Group.
545
595
  """
546
596
  return pulumi.get(self, "name")
547
597
 
@@ -563,7 +613,7 @@ class RepositoryGroup(pulumi.CustomResource):
563
613
  @pulumi.getter
564
614
  def repositories(self) -> pulumi.Output[Sequence['outputs.RepositoryGroupRepository']]:
565
615
  """
566
- Required. List of repositories to group
616
+ Required. List of repositories to group.
567
617
  Structure is documented below.
568
618
  """
569
619
  return pulumi.get(self, "repositories")
@@ -580,7 +630,7 @@ class RepositoryGroup(pulumi.CustomResource):
580
630
  @pulumi.getter(name="updateTime")
581
631
  def update_time(self) -> pulumi.Output[str]:
582
632
  """
583
- Output only. Update time stamp
633
+ Output only. Update time stamp.
584
634
  """
585
635
  return pulumi.get(self, "update_time")
586
636
 
@@ -320,6 +320,135 @@ class RepositoryGroupIamBinding(pulumi.CustomResource):
320
320
  role: Optional[pulumi.Input[str]] = None,
321
321
  __props__=None):
322
322
  """
323
+ Three different resources help you manage your IAM policy for Gemini for Google Cloud RepositoryGroup. Each of these resources serves a different use case:
324
+
325
+ * `gemini.RepositoryGroupIamPolicy`: Authoritative. Sets the IAM policy for the repositorygroup and replaces any existing policy already attached.
326
+ * `gemini.RepositoryGroupIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repositorygroup are preserved.
327
+ * `gemini.RepositoryGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repositorygroup are preserved.
328
+
329
+ A data source can be used to retrieve policy data in advent you do not need creation
330
+
331
+ * `gemini.RepositoryGroupIamPolicy`: Retrieves the IAM policy for the repositorygroup
332
+
333
+ > **Note:** `gemini.RepositoryGroupIamPolicy` **cannot** be used in conjunction with `gemini.RepositoryGroupIamBinding` and `gemini.RepositoryGroupIamMember` or they will fight over what your policy should be.
334
+
335
+ > **Note:** `gemini.RepositoryGroupIamBinding` resources **can be** used in conjunction with `gemini.RepositoryGroupIamMember` resources **only if** they do not grant privilege to the same role.
336
+
337
+ ## gemini.RepositoryGroupIamPolicy
338
+
339
+ ```python
340
+ import pulumi
341
+ import pulumi_gcp as gcp
342
+
343
+ admin = gcp.organizations.get_iam_policy(bindings=[{
344
+ "role": "roles/cloudaicompanion.repositoryGroupsUser",
345
+ "members": ["user:jane@example.com"],
346
+ }])
347
+ policy = gcp.gemini.RepositoryGroupIamPolicy("policy",
348
+ project=example["project"],
349
+ location=example["location"],
350
+ code_repository_index=example["codeRepositoryIndex"],
351
+ repository_group_id=example["repositoryGroupId"],
352
+ policy_data=admin.policy_data)
353
+ ```
354
+
355
+ ## gemini.RepositoryGroupIamBinding
356
+
357
+ ```python
358
+ import pulumi
359
+ import pulumi_gcp as gcp
360
+
361
+ binding = gcp.gemini.RepositoryGroupIamBinding("binding",
362
+ project=example["project"],
363
+ location=example["location"],
364
+ code_repository_index=example["codeRepositoryIndex"],
365
+ repository_group_id=example["repositoryGroupId"],
366
+ role="roles/cloudaicompanion.repositoryGroupsUser",
367
+ members=["user:jane@example.com"])
368
+ ```
369
+
370
+ ## gemini.RepositoryGroupIamMember
371
+
372
+ ```python
373
+ import pulumi
374
+ import pulumi_gcp as gcp
375
+
376
+ member = gcp.gemini.RepositoryGroupIamMember("member",
377
+ project=example["project"],
378
+ location=example["location"],
379
+ code_repository_index=example["codeRepositoryIndex"],
380
+ repository_group_id=example["repositoryGroupId"],
381
+ role="roles/cloudaicompanion.repositoryGroupsUser",
382
+ member="user:jane@example.com")
383
+ ```
384
+
385
+ ## This resource supports User Project Overrides.
386
+
387
+ -
388
+
389
+ # IAM policy for Gemini for Google Cloud RepositoryGroup
390
+ Three different resources help you manage your IAM policy for Gemini for Google Cloud RepositoryGroup. Each of these resources serves a different use case:
391
+
392
+ * `gemini.RepositoryGroupIamPolicy`: Authoritative. Sets the IAM policy for the repositorygroup and replaces any existing policy already attached.
393
+ * `gemini.RepositoryGroupIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repositorygroup are preserved.
394
+ * `gemini.RepositoryGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repositorygroup are preserved.
395
+
396
+ A data source can be used to retrieve policy data in advent you do not need creation
397
+
398
+ * `gemini.RepositoryGroupIamPolicy`: Retrieves the IAM policy for the repositorygroup
399
+
400
+ > **Note:** `gemini.RepositoryGroupIamPolicy` **cannot** be used in conjunction with `gemini.RepositoryGroupIamBinding` and `gemini.RepositoryGroupIamMember` or they will fight over what your policy should be.
401
+
402
+ > **Note:** `gemini.RepositoryGroupIamBinding` resources **can be** used in conjunction with `gemini.RepositoryGroupIamMember` resources **only if** they do not grant privilege to the same role.
403
+
404
+ ## gemini.RepositoryGroupIamPolicy
405
+
406
+ ```python
407
+ import pulumi
408
+ import pulumi_gcp as gcp
409
+
410
+ admin = gcp.organizations.get_iam_policy(bindings=[{
411
+ "role": "roles/cloudaicompanion.repositoryGroupsUser",
412
+ "members": ["user:jane@example.com"],
413
+ }])
414
+ policy = gcp.gemini.RepositoryGroupIamPolicy("policy",
415
+ project=example["project"],
416
+ location=example["location"],
417
+ code_repository_index=example["codeRepositoryIndex"],
418
+ repository_group_id=example["repositoryGroupId"],
419
+ policy_data=admin.policy_data)
420
+ ```
421
+
422
+ ## gemini.RepositoryGroupIamBinding
423
+
424
+ ```python
425
+ import pulumi
426
+ import pulumi_gcp as gcp
427
+
428
+ binding = gcp.gemini.RepositoryGroupIamBinding("binding",
429
+ project=example["project"],
430
+ location=example["location"],
431
+ code_repository_index=example["codeRepositoryIndex"],
432
+ repository_group_id=example["repositoryGroupId"],
433
+ role="roles/cloudaicompanion.repositoryGroupsUser",
434
+ members=["user:jane@example.com"])
435
+ ```
436
+
437
+ ## gemini.RepositoryGroupIamMember
438
+
439
+ ```python
440
+ import pulumi
441
+ import pulumi_gcp as gcp
442
+
443
+ member = gcp.gemini.RepositoryGroupIamMember("member",
444
+ project=example["project"],
445
+ location=example["location"],
446
+ code_repository_index=example["codeRepositoryIndex"],
447
+ repository_group_id=example["repositoryGroupId"],
448
+ role="roles/cloudaicompanion.repositoryGroupsUser",
449
+ member="user:jane@example.com")
450
+ ```
451
+
323
452
  ## Import
324
453
 
325
454
  For all import syntaxes, the "resource in question" can take any of the following forms:
@@ -387,6 +516,135 @@ class RepositoryGroupIamBinding(pulumi.CustomResource):
387
516
  args: RepositoryGroupIamBindingArgs,
388
517
  opts: Optional[pulumi.ResourceOptions] = None):
389
518
  """
519
+ Three different resources help you manage your IAM policy for Gemini for Google Cloud RepositoryGroup. Each of these resources serves a different use case:
520
+
521
+ * `gemini.RepositoryGroupIamPolicy`: Authoritative. Sets the IAM policy for the repositorygroup and replaces any existing policy already attached.
522
+ * `gemini.RepositoryGroupIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repositorygroup are preserved.
523
+ * `gemini.RepositoryGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repositorygroup are preserved.
524
+
525
+ A data source can be used to retrieve policy data in advent you do not need creation
526
+
527
+ * `gemini.RepositoryGroupIamPolicy`: Retrieves the IAM policy for the repositorygroup
528
+
529
+ > **Note:** `gemini.RepositoryGroupIamPolicy` **cannot** be used in conjunction with `gemini.RepositoryGroupIamBinding` and `gemini.RepositoryGroupIamMember` or they will fight over what your policy should be.
530
+
531
+ > **Note:** `gemini.RepositoryGroupIamBinding` resources **can be** used in conjunction with `gemini.RepositoryGroupIamMember` resources **only if** they do not grant privilege to the same role.
532
+
533
+ ## gemini.RepositoryGroupIamPolicy
534
+
535
+ ```python
536
+ import pulumi
537
+ import pulumi_gcp as gcp
538
+
539
+ admin = gcp.organizations.get_iam_policy(bindings=[{
540
+ "role": "roles/cloudaicompanion.repositoryGroupsUser",
541
+ "members": ["user:jane@example.com"],
542
+ }])
543
+ policy = gcp.gemini.RepositoryGroupIamPolicy("policy",
544
+ project=example["project"],
545
+ location=example["location"],
546
+ code_repository_index=example["codeRepositoryIndex"],
547
+ repository_group_id=example["repositoryGroupId"],
548
+ policy_data=admin.policy_data)
549
+ ```
550
+
551
+ ## gemini.RepositoryGroupIamBinding
552
+
553
+ ```python
554
+ import pulumi
555
+ import pulumi_gcp as gcp
556
+
557
+ binding = gcp.gemini.RepositoryGroupIamBinding("binding",
558
+ project=example["project"],
559
+ location=example["location"],
560
+ code_repository_index=example["codeRepositoryIndex"],
561
+ repository_group_id=example["repositoryGroupId"],
562
+ role="roles/cloudaicompanion.repositoryGroupsUser",
563
+ members=["user:jane@example.com"])
564
+ ```
565
+
566
+ ## gemini.RepositoryGroupIamMember
567
+
568
+ ```python
569
+ import pulumi
570
+ import pulumi_gcp as gcp
571
+
572
+ member = gcp.gemini.RepositoryGroupIamMember("member",
573
+ project=example["project"],
574
+ location=example["location"],
575
+ code_repository_index=example["codeRepositoryIndex"],
576
+ repository_group_id=example["repositoryGroupId"],
577
+ role="roles/cloudaicompanion.repositoryGroupsUser",
578
+ member="user:jane@example.com")
579
+ ```
580
+
581
+ ## This resource supports User Project Overrides.
582
+
583
+ -
584
+
585
+ # IAM policy for Gemini for Google Cloud RepositoryGroup
586
+ Three different resources help you manage your IAM policy for Gemini for Google Cloud RepositoryGroup. Each of these resources serves a different use case:
587
+
588
+ * `gemini.RepositoryGroupIamPolicy`: Authoritative. Sets the IAM policy for the repositorygroup and replaces any existing policy already attached.
589
+ * `gemini.RepositoryGroupIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repositorygroup are preserved.
590
+ * `gemini.RepositoryGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repositorygroup are preserved.
591
+
592
+ A data source can be used to retrieve policy data in advent you do not need creation
593
+
594
+ * `gemini.RepositoryGroupIamPolicy`: Retrieves the IAM policy for the repositorygroup
595
+
596
+ > **Note:** `gemini.RepositoryGroupIamPolicy` **cannot** be used in conjunction with `gemini.RepositoryGroupIamBinding` and `gemini.RepositoryGroupIamMember` or they will fight over what your policy should be.
597
+
598
+ > **Note:** `gemini.RepositoryGroupIamBinding` resources **can be** used in conjunction with `gemini.RepositoryGroupIamMember` resources **only if** they do not grant privilege to the same role.
599
+
600
+ ## gemini.RepositoryGroupIamPolicy
601
+
602
+ ```python
603
+ import pulumi
604
+ import pulumi_gcp as gcp
605
+
606
+ admin = gcp.organizations.get_iam_policy(bindings=[{
607
+ "role": "roles/cloudaicompanion.repositoryGroupsUser",
608
+ "members": ["user:jane@example.com"],
609
+ }])
610
+ policy = gcp.gemini.RepositoryGroupIamPolicy("policy",
611
+ project=example["project"],
612
+ location=example["location"],
613
+ code_repository_index=example["codeRepositoryIndex"],
614
+ repository_group_id=example["repositoryGroupId"],
615
+ policy_data=admin.policy_data)
616
+ ```
617
+
618
+ ## gemini.RepositoryGroupIamBinding
619
+
620
+ ```python
621
+ import pulumi
622
+ import pulumi_gcp as gcp
623
+
624
+ binding = gcp.gemini.RepositoryGroupIamBinding("binding",
625
+ project=example["project"],
626
+ location=example["location"],
627
+ code_repository_index=example["codeRepositoryIndex"],
628
+ repository_group_id=example["repositoryGroupId"],
629
+ role="roles/cloudaicompanion.repositoryGroupsUser",
630
+ members=["user:jane@example.com"])
631
+ ```
632
+
633
+ ## gemini.RepositoryGroupIamMember
634
+
635
+ ```python
636
+ import pulumi
637
+ import pulumi_gcp as gcp
638
+
639
+ member = gcp.gemini.RepositoryGroupIamMember("member",
640
+ project=example["project"],
641
+ location=example["location"],
642
+ code_repository_index=example["codeRepositoryIndex"],
643
+ repository_group_id=example["repositoryGroupId"],
644
+ role="roles/cloudaicompanion.repositoryGroupsUser",
645
+ member="user:jane@example.com")
646
+ ```
647
+
390
648
  ## Import
391
649
 
392
650
  For all import syntaxes, the "resource in question" can take any of the following forms: