pulumi-gcp 8.19.0a1739290509__py3-none-any.whl → 8.19.1a1739444689__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 (76) hide show
  1. pulumi_gcp/__init__.py +80 -0
  2. pulumi_gcp/_utilities.py +8 -4
  3. pulumi_gcp/accesscontextmanager/_inputs.py +288 -78
  4. pulumi_gcp/accesscontextmanager/outputs.py +186 -54
  5. pulumi_gcp/appengine/_inputs.py +3 -0
  6. pulumi_gcp/appengine/outputs.py +2 -0
  7. pulumi_gcp/beyondcorp/__init__.py +5 -0
  8. pulumi_gcp/beyondcorp/_inputs.py +189 -0
  9. pulumi_gcp/beyondcorp/application.py +604 -0
  10. pulumi_gcp/beyondcorp/application_iam_binding.py +1049 -0
  11. pulumi_gcp/beyondcorp/application_iam_member.py +1049 -0
  12. pulumi_gcp/beyondcorp/application_iam_policy.py +868 -0
  13. pulumi_gcp/beyondcorp/get_application_iam_policy.py +174 -0
  14. pulumi_gcp/beyondcorp/outputs.py +111 -0
  15. pulumi_gcp/bigqueryanalyticshub/__init__.py +1 -0
  16. pulumi_gcp/bigqueryanalyticshub/_inputs.py +318 -0
  17. pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +808 -0
  18. pulumi_gcp/bigqueryanalyticshub/outputs.py +263 -0
  19. pulumi_gcp/certificateauthority/_inputs.py +54 -0
  20. pulumi_gcp/certificateauthority/authority.py +149 -3
  21. pulumi_gcp/certificateauthority/get_authority.py +15 -4
  22. pulumi_gcp/certificateauthority/outputs.py +81 -0
  23. pulumi_gcp/cloudrunv2/_inputs.py +112 -0
  24. pulumi_gcp/cloudrunv2/outputs.py +144 -1
  25. pulumi_gcp/cloudrunv2/service.py +2 -0
  26. pulumi_gcp/colab/__init__.py +2 -0
  27. pulumi_gcp/colab/_inputs.py +655 -0
  28. pulumi_gcp/colab/notebook_execution.py +1259 -0
  29. pulumi_gcp/colab/outputs.py +512 -0
  30. pulumi_gcp/colab/runtime.py +266 -2
  31. pulumi_gcp/colab/runtime_template.py +79 -3
  32. pulumi_gcp/colab/schedule.py +1318 -0
  33. pulumi_gcp/compute/__init__.py +1 -0
  34. pulumi_gcp/compute/_inputs.py +204 -0
  35. pulumi_gcp/compute/firewall_policy.py +54 -43
  36. pulumi_gcp/compute/forwarding_rule.py +103 -0
  37. pulumi_gcp/compute/get_forwarding_rule.py +12 -1
  38. pulumi_gcp/compute/interconnect_attachment.py +12 -0
  39. pulumi_gcp/compute/network_firewall_policy_packet_mirroring_rule.py +1011 -0
  40. pulumi_gcp/compute/outputs.py +187 -0
  41. pulumi_gcp/compute/public_advertised_prefix.py +35 -7
  42. pulumi_gcp/compute/public_delegated_prefix.py +171 -7
  43. pulumi_gcp/compute/region_resize_request.py +21 -22
  44. pulumi_gcp/compute/resize_request.py +22 -23
  45. pulumi_gcp/compute/subnetwork.py +14 -7
  46. pulumi_gcp/container/_inputs.py +54 -1
  47. pulumi_gcp/container/outputs.py +79 -1
  48. pulumi_gcp/datastream/connection_profile.py +120 -46
  49. pulumi_gcp/discoveryengine/chat_engine.py +7 -7
  50. pulumi_gcp/filestore/_inputs.py +222 -0
  51. pulumi_gcp/filestore/get_instance.py +23 -1
  52. pulumi_gcp/filestore/instance.py +86 -0
  53. pulumi_gcp/filestore/outputs.py +282 -0
  54. pulumi_gcp/gemini/__init__.py +2 -0
  55. pulumi_gcp/gemini/logging_setting.py +671 -0
  56. pulumi_gcp/gemini/release_channel_setting.py +639 -0
  57. pulumi_gcp/memorystore/_inputs.py +296 -0
  58. pulumi_gcp/memorystore/instance.py +32 -28
  59. pulumi_gcp/memorystore/outputs.py +224 -0
  60. pulumi_gcp/monitoring/_inputs.py +12 -9
  61. pulumi_gcp/monitoring/outputs.py +8 -6
  62. pulumi_gcp/networkservices/_inputs.py +89 -0
  63. pulumi_gcp/networkservices/outputs.py +75 -0
  64. pulumi_gcp/parametermanager/__init__.py +2 -0
  65. pulumi_gcp/parametermanager/get_parameter_version_render.py +199 -0
  66. pulumi_gcp/parametermanager/get_regional_parameter_version_render.py +220 -0
  67. pulumi_gcp/privilegedaccessmanager/entitlement.py +14 -0
  68. pulumi_gcp/pulumi-plugin.json +1 -1
  69. pulumi_gcp/securesourcemanager/branch_rule.py +4 -0
  70. pulumi_gcp/securesourcemanager/repository.py +4 -0
  71. pulumi_gcp/storage/bucket_object.py +8 -0
  72. pulumi_gcp/workbench/instance.py +70 -2
  73. {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/METADATA +1 -1
  74. {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/RECORD +76 -63
  75. {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/WHEEL +0 -0
  76. {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,671 @@
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__ = ['LoggingSettingArgs', 'LoggingSetting']
18
+
19
+ @pulumi.input_type
20
+ class LoggingSettingArgs:
21
+ def __init__(__self__, *,
22
+ location: pulumi.Input[str],
23
+ logging_setting_id: pulumi.Input[str],
24
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
25
+ log_metadata: Optional[pulumi.Input[bool]] = None,
26
+ log_prompts_and_responses: Optional[pulumi.Input[bool]] = None,
27
+ project: Optional[pulumi.Input[str]] = None):
28
+ """
29
+ The set of arguments for constructing a LoggingSetting resource.
30
+ :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.
31
+ :param pulumi.Input[str] logging_setting_id: Required. Id of the requesting object.
32
+ If auto-generating Id server-side, remove this field and
33
+ setting_id from the method_signature of Create RPC.
34
+
35
+
36
+ - - -
37
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. 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[bool] log_metadata: Optional. Whether to log metadata.
41
+ :param pulumi.Input[bool] log_prompts_and_responses: Optional. Whether to log prompts and responses.
42
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
43
+ If it is not provided, the provider project is used.
44
+ """
45
+ pulumi.set(__self__, "location", location)
46
+ pulumi.set(__self__, "logging_setting_id", logging_setting_id)
47
+ if labels is not None:
48
+ pulumi.set(__self__, "labels", labels)
49
+ if log_metadata is not None:
50
+ pulumi.set(__self__, "log_metadata", log_metadata)
51
+ if log_prompts_and_responses is not None:
52
+ pulumi.set(__self__, "log_prompts_and_responses", log_prompts_and_responses)
53
+ if project is not None:
54
+ pulumi.set(__self__, "project", project)
55
+
56
+ @property
57
+ @pulumi.getter
58
+ def location(self) -> pulumi.Input[str]:
59
+ """
60
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
61
+ """
62
+ return pulumi.get(self, "location")
63
+
64
+ @location.setter
65
+ def location(self, value: pulumi.Input[str]):
66
+ pulumi.set(self, "location", value)
67
+
68
+ @property
69
+ @pulumi.getter(name="loggingSettingId")
70
+ def logging_setting_id(self) -> pulumi.Input[str]:
71
+ """
72
+ Required. Id of the requesting object.
73
+ If auto-generating Id server-side, remove this field and
74
+ setting_id from the method_signature of Create RPC.
75
+
76
+
77
+ - - -
78
+ """
79
+ return pulumi.get(self, "logging_setting_id")
80
+
81
+ @logging_setting_id.setter
82
+ def logging_setting_id(self, value: pulumi.Input[str]):
83
+ pulumi.set(self, "logging_setting_id", value)
84
+
85
+ @property
86
+ @pulumi.getter
87
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
88
+ """
89
+ Optional. Labels as key value pairs.
90
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
91
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
92
+ """
93
+ return pulumi.get(self, "labels")
94
+
95
+ @labels.setter
96
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
97
+ pulumi.set(self, "labels", value)
98
+
99
+ @property
100
+ @pulumi.getter(name="logMetadata")
101
+ def log_metadata(self) -> Optional[pulumi.Input[bool]]:
102
+ """
103
+ Optional. Whether to log metadata.
104
+ """
105
+ return pulumi.get(self, "log_metadata")
106
+
107
+ @log_metadata.setter
108
+ def log_metadata(self, value: Optional[pulumi.Input[bool]]):
109
+ pulumi.set(self, "log_metadata", value)
110
+
111
+ @property
112
+ @pulumi.getter(name="logPromptsAndResponses")
113
+ def log_prompts_and_responses(self) -> Optional[pulumi.Input[bool]]:
114
+ """
115
+ Optional. Whether to log prompts and responses.
116
+ """
117
+ return pulumi.get(self, "log_prompts_and_responses")
118
+
119
+ @log_prompts_and_responses.setter
120
+ def log_prompts_and_responses(self, value: Optional[pulumi.Input[bool]]):
121
+ pulumi.set(self, "log_prompts_and_responses", value)
122
+
123
+ @property
124
+ @pulumi.getter
125
+ def project(self) -> Optional[pulumi.Input[str]]:
126
+ """
127
+ The ID of the project in which the resource belongs.
128
+ If it is not provided, the provider project is used.
129
+ """
130
+ return pulumi.get(self, "project")
131
+
132
+ @project.setter
133
+ def project(self, value: Optional[pulumi.Input[str]]):
134
+ pulumi.set(self, "project", value)
135
+
136
+
137
+ @pulumi.input_type
138
+ class _LoggingSettingState:
139
+ def __init__(__self__, *,
140
+ create_time: Optional[pulumi.Input[str]] = None,
141
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
142
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
143
+ location: Optional[pulumi.Input[str]] = None,
144
+ log_metadata: Optional[pulumi.Input[bool]] = None,
145
+ log_prompts_and_responses: Optional[pulumi.Input[bool]] = None,
146
+ logging_setting_id: Optional[pulumi.Input[str]] = None,
147
+ name: Optional[pulumi.Input[str]] = None,
148
+ project: Optional[pulumi.Input[str]] = None,
149
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
150
+ update_time: Optional[pulumi.Input[str]] = None):
151
+ """
152
+ Input properties used for looking up and filtering LoggingSetting resources.
153
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create time stamp.
154
+ :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.
155
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs.
156
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
157
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
158
+ :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.
159
+ :param pulumi.Input[bool] log_metadata: Optional. Whether to log metadata.
160
+ :param pulumi.Input[bool] log_prompts_and_responses: Optional. Whether to log prompts and responses.
161
+ :param pulumi.Input[str] logging_setting_id: Required. Id of the requesting object.
162
+ If auto-generating Id server-side, remove this field and
163
+ setting_id from the method_signature of Create RPC.
164
+
165
+
166
+ - - -
167
+ :param pulumi.Input[str] name: Identifier. Name of the resource.
168
+ Format:projects/{project}/locations/{location}/loggingsettings/{loggingsetting}
169
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
170
+ If it is not provided, the provider project is used.
171
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
172
+ and default labels configured on the provider.
173
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update time stamp.
174
+ """
175
+ if create_time is not None:
176
+ pulumi.set(__self__, "create_time", create_time)
177
+ if effective_labels is not None:
178
+ pulumi.set(__self__, "effective_labels", effective_labels)
179
+ if labels is not None:
180
+ pulumi.set(__self__, "labels", labels)
181
+ if location is not None:
182
+ pulumi.set(__self__, "location", location)
183
+ if log_metadata is not None:
184
+ pulumi.set(__self__, "log_metadata", log_metadata)
185
+ if log_prompts_and_responses is not None:
186
+ pulumi.set(__self__, "log_prompts_and_responses", log_prompts_and_responses)
187
+ if logging_setting_id is not None:
188
+ pulumi.set(__self__, "logging_setting_id", logging_setting_id)
189
+ if name is not None:
190
+ pulumi.set(__self__, "name", name)
191
+ if project is not None:
192
+ pulumi.set(__self__, "project", project)
193
+ if pulumi_labels is not None:
194
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
195
+ if update_time is not None:
196
+ pulumi.set(__self__, "update_time", update_time)
197
+
198
+ @property
199
+ @pulumi.getter(name="createTime")
200
+ def create_time(self) -> Optional[pulumi.Input[str]]:
201
+ """
202
+ Output only. [Output only] Create time stamp.
203
+ """
204
+ return pulumi.get(self, "create_time")
205
+
206
+ @create_time.setter
207
+ def create_time(self, value: Optional[pulumi.Input[str]]):
208
+ pulumi.set(self, "create_time", value)
209
+
210
+ @property
211
+ @pulumi.getter(name="effectiveLabels")
212
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
213
+ """
214
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
215
+ """
216
+ return pulumi.get(self, "effective_labels")
217
+
218
+ @effective_labels.setter
219
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
220
+ pulumi.set(self, "effective_labels", value)
221
+
222
+ @property
223
+ @pulumi.getter
224
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
225
+ """
226
+ Optional. Labels as key value pairs.
227
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
228
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
229
+ """
230
+ return pulumi.get(self, "labels")
231
+
232
+ @labels.setter
233
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
234
+ pulumi.set(self, "labels", value)
235
+
236
+ @property
237
+ @pulumi.getter
238
+ def location(self) -> Optional[pulumi.Input[str]]:
239
+ """
240
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
241
+ """
242
+ return pulumi.get(self, "location")
243
+
244
+ @location.setter
245
+ def location(self, value: Optional[pulumi.Input[str]]):
246
+ pulumi.set(self, "location", value)
247
+
248
+ @property
249
+ @pulumi.getter(name="logMetadata")
250
+ def log_metadata(self) -> Optional[pulumi.Input[bool]]:
251
+ """
252
+ Optional. Whether to log metadata.
253
+ """
254
+ return pulumi.get(self, "log_metadata")
255
+
256
+ @log_metadata.setter
257
+ def log_metadata(self, value: Optional[pulumi.Input[bool]]):
258
+ pulumi.set(self, "log_metadata", value)
259
+
260
+ @property
261
+ @pulumi.getter(name="logPromptsAndResponses")
262
+ def log_prompts_and_responses(self) -> Optional[pulumi.Input[bool]]:
263
+ """
264
+ Optional. Whether to log prompts and responses.
265
+ """
266
+ return pulumi.get(self, "log_prompts_and_responses")
267
+
268
+ @log_prompts_and_responses.setter
269
+ def log_prompts_and_responses(self, value: Optional[pulumi.Input[bool]]):
270
+ pulumi.set(self, "log_prompts_and_responses", value)
271
+
272
+ @property
273
+ @pulumi.getter(name="loggingSettingId")
274
+ def logging_setting_id(self) -> Optional[pulumi.Input[str]]:
275
+ """
276
+ Required. Id of the requesting object.
277
+ If auto-generating Id server-side, remove this field and
278
+ setting_id from the method_signature of Create RPC.
279
+
280
+
281
+ - - -
282
+ """
283
+ return pulumi.get(self, "logging_setting_id")
284
+
285
+ @logging_setting_id.setter
286
+ def logging_setting_id(self, value: Optional[pulumi.Input[str]]):
287
+ pulumi.set(self, "logging_setting_id", value)
288
+
289
+ @property
290
+ @pulumi.getter
291
+ def name(self) -> Optional[pulumi.Input[str]]:
292
+ """
293
+ Identifier. Name of the resource.
294
+ Format:projects/{project}/locations/{location}/loggingsettings/{loggingsetting}
295
+ """
296
+ return pulumi.get(self, "name")
297
+
298
+ @name.setter
299
+ def name(self, value: Optional[pulumi.Input[str]]):
300
+ pulumi.set(self, "name", 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="updateTime")
330
+ def update_time(self) -> Optional[pulumi.Input[str]]:
331
+ """
332
+ Output only. [Output only] Update time stamp.
333
+ """
334
+ return pulumi.get(self, "update_time")
335
+
336
+ @update_time.setter
337
+ def update_time(self, value: Optional[pulumi.Input[str]]):
338
+ pulumi.set(self, "update_time", value)
339
+
340
+
341
+ class LoggingSetting(pulumi.CustomResource):
342
+ @overload
343
+ def __init__(__self__,
344
+ resource_name: str,
345
+ opts: Optional[pulumi.ResourceOptions] = None,
346
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
347
+ location: Optional[pulumi.Input[str]] = None,
348
+ log_metadata: Optional[pulumi.Input[bool]] = None,
349
+ log_prompts_and_responses: Optional[pulumi.Input[bool]] = None,
350
+ logging_setting_id: Optional[pulumi.Input[str]] = None,
351
+ project: Optional[pulumi.Input[str]] = None,
352
+ __props__=None):
353
+ """
354
+ The resource for managing Logging settings for Admin Control.
355
+
356
+ ## Example Usage
357
+
358
+ ### Gemini Logging Setting Basic
359
+
360
+ ```python
361
+ import pulumi
362
+ import pulumi_gcp as gcp
363
+
364
+ example = gcp.gemini.LoggingSetting("example",
365
+ logging_setting_id="ls1-tf",
366
+ location="global",
367
+ log_prompts_and_responses=True,
368
+ log_metadata=True)
369
+ ```
370
+
371
+ ## Import
372
+
373
+ LoggingSetting can be imported using any of these accepted formats:
374
+
375
+ * `projects/{{project}}/locations/{{location}}/loggingSettings/{{logging_setting_id}}`
376
+
377
+ * `{{project}}/{{location}}/{{logging_setting_id}}`
378
+
379
+ * `{{location}}/{{logging_setting_id}}`
380
+
381
+ When using the `pulumi import` command, LoggingSetting can be imported using one of the formats above. For example:
382
+
383
+ ```sh
384
+ $ pulumi import gcp:gemini/loggingSetting:LoggingSetting default projects/{{project}}/locations/{{location}}/loggingSettings/{{logging_setting_id}}
385
+ ```
386
+
387
+ ```sh
388
+ $ pulumi import gcp:gemini/loggingSetting:LoggingSetting default {{project}}/{{location}}/{{logging_setting_id}}
389
+ ```
390
+
391
+ ```sh
392
+ $ pulumi import gcp:gemini/loggingSetting:LoggingSetting default {{location}}/{{logging_setting_id}}
393
+ ```
394
+
395
+ :param str resource_name: The name of the resource.
396
+ :param pulumi.ResourceOptions opts: Options for the resource.
397
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs.
398
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
399
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
400
+ :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.
401
+ :param pulumi.Input[bool] log_metadata: Optional. Whether to log metadata.
402
+ :param pulumi.Input[bool] log_prompts_and_responses: Optional. Whether to log prompts and responses.
403
+ :param pulumi.Input[str] logging_setting_id: Required. Id of the requesting object.
404
+ If auto-generating Id server-side, remove this field and
405
+ setting_id from the method_signature of Create RPC.
406
+
407
+
408
+ - - -
409
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
410
+ If it is not provided, the provider project is used.
411
+ """
412
+ ...
413
+ @overload
414
+ def __init__(__self__,
415
+ resource_name: str,
416
+ args: LoggingSettingArgs,
417
+ opts: Optional[pulumi.ResourceOptions] = None):
418
+ """
419
+ The resource for managing Logging settings for Admin Control.
420
+
421
+ ## Example Usage
422
+
423
+ ### Gemini Logging Setting Basic
424
+
425
+ ```python
426
+ import pulumi
427
+ import pulumi_gcp as gcp
428
+
429
+ example = gcp.gemini.LoggingSetting("example",
430
+ logging_setting_id="ls1-tf",
431
+ location="global",
432
+ log_prompts_and_responses=True,
433
+ log_metadata=True)
434
+ ```
435
+
436
+ ## Import
437
+
438
+ LoggingSetting can be imported using any of these accepted formats:
439
+
440
+ * `projects/{{project}}/locations/{{location}}/loggingSettings/{{logging_setting_id}}`
441
+
442
+ * `{{project}}/{{location}}/{{logging_setting_id}}`
443
+
444
+ * `{{location}}/{{logging_setting_id}}`
445
+
446
+ When using the `pulumi import` command, LoggingSetting can be imported using one of the formats above. For example:
447
+
448
+ ```sh
449
+ $ pulumi import gcp:gemini/loggingSetting:LoggingSetting default projects/{{project}}/locations/{{location}}/loggingSettings/{{logging_setting_id}}
450
+ ```
451
+
452
+ ```sh
453
+ $ pulumi import gcp:gemini/loggingSetting:LoggingSetting default {{project}}/{{location}}/{{logging_setting_id}}
454
+ ```
455
+
456
+ ```sh
457
+ $ pulumi import gcp:gemini/loggingSetting:LoggingSetting default {{location}}/{{logging_setting_id}}
458
+ ```
459
+
460
+ :param str resource_name: The name of the resource.
461
+ :param LoggingSettingArgs args: The arguments to use to populate this resource's properties.
462
+ :param pulumi.ResourceOptions opts: Options for the resource.
463
+ """
464
+ ...
465
+ def __init__(__self__, resource_name: str, *args, **kwargs):
466
+ resource_args, opts = _utilities.get_resource_args_opts(LoggingSettingArgs, pulumi.ResourceOptions, *args, **kwargs)
467
+ if resource_args is not None:
468
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
469
+ else:
470
+ __self__._internal_init(resource_name, *args, **kwargs)
471
+
472
+ def _internal_init(__self__,
473
+ resource_name: str,
474
+ opts: Optional[pulumi.ResourceOptions] = None,
475
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
476
+ location: Optional[pulumi.Input[str]] = None,
477
+ log_metadata: Optional[pulumi.Input[bool]] = None,
478
+ log_prompts_and_responses: Optional[pulumi.Input[bool]] = None,
479
+ logging_setting_id: Optional[pulumi.Input[str]] = None,
480
+ project: Optional[pulumi.Input[str]] = None,
481
+ __props__=None):
482
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
483
+ if not isinstance(opts, pulumi.ResourceOptions):
484
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
485
+ if opts.id is None:
486
+ if __props__ is not None:
487
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
488
+ __props__ = LoggingSettingArgs.__new__(LoggingSettingArgs)
489
+
490
+ __props__.__dict__["labels"] = labels
491
+ if location is None and not opts.urn:
492
+ raise TypeError("Missing required property 'location'")
493
+ __props__.__dict__["location"] = location
494
+ __props__.__dict__["log_metadata"] = log_metadata
495
+ __props__.__dict__["log_prompts_and_responses"] = log_prompts_and_responses
496
+ if logging_setting_id is None and not opts.urn:
497
+ raise TypeError("Missing required property 'logging_setting_id'")
498
+ __props__.__dict__["logging_setting_id"] = logging_setting_id
499
+ __props__.__dict__["project"] = project
500
+ __props__.__dict__["create_time"] = None
501
+ __props__.__dict__["effective_labels"] = None
502
+ __props__.__dict__["name"] = None
503
+ __props__.__dict__["pulumi_labels"] = None
504
+ __props__.__dict__["update_time"] = None
505
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
506
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
507
+ super(LoggingSetting, __self__).__init__(
508
+ 'gcp:gemini/loggingSetting:LoggingSetting',
509
+ resource_name,
510
+ __props__,
511
+ opts)
512
+
513
+ @staticmethod
514
+ def get(resource_name: str,
515
+ id: pulumi.Input[str],
516
+ opts: Optional[pulumi.ResourceOptions] = None,
517
+ create_time: Optional[pulumi.Input[str]] = None,
518
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
519
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
520
+ location: Optional[pulumi.Input[str]] = None,
521
+ log_metadata: Optional[pulumi.Input[bool]] = None,
522
+ log_prompts_and_responses: Optional[pulumi.Input[bool]] = None,
523
+ logging_setting_id: Optional[pulumi.Input[str]] = None,
524
+ name: Optional[pulumi.Input[str]] = None,
525
+ project: Optional[pulumi.Input[str]] = None,
526
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
527
+ update_time: Optional[pulumi.Input[str]] = None) -> 'LoggingSetting':
528
+ """
529
+ Get an existing LoggingSetting resource's state with the given name, id, and optional extra
530
+ properties used to qualify the lookup.
531
+
532
+ :param str resource_name: The unique name of the resulting resource.
533
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
534
+ :param pulumi.ResourceOptions opts: Options for the resource.
535
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create time stamp.
536
+ :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.
537
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs.
538
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
539
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
540
+ :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.
541
+ :param pulumi.Input[bool] log_metadata: Optional. Whether to log metadata.
542
+ :param pulumi.Input[bool] log_prompts_and_responses: Optional. Whether to log prompts and responses.
543
+ :param pulumi.Input[str] logging_setting_id: Required. Id of the requesting object.
544
+ If auto-generating Id server-side, remove this field and
545
+ setting_id from the method_signature of Create RPC.
546
+
547
+
548
+ - - -
549
+ :param pulumi.Input[str] name: Identifier. Name of the resource.
550
+ Format:projects/{project}/locations/{location}/loggingsettings/{loggingsetting}
551
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
552
+ If it is not provided, the provider project is used.
553
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
554
+ and default labels configured on the provider.
555
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update time stamp.
556
+ """
557
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
558
+
559
+ __props__ = _LoggingSettingState.__new__(_LoggingSettingState)
560
+
561
+ __props__.__dict__["create_time"] = create_time
562
+ __props__.__dict__["effective_labels"] = effective_labels
563
+ __props__.__dict__["labels"] = labels
564
+ __props__.__dict__["location"] = location
565
+ __props__.__dict__["log_metadata"] = log_metadata
566
+ __props__.__dict__["log_prompts_and_responses"] = log_prompts_and_responses
567
+ __props__.__dict__["logging_setting_id"] = logging_setting_id
568
+ __props__.__dict__["name"] = name
569
+ __props__.__dict__["project"] = project
570
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
571
+ __props__.__dict__["update_time"] = update_time
572
+ return LoggingSetting(resource_name, opts=opts, __props__=__props__)
573
+
574
+ @property
575
+ @pulumi.getter(name="createTime")
576
+ def create_time(self) -> pulumi.Output[str]:
577
+ """
578
+ Output only. [Output only] Create time stamp.
579
+ """
580
+ return pulumi.get(self, "create_time")
581
+
582
+ @property
583
+ @pulumi.getter(name="effectiveLabels")
584
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
585
+ """
586
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
587
+ """
588
+ return pulumi.get(self, "effective_labels")
589
+
590
+ @property
591
+ @pulumi.getter
592
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
593
+ """
594
+ Optional. Labels as key value pairs.
595
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
596
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
597
+ """
598
+ return pulumi.get(self, "labels")
599
+
600
+ @property
601
+ @pulumi.getter
602
+ def location(self) -> pulumi.Output[str]:
603
+ """
604
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
605
+ """
606
+ return pulumi.get(self, "location")
607
+
608
+ @property
609
+ @pulumi.getter(name="logMetadata")
610
+ def log_metadata(self) -> pulumi.Output[Optional[bool]]:
611
+ """
612
+ Optional. Whether to log metadata.
613
+ """
614
+ return pulumi.get(self, "log_metadata")
615
+
616
+ @property
617
+ @pulumi.getter(name="logPromptsAndResponses")
618
+ def log_prompts_and_responses(self) -> pulumi.Output[Optional[bool]]:
619
+ """
620
+ Optional. Whether to log prompts and responses.
621
+ """
622
+ return pulumi.get(self, "log_prompts_and_responses")
623
+
624
+ @property
625
+ @pulumi.getter(name="loggingSettingId")
626
+ def logging_setting_id(self) -> pulumi.Output[str]:
627
+ """
628
+ Required. Id of the requesting object.
629
+ If auto-generating Id server-side, remove this field and
630
+ setting_id from the method_signature of Create RPC.
631
+
632
+
633
+ - - -
634
+ """
635
+ return pulumi.get(self, "logging_setting_id")
636
+
637
+ @property
638
+ @pulumi.getter
639
+ def name(self) -> pulumi.Output[str]:
640
+ """
641
+ Identifier. Name of the resource.
642
+ Format:projects/{project}/locations/{location}/loggingsettings/{loggingsetting}
643
+ """
644
+ return pulumi.get(self, "name")
645
+
646
+ @property
647
+ @pulumi.getter
648
+ def project(self) -> pulumi.Output[str]:
649
+ """
650
+ The ID of the project in which the resource belongs.
651
+ If it is not provided, the provider project is used.
652
+ """
653
+ return pulumi.get(self, "project")
654
+
655
+ @property
656
+ @pulumi.getter(name="pulumiLabels")
657
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
658
+ """
659
+ The combination of labels configured directly on the resource
660
+ and default labels configured on the provider.
661
+ """
662
+ return pulumi.get(self, "pulumi_labels")
663
+
664
+ @property
665
+ @pulumi.getter(name="updateTime")
666
+ def update_time(self) -> pulumi.Output[str]:
667
+ """
668
+ Output only. [Output only] Update time stamp.
669
+ """
670
+ return pulumi.get(self, "update_time")
671
+