pulumi-gcp 8.21.0a1741156431__py3-none-any.whl → 8.22.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 (110) hide show
  1. pulumi_gcp/__init__.py +96 -0
  2. pulumi_gcp/alloydb/_inputs.py +66 -0
  3. pulumi_gcp/alloydb/cluster.py +148 -0
  4. pulumi_gcp/alloydb/instance.py +28 -28
  5. pulumi_gcp/alloydb/outputs.py +95 -0
  6. pulumi_gcp/apihub/__init__.py +1 -0
  7. pulumi_gcp/apihub/host_project_registration.py +535 -0
  8. pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
  9. pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
  10. pulumi_gcp/bigquery/table.py +1 -1
  11. pulumi_gcp/certificatemanager/certificate.py +53 -7
  12. pulumi_gcp/certificatemanager/outputs.py +8 -2
  13. pulumi_gcp/compute/__init__.py +6 -0
  14. pulumi_gcp/compute/_inputs.py +1370 -17
  15. pulumi_gcp/compute/backend_service.py +209 -14
  16. pulumi_gcp/compute/ca_external_account_key.py +48 -3
  17. pulumi_gcp/compute/disk.py +403 -0
  18. pulumi_gcp/compute/firewall_policy_association.py +28 -2
  19. pulumi_gcp/compute/get_backend_service.py +12 -1
  20. pulumi_gcp/compute/get_disk.py +78 -1
  21. pulumi_gcp/compute/get_instant_snapshot_iam_policy.py +182 -0
  22. pulumi_gcp/compute/get_region_disk.py +23 -1
  23. pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
  24. pulumi_gcp/compute/instant_snapshot.py +796 -0
  25. pulumi_gcp/compute/instant_snapshot_iam_binding.py +1087 -0
  26. pulumi_gcp/compute/instant_snapshot_iam_member.py +1087 -0
  27. pulumi_gcp/compute/instant_snapshot_iam_policy.py +906 -0
  28. pulumi_gcp/compute/outputs.py +1952 -29
  29. pulumi_gcp/compute/region_backend_service.py +207 -14
  30. pulumi_gcp/compute/region_disk.py +114 -0
  31. pulumi_gcp/compute/route.py +228 -2
  32. pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
  33. pulumi_gcp/compute/subnetwork.py +147 -0
  34. pulumi_gcp/compute/url_map.py +8 -0
  35. pulumi_gcp/container/_inputs.py +6 -6
  36. pulumi_gcp/container/outputs.py +8 -8
  37. pulumi_gcp/datacatalog/entry.py +4 -0
  38. pulumi_gcp/datacatalog/tag.py +4 -0
  39. pulumi_gcp/dataproc/_inputs.py +12 -15
  40. pulumi_gcp/dataproc/outputs.py +8 -10
  41. pulumi_gcp/datastream/_inputs.py +273 -0
  42. pulumi_gcp/datastream/connection_profile.py +54 -2
  43. pulumi_gcp/datastream/outputs.py +224 -0
  44. pulumi_gcp/discoveryengine/target_site.py +4 -4
  45. pulumi_gcp/eventarc/__init__.py +2 -0
  46. pulumi_gcp/eventarc/_inputs.py +80 -0
  47. pulumi_gcp/eventarc/channel.py +85 -93
  48. pulumi_gcp/eventarc/google_api_source.py +997 -0
  49. pulumi_gcp/eventarc/message_bus.py +927 -0
  50. pulumi_gcp/eventarc/outputs.py +82 -0
  51. pulumi_gcp/firebase/data_connect_service.py +40 -2
  52. pulumi_gcp/gemini/__init__.py +1 -0
  53. pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +20 -8
  54. pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +6 -0
  55. pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +734 -0
  56. pulumi_gcp/gemini/logging_setting_binding.py +7 -7
  57. pulumi_gcp/iam/__init__.py +2 -0
  58. pulumi_gcp/iam/_inputs.py +84 -27
  59. pulumi_gcp/iam/folders_policy_binding.py +10 -26
  60. pulumi_gcp/iam/oauth_client.py +979 -0
  61. pulumi_gcp/iam/oauth_client_credential.py +641 -0
  62. pulumi_gcp/iam/organizations_policy_binding.py +8 -24
  63. pulumi_gcp/iam/outputs.py +56 -18
  64. pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
  65. pulumi_gcp/iam/projects_policy_binding.py +8 -24
  66. pulumi_gcp/iam/workforce_pool_provider.py +2 -2
  67. pulumi_gcp/kms/crypto_key_version.py +14 -7
  68. pulumi_gcp/memorystore/__init__.py +1 -0
  69. pulumi_gcp/memorystore/get_instance.py +425 -0
  70. pulumi_gcp/memorystore/outputs.py +582 -0
  71. pulumi_gcp/monitoring/_inputs.py +15 -18
  72. pulumi_gcp/monitoring/alert_policy.py +46 -0
  73. pulumi_gcp/monitoring/outputs.py +10 -12
  74. pulumi_gcp/networkconnectivity/hub.py +84 -0
  75. pulumi_gcp/networksecurity/__init__.py +1 -0
  76. pulumi_gcp/networksecurity/_inputs.py +30 -18
  77. pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
  78. pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
  79. pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
  80. pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
  81. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
  82. pulumi_gcp/networksecurity/mirroring_deployment.py +178 -94
  83. pulumi_gcp/networksecurity/mirroring_deployment_group.py +161 -77
  84. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +161 -80
  85. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +137 -105
  86. pulumi_gcp/networksecurity/outputs.py +20 -12
  87. pulumi_gcp/networkservices/endpoint_policy.py +12 -0
  88. pulumi_gcp/networkservices/grpc_route.py +128 -12
  89. pulumi_gcp/networkservices/http_route.py +16 -0
  90. pulumi_gcp/networkservices/mesh.py +16 -0
  91. pulumi_gcp/networkservices/service_binding.py +14 -0
  92. pulumi_gcp/networkservices/tcp_route.py +16 -0
  93. pulumi_gcp/networkservices/tls_route.py +12 -0
  94. pulumi_gcp/notebooks/location.py +4 -0
  95. pulumi_gcp/pulumi-plugin.json +1 -1
  96. pulumi_gcp/storage/__init__.py +1 -0
  97. pulumi_gcp/storage/_inputs.py +74 -0
  98. pulumi_gcp/storage/anywhere_cache.py +552 -0
  99. pulumi_gcp/storage/outputs.py +65 -0
  100. pulumi_gcp/storage/transfer_job.py +67 -0
  101. pulumi_gcp/tpu/_inputs.py +21 -1
  102. pulumi_gcp/tpu/outputs.py +13 -1
  103. pulumi_gcp/tpu/v2_vm.py +2 -0
  104. pulumi_gcp/vmwareengine/_inputs.py +6 -0
  105. pulumi_gcp/vmwareengine/outputs.py +8 -0
  106. pulumi_gcp/workstations/workstation_cluster.py +137 -1
  107. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/METADATA +1 -1
  108. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/RECORD +110 -95
  109. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/WHEEL +1 -1
  110. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,734 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = ['GeminiGcpEnablementSettingBindingArgs', 'GeminiGcpEnablementSettingBinding']
