pulumi-gcp 8.3.1a1727284265__py3-none-any.whl → 8.4.0a1727795436__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 (49) hide show
  1. pulumi_gcp/__init__.py +24 -0
  2. pulumi_gcp/apigee/nat_address.py +155 -2
  3. pulumi_gcp/bigquery/_inputs.py +102 -0
  4. pulumi_gcp/bigquery/outputs.py +83 -0
  5. pulumi_gcp/bigquery/table.py +47 -0
  6. pulumi_gcp/cloudrun/_inputs.py +26 -0
  7. pulumi_gcp/cloudrun/outputs.py +33 -0
  8. pulumi_gcp/cloudrun/service.py +76 -0
  9. pulumi_gcp/cloudrunv2/_inputs.py +65 -9
  10. pulumi_gcp/cloudrunv2/outputs.py +73 -8
  11. pulumi_gcp/cloudrunv2/service.py +64 -0
  12. pulumi_gcp/compute/__init__.py +3 -0
  13. pulumi_gcp/compute/_inputs.py +1941 -2
  14. pulumi_gcp/compute/get_region_instance_group_manager.py +438 -0
  15. pulumi_gcp/compute/get_router_nat.py +11 -1
  16. pulumi_gcp/compute/instance.py +7 -7
  17. pulumi_gcp/compute/instance_from_machine_image.py +7 -7
  18. pulumi_gcp/compute/instance_from_template.py +7 -7
  19. pulumi_gcp/compute/interconnect.py +76 -64
  20. pulumi_gcp/compute/outputs.py +4637 -2640
  21. pulumi_gcp/compute/region_commitment.py +47 -0
  22. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +835 -0
  23. pulumi_gcp/compute/router_nat.py +56 -2
  24. pulumi_gcp/compute/router_nat_address.py +514 -0
  25. pulumi_gcp/compute/subnetwork.py +14 -14
  26. pulumi_gcp/container/_inputs.py +222 -0
  27. pulumi_gcp/container/outputs.py +279 -2
  28. pulumi_gcp/logging/__init__.py +1 -0
  29. pulumi_gcp/logging/log_scope.py +492 -0
  30. pulumi_gcp/looker/_inputs.py +157 -0
  31. pulumi_gcp/looker/instance.py +143 -0
  32. pulumi_gcp/looker/outputs.py +136 -0
  33. pulumi_gcp/networkconnectivity/_inputs.py +72 -3
  34. pulumi_gcp/networkconnectivity/outputs.py +51 -3
  35. pulumi_gcp/networkconnectivity/spoke.py +310 -0
  36. pulumi_gcp/networksecurity/security_profile.py +2 -2
  37. pulumi_gcp/privilegedaccessmanager/__init__.py +1 -0
  38. pulumi_gcp/privilegedaccessmanager/get_entitlement.py +219 -0
  39. pulumi_gcp/privilegedaccessmanager/outputs.py +312 -0
  40. pulumi_gcp/pulumi-plugin.json +1 -1
  41. pulumi_gcp/secretmanager/__init__.py +2 -0
  42. pulumi_gcp/secretmanager/get_regional_secret_version.py +2 -2
  43. pulumi_gcp/secretmanager/get_regional_secret_version_access.py +188 -0
  44. pulumi_gcp/secretmanager/get_regional_secrets.py +156 -0
  45. pulumi_gcp/secretmanager/outputs.py +265 -0
  46. {pulumi_gcp-8.3.1a1727284265.dist-info → pulumi_gcp-8.4.0a1727795436.dist-info}/METADATA +1 -1
  47. {pulumi_gcp-8.3.1a1727284265.dist-info → pulumi_gcp-8.4.0a1727795436.dist-info}/RECORD +49 -42
  48. {pulumi_gcp-8.3.1a1727284265.dist-info → pulumi_gcp-8.4.0a1727795436.dist-info}/WHEEL +0 -0
  49. {pulumi_gcp-8.3.1a1727284265.dist-info → pulumi_gcp-8.4.0a1727795436.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,492 @@
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__ = ['LogScopeArgs', 'LogScope']
18
+
19
+ @pulumi.input_type
20
+ class LogScopeArgs:
21
+ def __init__(__self__, *,
22
+ resource_names: pulumi.Input[Sequence[pulumi.Input[str]]],
23
+ description: Optional[pulumi.Input[str]] = None,
24
+ location: Optional[pulumi.Input[str]] = None,
25
+ name: Optional[pulumi.Input[str]] = None,
26
+ parent: Optional[pulumi.Input[str]] = None):
27
+ """
28
+ The set of arguments for constructing a LogScope resource.
29
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] resource_names: Names of one or more parent resources : * \\`projects/[PROJECT_ID]\\` May alternatively be one or more views : * \\`projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]\\` A log scope can include a maximum of 50 projects and a maximum of 100 resources in total.
30
+
31
+
32
+ - - -
33
+ :param pulumi.Input[str] description: Describes this log scopes.
34
+ :param pulumi.Input[str] location: The location of the resource. The supported locations are: global, us-central1, us-east1, us-west1, asia-east1, europe-west1.
35
+ :param pulumi.Input[str] name: The resource name of the log scope. For example: \\`projects/my-project/locations/global/logScopes/my-log-scope\\`
36
+ :param pulumi.Input[str] parent: The parent of the resource.
37
+ """
38
+ pulumi.set(__self__, "resource_names", resource_names)
39
+ if description is not None:
40
+ pulumi.set(__self__, "description", description)
41
+ if location is not None:
42
+ pulumi.set(__self__, "location", location)
43
+ if name is not None:
44
+ pulumi.set(__self__, "name", name)
45
+ if parent is not None:
46
+ pulumi.set(__self__, "parent", parent)
47
+
48
+ @property
49
+ @pulumi.getter(name="resourceNames")
50
+ def resource_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
51
+ """
52
+ Names of one or more parent resources : * \\`projects/[PROJECT_ID]\\` May alternatively be one or more views : * \\`projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]\\` A log scope can include a maximum of 50 projects and a maximum of 100 resources in total.
53
+
54
+
55
+ - - -
56
+ """
57
+ return pulumi.get(self, "resource_names")
58
+
59
+ @resource_names.setter
60
+ def resource_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
61
+ pulumi.set(self, "resource_names", value)
62
+
63
+ @property
64
+ @pulumi.getter
65
+ def description(self) -> Optional[pulumi.Input[str]]:
66
+ """
67
+ Describes this log scopes.
68
+ """
69
+ return pulumi.get(self, "description")
70
+
71
+ @description.setter
72
+ def description(self, value: Optional[pulumi.Input[str]]):
73
+ pulumi.set(self, "description", value)
74
+
75
+ @property
76
+ @pulumi.getter
77
+ def location(self) -> Optional[pulumi.Input[str]]:
78
+ """
79
+ The location of the resource. The supported locations are: global, us-central1, us-east1, us-west1, asia-east1, europe-west1.
80
+ """
81
+ return pulumi.get(self, "location")
82
+
83
+ @location.setter
84
+ def location(self, value: Optional[pulumi.Input[str]]):
85
+ pulumi.set(self, "location", value)
86
+
87
+ @property
88
+ @pulumi.getter
89
+ def name(self) -> Optional[pulumi.Input[str]]:
90
+ """
91
+ The resource name of the log scope. For example: \\`projects/my-project/locations/global/logScopes/my-log-scope\\`
92
+ """
93
+ return pulumi.get(self, "name")
94
+
95
+ @name.setter
96
+ def name(self, value: Optional[pulumi.Input[str]]):
97
+ pulumi.set(self, "name", value)
98
+
99
+ @property
100
+ @pulumi.getter
101
+ def parent(self) -> Optional[pulumi.Input[str]]:
102
+ """
103
+ The parent of the resource.
104
+ """
105
+ return pulumi.get(self, "parent")
106
+
107
+ @parent.setter
108
+ def parent(self, value: Optional[pulumi.Input[str]]):
109
+ pulumi.set(self, "parent", value)
110
+
111
+
112
+ @pulumi.input_type
113
+ class _LogScopeState:
114
+ def __init__(__self__, *,
115
+ create_time: Optional[pulumi.Input[str]] = None,
116
+ description: Optional[pulumi.Input[str]] = None,
117
+ location: Optional[pulumi.Input[str]] = None,
118
+ name: Optional[pulumi.Input[str]] = None,
119
+ parent: Optional[pulumi.Input[str]] = None,
120
+ resource_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
121
+ update_time: Optional[pulumi.Input[str]] = None):
122
+ """
123
+ Input properties used for looking up and filtering LogScope resources.
124
+ :param pulumi.Input[str] create_time: Output only. The creation timestamp of the log scopes.
125
+ :param pulumi.Input[str] description: Describes this log scopes.
126
+ :param pulumi.Input[str] location: The location of the resource. The supported locations are: global, us-central1, us-east1, us-west1, asia-east1, europe-west1.
127
+ :param pulumi.Input[str] name: The resource name of the log scope. For example: \\`projects/my-project/locations/global/logScopes/my-log-scope\\`
128
+ :param pulumi.Input[str] parent: The parent of the resource.
129
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] resource_names: Names of one or more parent resources : * \\`projects/[PROJECT_ID]\\` May alternatively be one or more views : * \\`projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]\\` A log scope can include a maximum of 50 projects and a maximum of 100 resources in total.
130
+
131
+
132
+ - - -
133
+ :param pulumi.Input[str] update_time: Output only. The last update timestamp of the log scopes.
134
+ """
135
+ if create_time is not None:
136
+ pulumi.set(__self__, "create_time", create_time)
137
+ if description is not None:
138
+ pulumi.set(__self__, "description", description)
139
+ if location is not None:
140
+ pulumi.set(__self__, "location", location)
141
+ if name is not None:
142
+ pulumi.set(__self__, "name", name)
143
+ if parent is not None:
144
+ pulumi.set(__self__, "parent", parent)
145
+ if resource_names is not None:
146
+ pulumi.set(__self__, "resource_names", resource_names)
147
+ if update_time is not None:
148
+ pulumi.set(__self__, "update_time", update_time)
149
+
150
+ @property
151
+ @pulumi.getter(name="createTime")
152
+ def create_time(self) -> Optional[pulumi.Input[str]]:
153
+ """
154
+ Output only. The creation timestamp of the log scopes.
155
+ """
156
+ return pulumi.get(self, "create_time")
157
+
158
+ @create_time.setter
159
+ def create_time(self, value: Optional[pulumi.Input[str]]):
160
+ pulumi.set(self, "create_time", value)
161
+
162
+ @property
163
+ @pulumi.getter
164
+ def description(self) -> Optional[pulumi.Input[str]]:
165
+ """
166
+ Describes this log scopes.
167
+ """
168
+ return pulumi.get(self, "description")
169
+
170
+ @description.setter
171
+ def description(self, value: Optional[pulumi.Input[str]]):
172
+ pulumi.set(self, "description", value)
173
+
174
+ @property
175
+ @pulumi.getter
176
+ def location(self) -> Optional[pulumi.Input[str]]:
177
+ """
178
+ The location of the resource. The supported locations are: global, us-central1, us-east1, us-west1, asia-east1, europe-west1.
179
+ """
180
+ return pulumi.get(self, "location")
181
+
182
+ @location.setter
183
+ def location(self, value: Optional[pulumi.Input[str]]):
184
+ pulumi.set(self, "location", value)
185
+
186
+ @property
187
+ @pulumi.getter
188
+ def name(self) -> Optional[pulumi.Input[str]]:
189
+ """
190
+ The resource name of the log scope. For example: \\`projects/my-project/locations/global/logScopes/my-log-scope\\`
191
+ """
192
+ return pulumi.get(self, "name")
193
+
194
+ @name.setter
195
+ def name(self, value: Optional[pulumi.Input[str]]):
196
+ pulumi.set(self, "name", value)
197
+
198
+ @property
199
+ @pulumi.getter
200
+ def parent(self) -> Optional[pulumi.Input[str]]:
201
+ """
202
+ The parent of the resource.
203
+ """
204
+ return pulumi.get(self, "parent")
205
+
206
+ @parent.setter
207
+ def parent(self, value: Optional[pulumi.Input[str]]):
208
+ pulumi.set(self, "parent", value)
209
+
210
+ @property
211
+ @pulumi.getter(name="resourceNames")
212
+ def resource_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
213
+ """
214
+ Names of one or more parent resources : * \\`projects/[PROJECT_ID]\\` May alternatively be one or more views : * \\`projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]\\` A log scope can include a maximum of 50 projects and a maximum of 100 resources in total.
215
+
216
+
217
+ - - -
218
+ """
219
+ return pulumi.get(self, "resource_names")
220
+
221
+ @resource_names.setter
222
+ def resource_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
223
+ pulumi.set(self, "resource_names", value)
224
+
225
+ @property
226
+ @pulumi.getter(name="updateTime")
227
+ def update_time(self) -> Optional[pulumi.Input[str]]:
228
+ """
229
+ Output only. The last update timestamp of the log scopes.
230
+ """
231
+ return pulumi.get(self, "update_time")
232
+
233
+ @update_time.setter
234
+ def update_time(self, value: Optional[pulumi.Input[str]]):
235
+ pulumi.set(self, "update_time", value)
236
+
237
+
238
+ class LogScope(pulumi.CustomResource):
239
+ @overload
240
+ def __init__(__self__,
241
+ resource_name: str,
242
+ opts: Optional[pulumi.ResourceOptions] = None,
243
+ description: Optional[pulumi.Input[str]] = None,
244
+ location: Optional[pulumi.Input[str]] = None,
245
+ name: Optional[pulumi.Input[str]] = None,
246
+ parent: Optional[pulumi.Input[str]] = None,
247
+ resource_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
248
+ __props__=None):
249
+ """
250
+ Describes a group of resources to read log entries from
251
+
252
+ To get more information about LogScope, see:
253
+
254
+ * [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.locations.logScopes)
255
+ * How-to Guides
256
+ * [Official Documentation](https://cloud.google.com/logging/docs/apis)
257
+
258
+ ## Example Usage
259
+
260
+ ### Logging Log Scope Basic
261
+
262
+ ```python
263
+ import pulumi
264
+ import pulumi_gcp as gcp
265
+
266
+ logging_log_scope = gcp.logging.LogScope("logging_log_scope",
267
+ parent="projects/my-project-name",
268
+ location="global",
269
+ name="projects/my-project-name/locations/global/logScopes/my-log-scope",
270
+ resource_names=[
271
+ "projects/my-project-name",
272
+ "projects/my-project-name/locations/global/buckets/_Default/views/view1",
273
+ "projects/my-project-name/locations/global/buckets/_Default/views/view2",
274
+ ],
275
+ description="A log scope configured with Terraform")
276
+ ```
277
+
278
+ ## Import
279
+
280
+ LogScope can be imported using any of these accepted formats:
281
+
282
+ * `{{parent}}/locations/{{location}}/logScopes/{{name}}`
283
+
284
+ When using the `pulumi import` command, LogScope can be imported using one of the formats above. For example:
285
+
286
+ ```sh
287
+ $ pulumi import gcp:logging/logScope:LogScope default {{parent}}/locations/{{location}}/logScopes/{{name}}
288
+ ```
289
+
290
+ :param str resource_name: The name of the resource.
291
+ :param pulumi.ResourceOptions opts: Options for the resource.
292
+ :param pulumi.Input[str] description: Describes this log scopes.
293
+ :param pulumi.Input[str] location: The location of the resource. The supported locations are: global, us-central1, us-east1, us-west1, asia-east1, europe-west1.
294
+ :param pulumi.Input[str] name: The resource name of the log scope. For example: \\`projects/my-project/locations/global/logScopes/my-log-scope\\`
295
+ :param pulumi.Input[str] parent: The parent of the resource.
296
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] resource_names: Names of one or more parent resources : * \\`projects/[PROJECT_ID]\\` May alternatively be one or more views : * \\`projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]\\` A log scope can include a maximum of 50 projects and a maximum of 100 resources in total.
297
+
298
+
299
+ - - -
300
+ """
301
+ ...
302
+ @overload
303
+ def __init__(__self__,
304
+ resource_name: str,
305
+ args: LogScopeArgs,
306
+ opts: Optional[pulumi.ResourceOptions] = None):
307
+ """
308
+ Describes a group of resources to read log entries from
309
+
310
+ To get more information about LogScope, see:
311
+
312
+ * [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.locations.logScopes)
313
+ * How-to Guides
314
+ * [Official Documentation](https://cloud.google.com/logging/docs/apis)
315
+
316
+ ## Example Usage
317
+
318
+ ### Logging Log Scope Basic
319
+
320
+ ```python
321
+ import pulumi
322
+ import pulumi_gcp as gcp
323
+
324
+ logging_log_scope = gcp.logging.LogScope("logging_log_scope",
325
+ parent="projects/my-project-name",
326
+ location="global",
327
+ name="projects/my-project-name/locations/global/logScopes/my-log-scope",
328
+ resource_names=[
329
+ "projects/my-project-name",
330
+ "projects/my-project-name/locations/global/buckets/_Default/views/view1",
331
+ "projects/my-project-name/locations/global/buckets/_Default/views/view2",
332
+ ],
333
+ description="A log scope configured with Terraform")
334
+ ```
335
+
336
+ ## Import
337
+
338
+ LogScope can be imported using any of these accepted formats:
339
+
340
+ * `{{parent}}/locations/{{location}}/logScopes/{{name}}`
341
+
342
+ When using the `pulumi import` command, LogScope can be imported using one of the formats above. For example:
343
+
344
+ ```sh
345
+ $ pulumi import gcp:logging/logScope:LogScope default {{parent}}/locations/{{location}}/logScopes/{{name}}
346
+ ```
347
+
348
+ :param str resource_name: The name of the resource.
349
+ :param LogScopeArgs args: The arguments to use to populate this resource's properties.
350
+ :param pulumi.ResourceOptions opts: Options for the resource.
351
+ """
352
+ ...
353
+ def __init__(__self__, resource_name: str, *args, **kwargs):
354
+ resource_args, opts = _utilities.get_resource_args_opts(LogScopeArgs, pulumi.ResourceOptions, *args, **kwargs)
355
+ if resource_args is not None:
356
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
357
+ else:
358
+ __self__._internal_init(resource_name, *args, **kwargs)
359
+
360
+ def _internal_init(__self__,
361
+ resource_name: str,
362
+ opts: Optional[pulumi.ResourceOptions] = None,
363
+ description: Optional[pulumi.Input[str]] = None,
364
+ location: Optional[pulumi.Input[str]] = None,
365
+ name: Optional[pulumi.Input[str]] = None,
366
+ parent: Optional[pulumi.Input[str]] = None,
367
+ resource_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
368
+ __props__=None):
369
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
370
+ if not isinstance(opts, pulumi.ResourceOptions):
371
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
372
+ if opts.id is None:
373
+ if __props__ is not None:
374
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
375
+ __props__ = LogScopeArgs.__new__(LogScopeArgs)
376
+
377
+ __props__.__dict__["description"] = description
378
+ __props__.__dict__["location"] = location
379
+ __props__.__dict__["name"] = name
380
+ __props__.__dict__["parent"] = parent
381
+ if resource_names is None and not opts.urn:
382
+ raise TypeError("Missing required property 'resource_names'")
383
+ __props__.__dict__["resource_names"] = resource_names
384
+ __props__.__dict__["create_time"] = None
385
+ __props__.__dict__["update_time"] = None
386
+ super(LogScope, __self__).__init__(
387
+ 'gcp:logging/logScope:LogScope',
388
+ resource_name,
389
+ __props__,
390
+ opts)
391
+
392
+ @staticmethod
393
+ def get(resource_name: str,
394
+ id: pulumi.Input[str],
395
+ opts: Optional[pulumi.ResourceOptions] = None,
396
+ create_time: Optional[pulumi.Input[str]] = None,
397
+ description: Optional[pulumi.Input[str]] = None,
398
+ location: Optional[pulumi.Input[str]] = None,
399
+ name: Optional[pulumi.Input[str]] = None,
400
+ parent: Optional[pulumi.Input[str]] = None,
401
+ resource_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
402
+ update_time: Optional[pulumi.Input[str]] = None) -> 'LogScope':
403
+ """
404
+ Get an existing LogScope resource's state with the given name, id, and optional extra
405
+ properties used to qualify the lookup.
406
+
407
+ :param str resource_name: The unique name of the resulting resource.
408
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
409
+ :param pulumi.ResourceOptions opts: Options for the resource.
410
+ :param pulumi.Input[str] create_time: Output only. The creation timestamp of the log scopes.
411
+ :param pulumi.Input[str] description: Describes this log scopes.
412
+ :param pulumi.Input[str] location: The location of the resource. The supported locations are: global, us-central1, us-east1, us-west1, asia-east1, europe-west1.
413
+ :param pulumi.Input[str] name: The resource name of the log scope. For example: \\`projects/my-project/locations/global/logScopes/my-log-scope\\`
414
+ :param pulumi.Input[str] parent: The parent of the resource.
415
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] resource_names: Names of one or more parent resources : * \\`projects/[PROJECT_ID]\\` May alternatively be one or more views : * \\`projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]\\` A log scope can include a maximum of 50 projects and a maximum of 100 resources in total.
416
+
417
+
418
+ - - -
419
+ :param pulumi.Input[str] update_time: Output only. The last update timestamp of the log scopes.
420
+ """
421
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
422
+
423
+ __props__ = _LogScopeState.__new__(_LogScopeState)
424
+
425
+ __props__.__dict__["create_time"] = create_time
426
+ __props__.__dict__["description"] = description
427
+ __props__.__dict__["location"] = location
428
+ __props__.__dict__["name"] = name
429
+ __props__.__dict__["parent"] = parent
430
+ __props__.__dict__["resource_names"] = resource_names
431
+ __props__.__dict__["update_time"] = update_time
432
+ return LogScope(resource_name, opts=opts, __props__=__props__)
433
+
434
+ @property
435
+ @pulumi.getter(name="createTime")
436
+ def create_time(self) -> pulumi.Output[str]:
437
+ """
438
+ Output only. The creation timestamp of the log scopes.
439
+ """
440
+ return pulumi.get(self, "create_time")
441
+
442
+ @property
443
+ @pulumi.getter
444
+ def description(self) -> pulumi.Output[Optional[str]]:
445
+ """
446
+ Describes this log scopes.
447
+ """
448
+ return pulumi.get(self, "description")
449
+
450
+ @property
451
+ @pulumi.getter
452
+ def location(self) -> pulumi.Output[str]:
453
+ """
454
+ The location of the resource. The supported locations are: global, us-central1, us-east1, us-west1, asia-east1, europe-west1.
455
+ """
456
+ return pulumi.get(self, "location")
457
+
458
+ @property
459
+ @pulumi.getter
460
+ def name(self) -> pulumi.Output[str]:
461
+ """
462
+ The resource name of the log scope. For example: \\`projects/my-project/locations/global/logScopes/my-log-scope\\`
463
+ """
464
+ return pulumi.get(self, "name")
465
+
466
+ @property
467
+ @pulumi.getter
468
+ def parent(self) -> pulumi.Output[str]:
469
+ """
470
+ The parent of the resource.
471
+ """
472
+ return pulumi.get(self, "parent")
473
+
474
+ @property
475
+ @pulumi.getter(name="resourceNames")
476
+ def resource_names(self) -> pulumi.Output[Sequence[str]]:
477
+ """
478
+ Names of one or more parent resources : * \\`projects/[PROJECT_ID]\\` May alternatively be one or more views : * \\`projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]\\` A log scope can include a maximum of 50 projects and a maximum of 100 resources in total.
479
+
480
+
481
+ - - -
482
+ """
483
+ return pulumi.get(self, "resource_names")
484
+
485
+ @property
486
+ @pulumi.getter(name="updateTime")
487
+ def update_time(self) -> pulumi.Output[str]:
488
+ """
489
+ Output only. The last update timestamp of the log scopes.
490
+ """
491
+ return pulumi.get(self, "update_time")
492
+
@@ -35,6 +35,10 @@ __all__ = [
35
35
  'InstanceMaintenanceWindowStartTimeArgsDict',
36
36
  'InstanceOauthConfigArgs',
37
37
  'InstanceOauthConfigArgsDict',
38
+ 'InstancePscConfigArgs',
39
+ 'InstancePscConfigArgsDict',
40
+ 'InstancePscConfigServiceAttachmentArgs',
41
+ 'InstancePscConfigServiceAttachmentArgsDict',
38
42
  'InstanceUserMetadataArgs',
39
43
  'InstanceUserMetadataArgsDict',
40
44
  ]
@@ -748,6 +752,159 @@ class InstanceOauthConfigArgs:
748
752
  pulumi.set(self, "client_secret", value)
749
753
 
750
754
 
755
+ if not MYPY:
756
+ class InstancePscConfigArgsDict(TypedDict):
757
+ allowed_vpcs: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
758
+ """
759
+ List of VPCs that are allowed ingress into the Looker instance.
760
+ """
761
+ looker_service_attachment_uri: NotRequired[pulumi.Input[str]]
762
+ """
763
+ (Output)
764
+ URI of the Looker service attachment.
765
+ """
766
+ service_attachments: NotRequired[pulumi.Input[Sequence[pulumi.Input['InstancePscConfigServiceAttachmentArgsDict']]]]
767
+ """
768
+ List of egress service attachment configurations.
769
+ Structure is documented below.
770
+ """
771
+ elif False:
772
+ InstancePscConfigArgsDict: TypeAlias = Mapping[str, Any]
773
+
774
+ @pulumi.input_type
775
+ class InstancePscConfigArgs:
776
+ def __init__(__self__, *,
777
+ allowed_vpcs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
778
+ looker_service_attachment_uri: Optional[pulumi.Input[str]] = None,
779
+ service_attachments: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePscConfigServiceAttachmentArgs']]]] = None):
780
+ """
781
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_vpcs: List of VPCs that are allowed ingress into the Looker instance.
782
+ :param pulumi.Input[str] looker_service_attachment_uri: (Output)
783
+ URI of the Looker service attachment.
784
+ :param pulumi.Input[Sequence[pulumi.Input['InstancePscConfigServiceAttachmentArgs']]] service_attachments: List of egress service attachment configurations.
785
+ Structure is documented below.
786
+ """
787
+ if allowed_vpcs is not None:
788
+ pulumi.set(__self__, "allowed_vpcs", allowed_vpcs)
789
+ if looker_service_attachment_uri is not None:
790
+ pulumi.set(__self__, "looker_service_attachment_uri", looker_service_attachment_uri)
791
+ if service_attachments is not None:
792
+ pulumi.set(__self__, "service_attachments", service_attachments)
793
+
794
+ @property
795
+ @pulumi.getter(name="allowedVpcs")
796
+ def allowed_vpcs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
797
+ """
798
+ List of VPCs that are allowed ingress into the Looker instance.
799
+ """
800
+ return pulumi.get(self, "allowed_vpcs")
801
+
802
+ @allowed_vpcs.setter
803
+ def allowed_vpcs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
804
+ pulumi.set(self, "allowed_vpcs", value)
805
+
806
+ @property
807
+ @pulumi.getter(name="lookerServiceAttachmentUri")
808
+ def looker_service_attachment_uri(self) -> Optional[pulumi.Input[str]]:
809
+ """
810
+ (Output)
811
+ URI of the Looker service attachment.
812
+ """
813
+ return pulumi.get(self, "looker_service_attachment_uri")
814
+
815
+ @looker_service_attachment_uri.setter
816
+ def looker_service_attachment_uri(self, value: Optional[pulumi.Input[str]]):
817
+ pulumi.set(self, "looker_service_attachment_uri", value)
818
+
819
+ @property
820
+ @pulumi.getter(name="serviceAttachments")
821
+ def service_attachments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstancePscConfigServiceAttachmentArgs']]]]:
822
+ """
823
+ List of egress service attachment configurations.
824
+ Structure is documented below.
825
+ """
826
+ return pulumi.get(self, "service_attachments")
827
+
828
+ @service_attachments.setter
829
+ def service_attachments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePscConfigServiceAttachmentArgs']]]]):
830
+ pulumi.set(self, "service_attachments", value)
831
+
832
+
833
+ if not MYPY:
834
+ class InstancePscConfigServiceAttachmentArgsDict(TypedDict):
835
+ connection_status: NotRequired[pulumi.Input[str]]
836
+ """
837
+ (Output)
838
+ Status of the service attachment connection.
839
+ """
840
+ local_fqdn: NotRequired[pulumi.Input[str]]
841
+ """
842
+ Fully qualified domain name that will be used in the private DNS record created for the service attachment.
843
+ """
844
+ target_service_attachment_uri: NotRequired[pulumi.Input[str]]
845
+ """
846
+ URI of the service attachment to connect to.
847
+ """
848
+ elif False:
849
+ InstancePscConfigServiceAttachmentArgsDict: TypeAlias = Mapping[str, Any]
850
+
851
+ @pulumi.input_type
852
+ class InstancePscConfigServiceAttachmentArgs:
853
+ def __init__(__self__, *,
854
+ connection_status: Optional[pulumi.Input[str]] = None,
855
+ local_fqdn: Optional[pulumi.Input[str]] = None,
856
+ target_service_attachment_uri: Optional[pulumi.Input[str]] = None):
857
+ """
858
+ :param pulumi.Input[str] connection_status: (Output)
859
+ Status of the service attachment connection.
860
+ :param pulumi.Input[str] local_fqdn: Fully qualified domain name that will be used in the private DNS record created for the service attachment.
861
+ :param pulumi.Input[str] target_service_attachment_uri: URI of the service attachment to connect to.
862
+ """
863
+ if connection_status is not None:
864
+ pulumi.set(__self__, "connection_status", connection_status)
865
+ if local_fqdn is not None:
866
+ pulumi.set(__self__, "local_fqdn", local_fqdn)
867
+ if target_service_attachment_uri is not None:
868
+ pulumi.set(__self__, "target_service_attachment_uri", target_service_attachment_uri)
869
+
870
+ @property
871
+ @pulumi.getter(name="connectionStatus")
872
+ def connection_status(self) -> Optional[pulumi.Input[str]]:
873
+ """
874
+ (Output)
875
+ Status of the service attachment connection.
876
+ """
877
+ return pulumi.get(self, "connection_status")
878
+
879
+ @connection_status.setter
880
+ def connection_status(self, value: Optional[pulumi.Input[str]]):
881
+ pulumi.set(self, "connection_status", value)
882
+
883
+ @property
884
+ @pulumi.getter(name="localFqdn")
885
+ def local_fqdn(self) -> Optional[pulumi.Input[str]]:
886
+ """
887
+ Fully qualified domain name that will be used in the private DNS record created for the service attachment.
888
+ """
889
+ return pulumi.get(self, "local_fqdn")
890
+
891
+ @local_fqdn.setter
892
+ def local_fqdn(self, value: Optional[pulumi.Input[str]]):
893
+ pulumi.set(self, "local_fqdn", value)
894
+
895
+ @property
896
+ @pulumi.getter(name="targetServiceAttachmentUri")
897
+ def target_service_attachment_uri(self) -> Optional[pulumi.Input[str]]:
898
+ """
899
+ URI of the service attachment to connect to.
900
+ """
901
+ return pulumi.get(self, "target_service_attachment_uri")
902
+
903
+ @target_service_attachment_uri.setter
904
+ def target_service_attachment_uri(self, value: Optional[pulumi.Input[str]]):
905
+ pulumi.set(self, "target_service_attachment_uri", value)
906
+
907
+
751
908
  if not MYPY:
752
909
  class InstanceUserMetadataArgsDict(TypedDict):
753
910
  additional_developer_user_count: NotRequired[pulumi.Input[int]]