18
+
19
+ @pulumi.input_type
20
+ class GeminiGcpEnablementSettingBindingArgs:
21
+ def __init__(__self__, *,
22
+ gemini_gcp_enablement_setting_id: pulumi.Input[str],
23
+ setting_binding_id: pulumi.Input[str],
24
+ target: pulumi.Input[str],
25
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
26
+ location: Optional[pulumi.Input[str]] = None,
27
+ product: Optional[pulumi.Input[str]] = None,
28
+ project: Optional[pulumi.Input[str]] = None):
29
+ """
30
+ The set of arguments for constructing a GeminiGcpEnablementSettingBinding resource.
31
+ :param pulumi.Input[str] gemini_gcp_enablement_setting_id: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
32
+ :param pulumi.Input[str] setting_binding_id: Id of the setting binding.
33
+
34
+
35
+ - - -
36
+ :param pulumi.Input[str] target: Target of the binding.
37
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs.
38
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
39
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
40
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
41
+ :param pulumi.Input[str] product: Product type of the setting binding.
42
+ Possible values are: `GEMINI_IN_BIGQUERY`.
43
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
44
+ If it is not provided, the provider project is used.
45
+ """
46
+ pulumi.set(__self__, "gemini_gcp_enablement_setting_id", gemini_gcp_enablement_setting_id)
47
+ pulumi.set(__self__, "setting_binding_id", setting_binding_id)
48
+ pulumi.set(__self__, "target", target)
49
+ if labels is not None:
50
+ pulumi.set(__self__, "labels", labels)
51
+ if location is not None:
52
+ pulumi.set(__self__, "location", location)
53
+ if product is not None:
54
+ pulumi.set(__self__, "product", product)
55
+ if project is not None:
56
+ pulumi.set(__self__, "project", project)
57
+
58
+ @property
59
+ @pulumi.getter(name="geminiGcpEnablementSettingId")
60
+ def gemini_gcp_enablement_setting_id(self) -> pulumi.Input[str]:
61
+ """
62
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
63
+ """
64
+ return pulumi.get(self, "gemini_gcp_enablement_setting_id")
65
+
66
+ @gemini_gcp_enablement_setting_id.setter
67
+ def gemini_gcp_enablement_setting_id(self, value: pulumi.Input[str]):
68
+ pulumi.set(self, "gemini_gcp_enablement_setting_id", value)
69
+
70
+ @property
71
+ @pulumi.getter(name="settingBindingId")
72
+ def setting_binding_id(self) -> pulumi.Input[str]:
73
+ """
74
+ Id of the setting binding.
75
+
76
+
77
+ - - -
78
+ """
79
+ return pulumi.get(self, "setting_binding_id")
80
+
81
+ @setting_binding_id.setter
82
+ def setting_binding_id(self, value: pulumi.Input[str]):
83
+ pulumi.set(self, "setting_binding_id", value)
84
+
85
+ @property
86
+ @pulumi.getter
87
+ def target(self) -> pulumi.Input[str]:
88
+ """
89
+ Target of the binding.
90
+ """
91
+ return pulumi.get(self, "target")
92
+
93
+ @target.setter
94
+ def target(self, value: pulumi.Input[str]):
95
+ pulumi.set(self, "target", value)
96
+
97
+ @property
98
+ @pulumi.getter
99
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
100
+ """
101
+ Labels as key value pairs.
102
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
103
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
104
+ """
105
+ return pulumi.get(self, "labels")
106
+
107
+ @labels.setter
108
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
109
+ pulumi.set(self, "labels", value)
110
+
111
+ @property
112
+ @pulumi.getter
113
+ def location(self) -> Optional[pulumi.Input[str]]:
114
+ """
115
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
116
+ """
117
+ return pulumi.get(self, "location")
118
+
119
+ @location.setter
120
+ def location(self, value: Optional[pulumi.Input[str]]):
121
+ pulumi.set(self, "location", value)
122
+
123
+ @property
124
+ @pulumi.getter
125
+ def product(self) -> Optional[pulumi.Input[str]]:
126
+ """
127
+ Product type of the setting binding.
128
+ Possible values are: `GEMINI_IN_BIGQUERY`.
129
+ """
130
+ return pulumi.get(self, "product")
131
+
132
+ @product.setter
133
+ def product(self, value: Optional[pulumi.Input[str]]):
134
+ pulumi.set(self, "product", value)
135
+
136
+ @property
137
+ @pulumi.getter
138
+ def project(self) -> Optional[pulumi.Input[str]]:
139
+ """
140
+ The ID of the project in which the resource belongs.
141
+ If it is not provided, the provider project is used.
142
+ """
143
+ return pulumi.get(self, "project")
144
+
145
+ @project.setter
146
+ def project(self, value: Optional[pulumi.Input[str]]):
147
+ pulumi.set(self, "project", value)
148
+
149
+
150
+ @pulumi.input_type
151
+ class _GeminiGcpEnablementSettingBindingState:
152
+ def __init__(__self__, *,
153
+ create_time: Optional[pulumi.Input[str]] = None,
154
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
155
+ gemini_gcp_enablement_setting_id: Optional[pulumi.Input[str]] = None,
156
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
157
+ location: Optional[pulumi.Input[str]] = None,
158
+ name: Optional[pulumi.Input[str]] = None,
159
+ product: Optional[pulumi.Input[str]] = None,
160
+ project: Optional[pulumi.Input[str]] = None,
161
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
162
+ setting_binding_id: Optional[pulumi.Input[str]] = None,
163
+ target: Optional[pulumi.Input[str]] = None,
164
+ update_time: Optional[pulumi.Input[str]] = None):
165
+ """
166
+ Input properties used for looking up and filtering GeminiGcpEnablementSettingBinding resources.
167
+ :param pulumi.Input[str] create_time: Create time stamp.
168
+ :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.
169
+ :param pulumi.Input[str] gemini_gcp_enablement_setting_id: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
170
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs.
171
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
172
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
173
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
174
+ :param pulumi.Input[str] name: Identifier. Name of the resource.
175
+ Format:projects/{project}/locations/{location}/geminiGcpEnablementSettings/{setting}/settingBindings/{setting_binding}
176
+ :param pulumi.Input[str] product: Product type of the setting binding.
177
+ Possible values are: `GEMINI_IN_BIGQUERY`.
178
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
179
+ If it is not provided, the provider project is used.
180
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
181
+ and default labels configured on the provider.
182
+ :param pulumi.Input[str] setting_binding_id: Id of the setting binding.
183
+
184
+
185
+ - - -
186
+ :param pulumi.Input[str] target: Target of the binding.
187
+ :param pulumi.Input[str] update_time: Update time stamp.
188
+ """
189
+ if create_time is not None:
190
+ pulumi.set(__self__, "create_time", create_time)
191
+ if effective_labels is not None:
192
+ pulumi.set(__self__, "effective_labels", effective_labels)
193
+ if gemini_gcp_enablement_setting_id is not None:
194
+ pulumi.set(__self__, "gemini_gcp_enablement_setting_id", gemini_gcp_enablement_setting_id)
195
+ if labels is not None:
196
+ pulumi.set(__self__, "labels", labels)
197
+ if location is not None:
198
+ pulumi.set(__self__, "location", location)
199
+ if name is not None:
200
+ pulumi.set(__self__, "name", name)
201
+ if product is not None:
202
+ pulumi.set(__self__, "product", product)
203
+ if project is not None:
204
+ pulumi.set(__self__, "project", project)
205
+ if pulumi_labels is not None:
206
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
207
+ if setting_binding_id is not None:
208
+ pulumi.set(__self__, "setting_binding_id", setting_binding_id)
209
+ if target is not None:
210
+ pulumi.set(__self__, "target", target)
211
+ if update_time is not None:
212
+ pulumi.set(__self__, "update_time", update_time)
213
+
214
+ @property
215
+ @pulumi.getter(name="createTime")
216
+ def create_time(self) -> Optional[pulumi.Input[str]]:
217
+ """
218
+ Create time stamp.
219
+ """
220
+ return pulumi.get(self, "create_time")
221
+
222
+ @create_time.setter
223
+ def create_time(self, value: Optional[pulumi.Input[str]]):
224
+ pulumi.set(self, "create_time", value)
225
+
226
+ @property
227
+ @pulumi.getter(name="effectiveLabels")
228
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
229
+ """
230
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
231
+ """
232
+ return pulumi.get(self, "effective_labels")
233
+
234
+ @effective_labels.setter
235
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
236
+ pulumi.set(self, "effective_labels", value)
237
+
238
+ @property
239
+ @pulumi.getter(name="geminiGcpEnablementSettingId")
240
+ def gemini_gcp_enablement_setting_id(self) -> Optional[pulumi.Input[str]]:
241
+ """
242
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
243
+ """
244
+ return pulumi.get(self, "gemini_gcp_enablement_setting_id")
245
+
246
+ @gemini_gcp_enablement_setting_id.setter
247
+ def gemini_gcp_enablement_setting_id(self, value: Optional[pulumi.Input[str]]):
248
+ pulumi.set(self, "gemini_gcp_enablement_setting_id", value)
249
+
250
+ @property
251
+ @pulumi.getter
252
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
253
+ """
254
+ Labels as key value pairs.
255
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
256
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
257
+ """
258
+ return pulumi.get(self, "labels")
259
+
260
+ @labels.setter
261
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
262
+ pulumi.set(self, "labels", value)
263
+
264
+ @property
265
+ @pulumi.getter
266
+ def location(self) -> Optional[pulumi.Input[str]]:
267
+ """
268
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
269
+ """
270
+ return pulumi.get(self, "location")
271
+
272
+ @location.setter
273
+ def location(self, value: Optional[pulumi.Input[str]]):
274
+ pulumi.set(self, "location", value)
275
+
276
+ @property
277
+ @pulumi.getter
278
+ def name(self) -> Optional[pulumi.Input[str]]:
279
+ """
280
+ Identifier. Name of the resource.
281
+ Format:projects/{project}/locations/{location}/geminiGcpEnablementSettings/{setting}/settingBindings/{setting_binding}
282
+ """
283
+ return pulumi.get(self, "name")
284
+
285
+ @name.setter
286
+ def name(self, value: Optional[pulumi.Input[str]]):
287
+ pulumi.set(self, "name", value)
288
+
289
+ @property
290
+ @pulumi.getter
291
+ def product(self) -> Optional[pulumi.Input[str]]:
292
+ """
293
+ Product type of the setting binding.
294
+ Possible values are: `GEMINI_IN_BIGQUERY`.
295
+ """
296
+ return pulumi.get(self, "product")
297
+
298
+ @product.setter
299
+ def product(self, value: Optional[pulumi.Input[str]]):
300
+ pulumi.set(self, "product", value)
301
+
302
+ @property
303
+ @pulumi.getter
304
+ def project(self) -> Optional[pulumi.Input[str]]:
305
+ """
306
+ The ID of the project in which the resource belongs.
307
+ If it is not provided, the provider project is used.
308
+ """
309
+ return pulumi.get(self, "project")
310
+
311
+ @project.setter
312
+ def project(self, value: Optional[pulumi.Input[str]]):
313
+ pulumi.set(self, "project", value)
314
+
315
+ @property
316
+ @pulumi.getter(name="pulumiLabels")
317
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
318
+ """
319
+ The combination of labels configured directly on the resource
320
+ and default labels configured on the provider.
321
+ """
322
+ return pulumi.get(self, "pulumi_labels")
323
+
324
+ @pulumi_labels.setter
325
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
326
+ pulumi.set(self, "pulumi_labels", value)
327
+
328
+ @property
329
+ @pulumi.getter(name="settingBindingId")
330
+ def setting_binding_id(self) -> Optional[pulumi.Input[str]]:
331
+ """
332
+ Id of the setting binding.
333
+
334
+
335
+ - - -
336
+ """
337
+ return pulumi.get(self, "setting_binding_id")
338
+
339
+ @setting_binding_id.setter
340
+ def setting_binding_id(self, value: Optional[pulumi.Input[str]]):
341
+ pulumi.set(self, "setting_binding_id", value)
342
+
343
+ @property
344
+ @pulumi.getter
345
+ def target(self) -> Optional[pulumi.Input[str]]:
346
+ """
347
+ Target of the binding.
348
+ """
349
+ return pulumi.get(self, "target")
350
+
351
+ @target.setter
352
+ def target(self, value: Optional[pulumi.Input[str]]):
353
+ pulumi.set(self, "target", value)
354
+
355
+ @property
356
+ @pulumi.getter(name="updateTime")
357
+ def update_time(self) -> Optional[pulumi.Input[str]]:
358
+ """
359
+ Update time stamp.
360
+ """
361
+ return pulumi.get(self, "update_time")
362
+
363
+ @update_time.setter
364
+ def update_time(self, value: Optional[pulumi.Input[str]]):
365
+ pulumi.set(self, "update_time", value)
366
+
367
+
368
+ class GeminiGcpEnablementSettingBinding(pulumi.CustomResource):
369
+ @overload
370
+ def __init__(__self__,
371
+ resource_name: str,
372
+ opts: Optional[pulumi.ResourceOptions] = None,
373
+ gemini_gcp_enablement_setting_id: Optional[pulumi.Input[str]] = None,
374
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
375
+ location: Optional[pulumi.Input[str]] = None,
376
+ product: Optional[pulumi.Input[str]] = None,
377
+ project: Optional[pulumi.Input[str]] = None,
378
+ setting_binding_id: Optional[pulumi.Input[str]] = None,
379
+ target: Optional[pulumi.Input[str]] = None,
380
+ __props__=None):
381
+ """
382
+ The resource for managing GeminiGcpEnablementSetting setting bindings for Admin Control.
383
+
384
+ To get more information about GeminiGcpEnablementSettingBinding, see:
385
+ * How-to Guides
386
+ * [Gemini Cloud Assist overview](https://cloud.google.com/gemini/docs/cloud-assist/overview)
387
+
388
+ ## Example Usage
389
+
390
+ ### Gemini Gemini Gcp Enablement Setting Binding Basic
391
+
392
+ ```python
393
+ import pulumi
394
+ import pulumi_gcp as gcp
395
+
396
+ basic = gcp.gemini.GeminiGcpEnablementSetting("basic",
397
+ gemini_gcp_enablement_setting_id="ls-tf1",
398
+ location="global",
399
+ labels={
400
+ "my_key": "my_value",
401
+ },
402
+ enable_customer_data_sharing=True)
403
+ example = gcp.gemini.GeminiGcpEnablementSettingBinding("example",
404
+ gemini_gcp_enablement_setting_id=basic.gemini_gcp_enablement_setting_id,
405
+ setting_binding_id="ls-tf1b1",
406
+ location="global",
407
+ target="projects/980109375338")
408
+ ```
409
+
410
+ ## Import
411
+
412
+ GeminiGcpEnablementSettingBinding can be imported using any of these accepted formats:
413
+
414
+ * `projects/{{project}}/locations/{{location}}/geminiGcpEnablementSettings/{{gemini_gcp_enablement_setting_id}}/settingBindings/{{setting_binding_id}}`
415
+
416
+ * `{{project}}/{{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}`
417
+
418
+ * `{{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}`
419
+
420
+ When using the `pulumi import` command, GeminiGcpEnablementSettingBinding can be imported using one of the formats above. For example:
421
+
422
+ ```sh
423
+ $ pulumi import gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding default projects/{{project}}/locations/{{location}}/geminiGcpEnablementSettings/{{gemini_gcp_enablement_setting_id}}/settingBindings/{{setting_binding_id}}
424
+ ```
425
+
426
+ ```sh
427
+ $ pulumi import gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding default {{project}}/{{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}
428
+ ```
429
+
430
+ ```sh
431
+ $ pulumi import gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding default {{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}
432
+ ```
433
+
434
+ :param str resource_name: The name of the resource.
435
+ :param pulumi.ResourceOptions opts: Options for the resource.
436
+ :param pulumi.Input[str] gemini_gcp_enablement_setting_id: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
437
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs.
438
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
439
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
440
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
441
+ :param pulumi.Input[str] product: Product type of the setting binding.
442
+ Possible values are: `GEMINI_IN_BIGQUERY`.
443
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
444
+ If it is not provided, the provider project is used.
445
+ :param pulumi.Input[str] setting_binding_id: Id of the setting binding.
446
+
447
+
448
+ - - -
449
+ :param pulumi.Input[str] target: Target of the binding.
450
+ """
451
+ ...
452
+ @overload
453
+ def __init__(__self__,
454
+ resource_name: str,
455
+ args: GeminiGcpEnablementSettingBindingArgs,
456
+ opts: Optional[pulumi.ResourceOptions] = None):
457
+ """
458
+ The resource for managing GeminiGcpEnablementSetting setting bindings for Admin Control.
459
+
460
+ To get more information about GeminiGcpEnablementSettingBinding, see:
461
+ * How-to Guides
462
+ * [Gemini Cloud Assist overview](https://cloud.google.com/gemini/docs/cloud-assist/overview)
463
+
464
+ ## Example Usage
465
+
466
+ ### Gemini Gemini Gcp Enablement Setting Binding Basic
467
+
468
+ ```python
469
+ import pulumi
470
+ import pulumi_gcp as gcp
471
+
472
+ basic = gcp.gemini.GeminiGcpEnablementSetting("basic",
473
+ gemini_gcp_enablement_setting_id="ls-tf1",
474
+ location="global",
475
+ labels={
476
+ "my_key": "my_value",
477
+ },
478
+ enable_customer_data_sharing=True)
479
+ example = gcp.gemini.GeminiGcpEnablementSettingBinding("example",
480
+ gemini_gcp_enablement_setting_id=basic.gemini_gcp_enablement_setting_id,
481
+ setting_binding_id="ls-tf1b1",
482
+ location="global",
483
+ target="projects/980109375338")
484
+ ```
485
+
486
+ ## Import
487
+
488
+ GeminiGcpEnablementSettingBinding can be imported using any of these accepted formats:
489
+
490
+ * `projects/{{project}}/locations/{{location}}/geminiGcpEnablementSettings/{{gemini_gcp_enablement_setting_id}}/settingBindings/{{setting_binding_id}}`
491
+
492
+ * `{{project}}/{{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}`
493
+
494
+ * `{{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}`
495
+
496
+ When using the `pulumi import` command, GeminiGcpEnablementSettingBinding can be imported using one of the formats above. For example:
497
+
498
+ ```sh
499
+ $ pulumi import gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding default projects/{{project}}/locations/{{location}}/geminiGcpEnablementSettings/{{gemini_gcp_enablement_setting_id}}/settingBindings/{{setting_binding_id}}
500
+ ```
501
+
502
+ ```sh
503
+ $ pulumi import gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding default {{project}}/{{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}
504
+ ```
505
+
506
+ ```sh
507
+ $ pulumi import gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding default {{location}}/{{gemini_gcp_enablement_setting_id}}/{{setting_binding_id}}
508
+ ```
509
+
510
+ :param str resource_name: The name of the resource.
511
+ :param GeminiGcpEnablementSettingBindingArgs args: The arguments to use to populate this resource's properties.
512
+ :param pulumi.ResourceOptions opts: Options for the resource.
513
+ """
514
+ ...
515
+ def __init__(__self__, resource_name: str, *args, **kwargs):
516
+ resource_args, opts = _utilities.get_resource_args_opts(GeminiGcpEnablementSettingBindingArgs, pulumi.ResourceOptions, *args, **kwargs)
517
+ if resource_args is not None:
518
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
519
+ else:
520
+ __self__._internal_init(resource_name, *args, **kwargs)
521
+
522
+ def _internal_init(__self__,
523
+ resource_name: str,
524
+ opts: Optional[pulumi.ResourceOptions] = None,
525
+ gemini_gcp_enablement_setting_id: Optional[pulumi.Input[str]] = None,
526
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
527
+ location: Optional[pulumi.Input[str]] = None,
528
+ product: Optional[pulumi.Input[str]] = None,
529
+ project: Optional[pulumi.Input[str]] = None,
530
+ setting_binding_id: Optional[pulumi.Input[str]] = None,
531
+ target: Optional[pulumi.Input[str]] = None,
532
+ __props__=None):
533
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
534
+ if not isinstance(opts, pulumi.ResourceOptions):
535
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
536
+ if opts.id is None:
537
+ if __props__ is not None:
538
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
539
+ __props__ = GeminiGcpEnablementSettingBindingArgs.__new__(GeminiGcpEnablementSettingBindingArgs)
540
+
541
+ if gemini_gcp_enablement_setting_id is None and not opts.urn:
542
+ raise TypeError("Missing required property 'gemini_gcp_enablement_setting_id'")
543
+ __props__.__dict__["gemini_gcp_enablement_setting_id"] = gemini_gcp_enablement_setting_id
544
+ __props__.__dict__["labels"] = labels
545
+ __props__.__dict__["location"] = location
546
+ __props__.__dict__["product"] = product
547
+ __props__.__dict__["project"] = project
548
+ if setting_binding_id is None and not opts.urn:
549
+ raise TypeError("Missing required property 'setting_binding_id'")
550
+ __props__.__dict__["setting_binding_id"] = setting_binding_id
551
+ if target is None and not opts.urn:
552
+ raise TypeError("Missing required property 'target'")
553
+ __props__.__dict__["target"] = target
554
+ __props__.__dict__["create_time"] = None
555
+ __props__.__dict__["effective_labels"] = None
556
+ __props__.__dict__["name"] = None
557
+ __props__.__dict__["pulumi_labels"] = None
558
+ __props__.__dict__["update_time"] = None
559
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
560
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
561
+ super(GeminiGcpEnablementSettingBinding, __self__).__init__(
562
+ 'gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding',
563
+ resource_name,
564
+ __props__,
565
+ opts)
566
+
567
+ @staticmethod
568
+ def get(resource_name: str,
569
+ id: pulumi.Input[str],
570
+ opts: Optional[pulumi.ResourceOptions] = None,
571
+ create_time: Optional[pulumi.Input[str]] = None,
572
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
573
+ gemini_gcp_enablement_setting_id: Optional[pulumi.Input[str]] = None,
574
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
575
+ location: Optional[pulumi.Input[str]] = None,
576
+ name: Optional[pulumi.Input[str]] = None,
577
+ product: Optional[pulumi.Input[str]] = None,
578
+ project: Optional[pulumi.Input[str]] = None,
579
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
580
+ setting_binding_id: Optional[pulumi.Input[str]] = None,
581
+ target: Optional[pulumi.Input[str]] = None,
582
+ update_time: Optional[pulumi.Input[str]] = None) -> 'GeminiGcpEnablementSettingBinding':
583
+ """
584
+ Get an existing GeminiGcpEnablementSettingBinding resource's state with the given name, id, and optional extra
585
+ properties used to qualify the lookup.
586
+
587
+ :param str resource_name: The unique name of the resulting resource.
588
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
589
+ :param pulumi.ResourceOptions opts: Options for the resource.
590
+ :param pulumi.Input[str] create_time: Create time stamp.
591
+ :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.
592
+ :param pulumi.Input[str] gemini_gcp_enablement_setting_id: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
593
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs.
594
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
595
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
596
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
597
+ :param pulumi.Input[str] name: Identifier. Name of the resource.
598
+ Format:projects/{project}/locations/{location}/geminiGcpEnablementSettings/{setting}/settingBindings/{setting_binding}
599
+ :param pulumi.Input[str] product: Product type of the setting binding.
600
+ Possible values are: `GEMINI_IN_BIGQUERY`.
601
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
602
+ If it is not provided, the provider project is used.
603
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
604
+ and default labels configured on the provider.
605
+ :param pulumi.Input[str] setting_binding_id: Id of the setting binding.
606
+
607
+
608
+ - - -
609
+ :param pulumi.Input[str] target: Target of the binding.
610
+ :param pulumi.Input[str] update_time: Update time stamp.
611
+ """
612
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
613
+
614
+ __props__ = _GeminiGcpEnablementSettingBindingState.__new__(_GeminiGcpEnablementSettingBindingState)
615
+
616
+ __props__.__dict__["create_time"] = create_time
617
+ __props__.__dict__["effective_labels"] = effective_labels
618
+ __props__.__dict__["gemini_gcp_enablement_setting_id"] = gemini_gcp_enablement_setting_id
619
+ __props__.__dict__["labels"] = labels
620
+ __props__.__dict__["location"] = location
621
+ __props__.__dict__["name"] = name
622
+ __props__.__dict__["product"] = product
623
+ __props__.__dict__["project"] = project
624
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
625
+ __props__.__dict__["setting_binding_id"] = setting_binding_id
626
+ __props__.__dict__["target"] = target
627
+ __props__.__dict__["update_time"] = update_time
628
+ return GeminiGcpEnablementSettingBinding(resource_name, opts=opts, __props__=__props__)
629
+
630
+ @property
631
+ @pulumi.getter(name="createTime")
632
+ def create_time(self) -> pulumi.Output[str]:
633
+ """
634
+ Create time stamp.
635
+ """
636
+ return pulumi.get(self, "create_time")
637
+
638
+ @property
639
+ @pulumi.getter(name="effectiveLabels")
640
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
641
+ """
642
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
643
+ """
644
+ return pulumi.get(self, "effective_labels")
645
+
646
+ @property
647
+ @pulumi.getter(name="geminiGcpEnablementSettingId")
648
+ def gemini_gcp_enablement_setting_id(self) -> pulumi.Output[str]:
649
+ """
650
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
651
+ """
652
+ return pulumi.get(self, "gemini_gcp_enablement_setting_id")
653
+
654
+ @property
655
+ @pulumi.getter
656
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
657
+ """
658
+ Labels as key value pairs.
659
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
660
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
661
+ """
662
+ return pulumi.get(self, "labels")
663
+
664
+ @property
665
+ @pulumi.getter
666
+ def location(self) -> pulumi.Output[Optional[str]]:
667
+ """
668
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
669
+ """
670
+ return pulumi.get(self, "location")
671
+
672
+ @property
673
+ @pulumi.getter
674
+ def name(self) -> pulumi.Output[str]:
675
+ """
676
+ Identifier. Name of the resource.
677
+ Format:projects/{project}/locations/{location}/geminiGcpEnablementSettings/{setting}/settingBindings/{setting_binding}
678
+ """
679
+ return pulumi.get(self, "name")
680
+
681
+ @property
682
+ @pulumi.getter
683
+ def product(self) -> pulumi.Output[str]:
684
+ """
685
+ Product type of the setting binding.
686
+ Possible values are: `GEMINI_IN_BIGQUERY`.
687
+ """
688
+ return pulumi.get(self, "product")
689
+
690
+ @property
691
+ @pulumi.getter
692
+ def project(self) -> pulumi.Output[str]:
693
+ """
694
+ The ID of the project in which the resource belongs.
695
+ If it is not provided, the provider project is used.
696
+ """
697
+ return pulumi.get(self, "project")
698
+
699
+ @property
700
+ @pulumi.getter(name="pulumiLabels")
701
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
702
+ """
703
+ The combination of labels configured directly on the resource
704
+ and default labels configured on the provider.
705
+ """
706
+ return pulumi.get(self, "pulumi_labels")
707
+
708
+ @property
709
+ @pulumi.getter(name="settingBindingId")
710
+ def setting_binding_id(self) -> pulumi.Output[str]:
711
+ """
712
+ Id of the setting binding.
713
+
714
+
715
+ - - -
716
+ """
717
+ return pulumi.get(self, "setting_binding_id")
718
+
719
+ @property
720
+ @pulumi.getter
721
+ def target(self) -> pulumi.Output[str]:
722
+ """
723
+ Target of the binding.
724
+ """
725
+ return pulumi.get(self, "target")
726
+
727
+ @property
728
+ @pulumi.getter(name="updateTime")
729
+ def update_time(self) -> pulumi.Output[str]:
730
+ """
731
+ Update time stamp.
732
+ """
733
+ return pulumi.get(self, "update_time")
734
+