pulumi-gcp 8.3.0a1727223968__py3-none-any.whl → 8.3.0a1727226164__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 +120 -0
  2. pulumi_gcp/alloydb/_inputs.py +20 -0
  3. pulumi_gcp/alloydb/instance.py +36 -0
  4. pulumi_gcp/alloydb/outputs.py +14 -0
  5. pulumi_gcp/compute/__init__.py +1 -0
  6. pulumi_gcp/compute/_inputs.py +1400 -0
  7. pulumi_gcp/compute/attached_disk.py +103 -0
  8. pulumi_gcp/compute/backend_service.py +29 -22
  9. pulumi_gcp/compute/firewall_policy_with_rules.py +769 -0
  10. pulumi_gcp/compute/outputs.py +1019 -0
  11. pulumi_gcp/compute/region_backend_service.py +29 -22
  12. pulumi_gcp/compute/router_nat.py +27 -66
  13. pulumi_gcp/config/__init__.pyi +2 -0
  14. pulumi_gcp/config/vars.py +4 -0
  15. pulumi_gcp/container/_inputs.py +72 -99
  16. pulumi_gcp/container/outputs.py +53 -70
  17. pulumi_gcp/databasemigrationservice/__init__.py +1 -0
  18. pulumi_gcp/databasemigrationservice/_inputs.py +362 -0
  19. pulumi_gcp/databasemigrationservice/migration_job.py +1739 -0
  20. pulumi_gcp/databasemigrationservice/outputs.py +268 -0
  21. pulumi_gcp/dataproc/get_metastore_service.py +11 -1
  22. pulumi_gcp/dataproc/metastore_service.py +93 -0
  23. pulumi_gcp/developerconnect/_inputs.py +42 -39
  24. pulumi_gcp/developerconnect/connection.py +86 -83
  25. pulumi_gcp/developerconnect/outputs.py +28 -26
  26. pulumi_gcp/discoveryengine/__init__.py +1 -0
  27. pulumi_gcp/discoveryengine/_inputs.py +131 -0
  28. pulumi_gcp/discoveryengine/outputs.py +131 -0
  29. pulumi_gcp/discoveryengine/target_site.py +870 -0
  30. pulumi_gcp/dns/managed_zone.py +1 -1
  31. pulumi_gcp/filestore/get_instance.py +21 -1
  32. pulumi_gcp/filestore/instance.py +94 -0
  33. pulumi_gcp/gkehub/feature_membership.py +140 -62
  34. pulumi_gcp/healthcare/__init__.py +1 -0
  35. pulumi_gcp/healthcare/_inputs.py +39 -0
  36. pulumi_gcp/healthcare/outputs.py +40 -0
  37. pulumi_gcp/healthcare/workspace.py +465 -0
  38. pulumi_gcp/looker/instance.py +81 -0
  39. pulumi_gcp/netapp/_inputs.py +63 -0
  40. pulumi_gcp/netapp/outputs.py +57 -0
  41. pulumi_gcp/netapp/storage_pool.py +54 -0
  42. pulumi_gcp/netapp/volume.py +82 -0
  43. pulumi_gcp/provider.py +20 -0
  44. pulumi_gcp/pubsub/subscription.py +43 -7
  45. pulumi_gcp/pulumi-plugin.json +1 -1
  46. pulumi_gcp/secretmanager/__init__.py +8 -0
  47. pulumi_gcp/secretmanager/_inputs.py +308 -0
  48. pulumi_gcp/secretmanager/get_regional_secret.py +279 -0
  49. pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +173 -0
  50. pulumi_gcp/secretmanager/get_regional_secret_version.py +241 -0
  51. pulumi_gcp/secretmanager/outputs.py +336 -0
  52. pulumi_gcp/secretmanager/regional_secret.py +1433 -0
  53. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +1082 -0
  54. pulumi_gcp/secretmanager/regional_secret_iam_member.py +1082 -0
  55. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +901 -0
  56. pulumi_gcp/secretmanager/regional_secret_version.py +753 -0
  57. pulumi_gcp/securitycenter/__init__.py +4 -0
  58. pulumi_gcp/securitycenter/folder_scc_big_query_export.py +795 -0
  59. pulumi_gcp/securitycenter/organization_scc_big_query_export.py +738 -0
  60. pulumi_gcp/securitycenter/project_scc_big_query_export.py +749 -0
  61. pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +862 -0
  62. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +6 -2
  63. pulumi_gcp/siteverification/__init__.py +3 -0
  64. pulumi_gcp/siteverification/_inputs.py +85 -0
  65. pulumi_gcp/siteverification/outputs.py +57 -0
  66. pulumi_gcp/siteverification/web_resource.py +398 -0
  67. pulumi_gcp/spanner/__init__.py +1 -0
  68. pulumi_gcp/spanner/_inputs.py +129 -0
  69. pulumi_gcp/spanner/backup_schedule.py +748 -0
  70. pulumi_gcp/spanner/get_instance.py +11 -1
  71. pulumi_gcp/spanner/instance.py +56 -0
  72. pulumi_gcp/spanner/outputs.py +93 -0
  73. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/METADATA +1 -1
  74. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/RECORD +76 -56
  75. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/WHEEL +0 -0
  76. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,870 @@
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
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['TargetSiteArgs', 'TargetSite']
20
+
21
+ @pulumi.input_type
22
+ class TargetSiteArgs:
23
+ def __init__(__self__, *,
24
+ data_store_id: pulumi.Input[str],
25
+ location: pulumi.Input[str],
26
+ provided_uri_pattern: pulumi.Input[str],
27
+ exact_match: Optional[pulumi.Input[bool]] = None,
28
+ project: Optional[pulumi.Input[str]] = None,
29
+ type: Optional[pulumi.Input[str]] = None):
30
+ """
31
+ The set of arguments for constructing a TargetSite resource.
32
+ :param pulumi.Input[str] data_store_id: The unique id of the data store.
33
+
34
+
35
+ - - -
36
+ :param pulumi.Input[str] location: The geographic location where the data store should reside. The value can
37
+ only be one of "global", "us" and "eu".
38
+ :param pulumi.Input[str] provided_uri_pattern: The user provided URI pattern from which the `generated_uri_pattern` is
39
+ generated.
40
+ :param pulumi.Input[bool] exact_match: If set to false, a uri_pattern is generated to include all pages whose
41
+ address contains the provided_uri_pattern. If set to true, an uri_pattern
42
+ is generated to try to be an exact match of the provided_uri_pattern or
43
+ just the specific page if the provided_uri_pattern is a specific one.
44
+ provided_uri_pattern is always normalized to generate the URI pattern to
45
+ be used by the search engine.
46
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
47
+ If it is not provided, the provider project is used.
48
+ :param pulumi.Input[str] type: The possible target site types.
49
+ Possible values are: `INCLUDE`, `EXCLUDE`.
50
+ """
51
+ pulumi.set(__self__, "data_store_id", data_store_id)
52
+ pulumi.set(__self__, "location", location)
53
+ pulumi.set(__self__, "provided_uri_pattern", provided_uri_pattern)
54
+ if exact_match is not None:
55
+ pulumi.set(__self__, "exact_match", exact_match)
56
+ if project is not None:
57
+ pulumi.set(__self__, "project", project)
58
+ if type is not None:
59
+ pulumi.set(__self__, "type", type)
60
+
61
+ @property
62
+ @pulumi.getter(name="dataStoreId")
63
+ def data_store_id(self) -> pulumi.Input[str]:
64
+ """
65
+ The unique id of the data store.
66
+
67
+
68
+ - - -
69
+ """
70
+ return pulumi.get(self, "data_store_id")
71
+
72
+ @data_store_id.setter
73
+ def data_store_id(self, value: pulumi.Input[str]):
74
+ pulumi.set(self, "data_store_id", value)
75
+
76
+ @property
77
+ @pulumi.getter
78
+ def location(self) -> pulumi.Input[str]:
79
+ """
80
+ The geographic location where the data store should reside. The value can
81
+ only be one of "global", "us" and "eu".
82
+ """
83
+ return pulumi.get(self, "location")
84
+
85
+ @location.setter
86
+ def location(self, value: pulumi.Input[str]):
87
+ pulumi.set(self, "location", value)
88
+
89
+ @property
90
+ @pulumi.getter(name="providedUriPattern")
91
+ def provided_uri_pattern(self) -> pulumi.Input[str]:
92
+ """
93
+ The user provided URI pattern from which the `generated_uri_pattern` is
94
+ generated.
95
+ """
96
+ return pulumi.get(self, "provided_uri_pattern")
97
+
98
+ @provided_uri_pattern.setter
99
+ def provided_uri_pattern(self, value: pulumi.Input[str]):
100
+ pulumi.set(self, "provided_uri_pattern", value)
101
+
102
+ @property
103
+ @pulumi.getter(name="exactMatch")
104
+ def exact_match(self) -> Optional[pulumi.Input[bool]]:
105
+ """
106
+ If set to false, a uri_pattern is generated to include all pages whose
107
+ address contains the provided_uri_pattern. If set to true, an uri_pattern
108
+ is generated to try to be an exact match of the provided_uri_pattern or
109
+ just the specific page if the provided_uri_pattern is a specific one.
110
+ provided_uri_pattern is always normalized to generate the URI pattern to
111
+ be used by the search engine.
112
+ """
113
+ return pulumi.get(self, "exact_match")
114
+
115
+ @exact_match.setter
116
+ def exact_match(self, value: Optional[pulumi.Input[bool]]):
117
+ pulumi.set(self, "exact_match", value)
118
+
119
+ @property
120
+ @pulumi.getter
121
+ def project(self) -> Optional[pulumi.Input[str]]:
122
+ """
123
+ The ID of the project in which the resource belongs.
124
+ If it is not provided, the provider project is used.
125
+ """
126
+ return pulumi.get(self, "project")
127
+
128
+ @project.setter
129
+ def project(self, value: Optional[pulumi.Input[str]]):
130
+ pulumi.set(self, "project", value)
131
+
132
+ @property
133
+ @pulumi.getter
134
+ def type(self) -> Optional[pulumi.Input[str]]:
135
+ """
136
+ The possible target site types.
137
+ Possible values are: `INCLUDE`, `EXCLUDE`.
138
+ """
139
+ return pulumi.get(self, "type")
140
+
141
+ @type.setter
142
+ def type(self, value: Optional[pulumi.Input[str]]):
143
+ pulumi.set(self, "type", value)
144
+
145
+
146
+ @pulumi.input_type
147
+ class _TargetSiteState:
148
+ def __init__(__self__, *,
149
+ data_store_id: Optional[pulumi.Input[str]] = None,
150
+ exact_match: Optional[pulumi.Input[bool]] = None,
151
+ failure_reasons: Optional[pulumi.Input[Sequence[pulumi.Input['TargetSiteFailureReasonArgs']]]] = None,
152
+ generated_uri_pattern: Optional[pulumi.Input[str]] = None,
153
+ indexing_status: Optional[pulumi.Input[str]] = None,
154
+ location: Optional[pulumi.Input[str]] = None,
155
+ name: Optional[pulumi.Input[str]] = None,
156
+ project: Optional[pulumi.Input[str]] = None,
157
+ provided_uri_pattern: Optional[pulumi.Input[str]] = None,
158
+ root_domain_uri: Optional[pulumi.Input[str]] = None,
159
+ site_verification_infos: Optional[pulumi.Input[Sequence[pulumi.Input['TargetSiteSiteVerificationInfoArgs']]]] = None,
160
+ target_site_id: Optional[pulumi.Input[str]] = None,
161
+ type: Optional[pulumi.Input[str]] = None,
162
+ update_time: Optional[pulumi.Input[str]] = None):
163
+ """
164
+ Input properties used for looking up and filtering TargetSite resources.
165
+ :param pulumi.Input[str] data_store_id: The unique id of the data store.
166
+
167
+
168
+ - - -
169
+ :param pulumi.Input[bool] exact_match: If set to false, a uri_pattern is generated to include all pages whose
170
+ address contains the provided_uri_pattern. If set to true, an uri_pattern
171
+ is generated to try to be an exact match of the provided_uri_pattern or
172
+ just the specific page if the provided_uri_pattern is a specific one.
173
+ provided_uri_pattern is always normalized to generate the URI pattern to
174
+ be used by the search engine.
175
+ :param pulumi.Input[Sequence[pulumi.Input['TargetSiteFailureReasonArgs']]] failure_reasons: Site search indexing failure reasons.
176
+ Structure is documented below.
177
+ :param pulumi.Input[str] generated_uri_pattern: This is system-generated based on the `provided_uri_pattern`.
178
+ :param pulumi.Input[str] indexing_status: The indexing status.
179
+ :param pulumi.Input[str] location: The geographic location where the data store should reside. The value can
180
+ only be one of "global", "us" and "eu".
181
+ :param pulumi.Input[str] name: The unique full resource name of the target site. Values are of the format
182
+ `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/siteSearchEngine/targetSites/{target_site_id}`.
183
+ This field must be a UTF-8 encoded string with a length limit of 1024
184
+ characters.
185
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
186
+ If it is not provided, the provider project is used.
187
+ :param pulumi.Input[str] provided_uri_pattern: The user provided URI pattern from which the `generated_uri_pattern` is
188
+ generated.
189
+ :param pulumi.Input[str] root_domain_uri: Root domain of the `provided_uri_pattern`.
190
+ :param pulumi.Input[Sequence[pulumi.Input['TargetSiteSiteVerificationInfoArgs']]] site_verification_infos: Site ownership and validity verification status.
191
+ Structure is documented below.
192
+ :param pulumi.Input[str] target_site_id: The unique id of the target site.
193
+ :param pulumi.Input[str] type: The possible target site types.
194
+ Possible values are: `INCLUDE`, `EXCLUDE`.
195
+ :param pulumi.Input[str] update_time: The target site's last updated time.
196
+ """
197
+ if data_store_id is not None:
198
+ pulumi.set(__self__, "data_store_id", data_store_id)
199
+ if exact_match is not None:
200
+ pulumi.set(__self__, "exact_match", exact_match)
201
+ if failure_reasons is not None:
202
+ pulumi.set(__self__, "failure_reasons", failure_reasons)
203
+ if generated_uri_pattern is not None:
204
+ pulumi.set(__self__, "generated_uri_pattern", generated_uri_pattern)
205
+ if indexing_status is not None:
206
+ pulumi.set(__self__, "indexing_status", indexing_status)
207
+ if location is not None:
208
+ pulumi.set(__self__, "location", location)
209
+ if name is not None:
210
+ pulumi.set(__self__, "name", name)
211
+ if project is not None:
212
+ pulumi.set(__self__, "project", project)
213
+ if provided_uri_pattern is not None:
214
+ pulumi.set(__self__, "provided_uri_pattern", provided_uri_pattern)
215
+ if root_domain_uri is not None:
216
+ pulumi.set(__self__, "root_domain_uri", root_domain_uri)
217
+ if site_verification_infos is not None:
218
+ pulumi.set(__self__, "site_verification_infos", site_verification_infos)
219
+ if target_site_id is not None:
220
+ pulumi.set(__self__, "target_site_id", target_site_id)
221
+ if type is not None:
222
+ pulumi.set(__self__, "type", type)
223
+ if update_time is not None:
224
+ pulumi.set(__self__, "update_time", update_time)
225
+
226
+ @property
227
+ @pulumi.getter(name="dataStoreId")
228
+ def data_store_id(self) -> Optional[pulumi.Input[str]]:
229
+ """
230
+ The unique id of the data store.
231
+
232
+
233
+ - - -
234
+ """
235
+ return pulumi.get(self, "data_store_id")
236
+
237
+ @data_store_id.setter
238
+ def data_store_id(self, value: Optional[pulumi.Input[str]]):
239
+ pulumi.set(self, "data_store_id", value)
240
+
241
+ @property
242
+ @pulumi.getter(name="exactMatch")
243
+ def exact_match(self) -> Optional[pulumi.Input[bool]]:
244
+ """
245
+ If set to false, a uri_pattern is generated to include all pages whose
246
+ address contains the provided_uri_pattern. If set to true, an uri_pattern
247
+ is generated to try to be an exact match of the provided_uri_pattern or
248
+ just the specific page if the provided_uri_pattern is a specific one.
249
+ provided_uri_pattern is always normalized to generate the URI pattern to
250
+ be used by the search engine.
251
+ """
252
+ return pulumi.get(self, "exact_match")
253
+
254
+ @exact_match.setter
255
+ def exact_match(self, value: Optional[pulumi.Input[bool]]):
256
+ pulumi.set(self, "exact_match", value)
257
+
258
+ @property
259
+ @pulumi.getter(name="failureReasons")
260
+ def failure_reasons(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TargetSiteFailureReasonArgs']]]]:
261
+ """
262
+ Site search indexing failure reasons.
263
+ Structure is documented below.
264
+ """
265
+ return pulumi.get(self, "failure_reasons")
266
+
267
+ @failure_reasons.setter
268
+ def failure_reasons(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TargetSiteFailureReasonArgs']]]]):
269
+ pulumi.set(self, "failure_reasons", value)
270
+
271
+ @property
272
+ @pulumi.getter(name="generatedUriPattern")
273
+ def generated_uri_pattern(self) -> Optional[pulumi.Input[str]]:
274
+ """
275
+ This is system-generated based on the `provided_uri_pattern`.
276
+ """
277
+ return pulumi.get(self, "generated_uri_pattern")
278
+
279
+ @generated_uri_pattern.setter
280
+ def generated_uri_pattern(self, value: Optional[pulumi.Input[str]]):
281
+ pulumi.set(self, "generated_uri_pattern", value)
282
+
283
+ @property
284
+ @pulumi.getter(name="indexingStatus")
285
+ def indexing_status(self) -> Optional[pulumi.Input[str]]:
286
+ """
287
+ The indexing status.
288
+ """
289
+ return pulumi.get(self, "indexing_status")
290
+
291
+ @indexing_status.setter
292
+ def indexing_status(self, value: Optional[pulumi.Input[str]]):
293
+ pulumi.set(self, "indexing_status", value)
294
+
295
+ @property
296
+ @pulumi.getter
297
+ def location(self) -> Optional[pulumi.Input[str]]:
298
+ """
299
+ The geographic location where the data store should reside. The value can
300
+ only be one of "global", "us" and "eu".
301
+ """
302
+ return pulumi.get(self, "location")
303
+
304
+ @location.setter
305
+ def location(self, value: Optional[pulumi.Input[str]]):
306
+ pulumi.set(self, "location", value)
307
+
308
+ @property
309
+ @pulumi.getter
310
+ def name(self) -> Optional[pulumi.Input[str]]:
311
+ """
312
+ The unique full resource name of the target site. Values are of the format
313
+ `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/siteSearchEngine/targetSites/{target_site_id}`.
314
+ This field must be a UTF-8 encoded string with a length limit of 1024
315
+ characters.
316
+ """
317
+ return pulumi.get(self, "name")
318
+
319
+ @name.setter
320
+ def name(self, value: Optional[pulumi.Input[str]]):
321
+ pulumi.set(self, "name", value)
322
+
323
+ @property
324
+ @pulumi.getter
325
+ def project(self) -> Optional[pulumi.Input[str]]:
326
+ """
327
+ The ID of the project in which the resource belongs.
328
+ If it is not provided, the provider project is used.
329
+ """
330
+ return pulumi.get(self, "project")
331
+
332
+ @project.setter
333
+ def project(self, value: Optional[pulumi.Input[str]]):
334
+ pulumi.set(self, "project", value)
335
+
336
+ @property
337
+ @pulumi.getter(name="providedUriPattern")
338
+ def provided_uri_pattern(self) -> Optional[pulumi.Input[str]]:
339
+ """
340
+ The user provided URI pattern from which the `generated_uri_pattern` is
341
+ generated.
342
+ """
343
+ return pulumi.get(self, "provided_uri_pattern")
344
+
345
+ @provided_uri_pattern.setter
346
+ def provided_uri_pattern(self, value: Optional[pulumi.Input[str]]):
347
+ pulumi.set(self, "provided_uri_pattern", value)
348
+
349
+ @property
350
+ @pulumi.getter(name="rootDomainUri")
351
+ def root_domain_uri(self) -> Optional[pulumi.Input[str]]:
352
+ """
353
+ Root domain of the `provided_uri_pattern`.
354
+ """
355
+ return pulumi.get(self, "root_domain_uri")
356
+
357
+ @root_domain_uri.setter
358
+ def root_domain_uri(self, value: Optional[pulumi.Input[str]]):
359
+ pulumi.set(self, "root_domain_uri", value)
360
+
361
+ @property
362
+ @pulumi.getter(name="siteVerificationInfos")
363
+ def site_verification_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TargetSiteSiteVerificationInfoArgs']]]]:
364
+ """
365
+ Site ownership and validity verification status.
366
+ Structure is documented below.
367
+ """
368
+ return pulumi.get(self, "site_verification_infos")
369
+
370
+ @site_verification_infos.setter
371
+ def site_verification_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TargetSiteSiteVerificationInfoArgs']]]]):
372
+ pulumi.set(self, "site_verification_infos", value)
373
+
374
+ @property
375
+ @pulumi.getter(name="targetSiteId")
376
+ def target_site_id(self) -> Optional[pulumi.Input[str]]:
377
+ """
378
+ The unique id of the target site.
379
+ """
380
+ return pulumi.get(self, "target_site_id")
381
+
382
+ @target_site_id.setter
383
+ def target_site_id(self, value: Optional[pulumi.Input[str]]):
384
+ pulumi.set(self, "target_site_id", value)
385
+
386
+ @property
387
+ @pulumi.getter
388
+ def type(self) -> Optional[pulumi.Input[str]]:
389
+ """
390
+ The possible target site types.
391
+ Possible values are: `INCLUDE`, `EXCLUDE`.
392
+ """
393
+ return pulumi.get(self, "type")
394
+
395
+ @type.setter
396
+ def type(self, value: Optional[pulumi.Input[str]]):
397
+ pulumi.set(self, "type", value)
398
+
399
+ @property
400
+ @pulumi.getter(name="updateTime")
401
+ def update_time(self) -> Optional[pulumi.Input[str]]:
402
+ """
403
+ The target site's last updated time.
404
+ """
405
+ return pulumi.get(self, "update_time")
406
+
407
+ @update_time.setter
408
+ def update_time(self, value: Optional[pulumi.Input[str]]):
409
+ pulumi.set(self, "update_time", value)
410
+
411
+
412
+ class TargetSite(pulumi.CustomResource):
413
+ @overload
414
+ def __init__(__self__,
415
+ resource_name: str,
416
+ opts: Optional[pulumi.ResourceOptions] = None,
417
+ data_store_id: Optional[pulumi.Input[str]] = None,
418
+ exact_match: Optional[pulumi.Input[bool]] = None,
419
+ location: Optional[pulumi.Input[str]] = None,
420
+ project: Optional[pulumi.Input[str]] = None,
421
+ provided_uri_pattern: Optional[pulumi.Input[str]] = None,
422
+ type: Optional[pulumi.Input[str]] = None,
423
+ __props__=None):
424
+ """
425
+ TargetSite represents a URI pattern that the users want to confine their
426
+ search.
427
+
428
+ To get more information about TargetSite, see:
429
+
430
+ * [API documentation](https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/projects.locations.collections.dataStores.siteSearchEngine.targetSites)
431
+
432
+ ## Example Usage
433
+
434
+ ### Discoveryengine Targetsite Basic
435
+
436
+ ```python
437
+ import pulumi
438
+ import pulumi_gcp as gcp
439
+
440
+ basic_data_store = gcp.discoveryengine.DataStore("basic",
441
+ location="global",
442
+ data_store_id="data-store-id",
443
+ display_name="tf-test-basic-site-search-datastore",
444
+ industry_vertical="GENERIC",
445
+ content_config="PUBLIC_WEBSITE",
446
+ solution_types=["SOLUTION_TYPE_SEARCH"],
447
+ create_advanced_site_search=False,
448
+ skip_default_schema_creation=False)
449
+ basic = gcp.discoveryengine.TargetSite("basic",
450
+ location=basic_data_store.location,
451
+ data_store_id=basic_data_store.data_store_id,
452
+ provided_uri_pattern="http://cloud.google.com/docs/*",
453
+ type="INCLUDE",
454
+ exact_match=False)
455
+ ```
456
+ ### Discoveryengine Targetsite Advanced
457
+
458
+ ```python
459
+ import pulumi
460
+ import pulumi_gcp as gcp
461
+
462
+ advanced_data_store = gcp.discoveryengine.DataStore("advanced",
463
+ location="global",
464
+ data_store_id="data-store-id",
465
+ display_name="tf-test-advanced-site-search-datastore",
466
+ industry_vertical="GENERIC",
467
+ content_config="PUBLIC_WEBSITE",
468
+ solution_types=["SOLUTION_TYPE_SEARCH"],
469
+ create_advanced_site_search=True,
470
+ skip_default_schema_creation=False)
471
+ advanced = gcp.discoveryengine.TargetSite("advanced",
472
+ location=advanced_data_store.location,
473
+ data_store_id=advanced_data_store.data_store_id,
474
+ provided_uri_pattern="http://cloud.google.com/docs/*",
475
+ type="INCLUDE",
476
+ exact_match=False)
477
+ ```
478
+
479
+ ## Import
480
+
481
+ TargetSite can be imported using any of these accepted formats:
482
+
483
+ * `projects/{{project}}/locations/{{location}}/collections/default_collection/dataStores/{{data_store_id}}/siteSearchEngine/targetSites/{{target_site_id}}`
484
+
485
+ * `{{project}}/{{location}}/{{data_store_id}}/{{target_site_id}}`
486
+
487
+ * `{{location}}/{{data_store_id}}/{{target_site_id}}`
488
+
489
+ When using the `pulumi import` command, TargetSite can be imported using one of the formats above. For example:
490
+
491
+ ```sh
492
+ $ pulumi import gcp:discoveryengine/targetSite:TargetSite default projects/{{project}}/locations/{{location}}/collections/default_collection/dataStores/{{data_store_id}}/siteSearchEngine/targetSites/{{target_site_id}}
493
+ ```
494
+
495
+ ```sh
496
+ $ pulumi import gcp:discoveryengine/targetSite:TargetSite default {{project}}/{{location}}/{{data_store_id}}/{{target_site_id}}
497
+ ```
498
+
499
+ ```sh
500
+ $ pulumi import gcp:discoveryengine/targetSite:TargetSite default {{location}}/{{data_store_id}}/{{target_site_id}}
501
+ ```
502
+
503
+ :param str resource_name: The name of the resource.
504
+ :param pulumi.ResourceOptions opts: Options for the resource.
505
+ :param pulumi.Input[str] data_store_id: The unique id of the data store.
506
+
507
+
508
+ - - -
509
+ :param pulumi.Input[bool] exact_match: If set to false, a uri_pattern is generated to include all pages whose
510
+ address contains the provided_uri_pattern. If set to true, an uri_pattern
511
+ is generated to try to be an exact match of the provided_uri_pattern or
512
+ just the specific page if the provided_uri_pattern is a specific one.
513
+ provided_uri_pattern is always normalized to generate the URI pattern to
514
+ be used by the search engine.
515
+ :param pulumi.Input[str] location: The geographic location where the data store should reside. The value can
516
+ only be one of "global", "us" and "eu".
517
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
518
+ If it is not provided, the provider project is used.
519
+ :param pulumi.Input[str] provided_uri_pattern: The user provided URI pattern from which the `generated_uri_pattern` is
520
+ generated.
521
+ :param pulumi.Input[str] type: The possible target site types.
522
+ Possible values are: `INCLUDE`, `EXCLUDE`.
523
+ """
524
+ ...
525
+ @overload
526
+ def __init__(__self__,
527
+ resource_name: str,
528
+ args: TargetSiteArgs,
529
+ opts: Optional[pulumi.ResourceOptions] = None):
530
+ """
531
+ TargetSite represents a URI pattern that the users want to confine their
532
+ search.
533
+
534
+ To get more information about TargetSite, see:
535
+
536
+ * [API documentation](https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/projects.locations.collections.dataStores.siteSearchEngine.targetSites)
537
+
538
+ ## Example Usage
539
+
540
+ ### Discoveryengine Targetsite Basic
541
+
542
+ ```python
543
+ import pulumi
544
+ import pulumi_gcp as gcp
545
+
546
+ basic_data_store = gcp.discoveryengine.DataStore("basic",
547
+ location="global",
548
+ data_store_id="data-store-id",
549
+ display_name="tf-test-basic-site-search-datastore",
550
+ industry_vertical="GENERIC",
551
+ content_config="PUBLIC_WEBSITE",
552
+ solution_types=["SOLUTION_TYPE_SEARCH"],
553
+ create_advanced_site_search=False,
554
+ skip_default_schema_creation=False)
555
+ basic = gcp.discoveryengine.TargetSite("basic",
556
+ location=basic_data_store.location,
557
+ data_store_id=basic_data_store.data_store_id,
558
+ provided_uri_pattern="http://cloud.google.com/docs/*",
559
+ type="INCLUDE",
560
+ exact_match=False)
561
+ ```
562
+ ### Discoveryengine Targetsite Advanced
563
+
564
+ ```python
565
+ import pulumi
566
+ import pulumi_gcp as gcp
567
+
568
+ advanced_data_store = gcp.discoveryengine.DataStore("advanced",
569
+ location="global",
570
+ data_store_id="data-store-id",
571
+ display_name="tf-test-advanced-site-search-datastore",
572
+ industry_vertical="GENERIC",
573
+ content_config="PUBLIC_WEBSITE",
574
+ solution_types=["SOLUTION_TYPE_SEARCH"],
575
+ create_advanced_site_search=True,
576
+ skip_default_schema_creation=False)
577
+ advanced = gcp.discoveryengine.TargetSite("advanced",
578
+ location=advanced_data_store.location,
579
+ data_store_id=advanced_data_store.data_store_id,
580
+ provided_uri_pattern="http://cloud.google.com/docs/*",
581
+ type="INCLUDE",
582
+ exact_match=False)
583
+ ```
584
+
585
+ ## Import
586
+
587
+ TargetSite can be imported using any of these accepted formats:
588
+
589
+ * `projects/{{project}}/locations/{{location}}/collections/default_collection/dataStores/{{data_store_id}}/siteSearchEngine/targetSites/{{target_site_id}}`
590
+
591
+ * `{{project}}/{{location}}/{{data_store_id}}/{{target_site_id}}`
592
+
593
+ * `{{location}}/{{data_store_id}}/{{target_site_id}}`
594
+
595
+ When using the `pulumi import` command, TargetSite can be imported using one of the formats above. For example:
596
+
597
+ ```sh
598
+ $ pulumi import gcp:discoveryengine/targetSite:TargetSite default projects/{{project}}/locations/{{location}}/collections/default_collection/dataStores/{{data_store_id}}/siteSearchEngine/targetSites/{{target_site_id}}
599
+ ```
600
+
601
+ ```sh
602
+ $ pulumi import gcp:discoveryengine/targetSite:TargetSite default {{project}}/{{location}}/{{data_store_id}}/{{target_site_id}}
603
+ ```
604
+
605
+ ```sh
606
+ $ pulumi import gcp:discoveryengine/targetSite:TargetSite default {{location}}/{{data_store_id}}/{{target_site_id}}
607
+ ```
608
+
609
+ :param str resource_name: The name of the resource.
610
+ :param TargetSiteArgs args: The arguments to use to populate this resource's properties.
611
+ :param pulumi.ResourceOptions opts: Options for the resource.
612
+ """
613
+ ...
614
+ def __init__(__self__, resource_name: str, *args, **kwargs):
615
+ resource_args, opts = _utilities.get_resource_args_opts(TargetSiteArgs, pulumi.ResourceOptions, *args, **kwargs)
616
+ if resource_args is not None:
617
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
618
+ else:
619
+ __self__._internal_init(resource_name, *args, **kwargs)
620
+
621
+ def _internal_init(__self__,
622
+ resource_name: str,
623
+ opts: Optional[pulumi.ResourceOptions] = None,
624
+ data_store_id: Optional[pulumi.Input[str]] = None,
625
+ exact_match: Optional[pulumi.Input[bool]] = None,
626
+ location: Optional[pulumi.Input[str]] = None,
627
+ project: Optional[pulumi.Input[str]] = None,
628
+ provided_uri_pattern: Optional[pulumi.Input[str]] = None,
629
+ type: Optional[pulumi.Input[str]] = None,
630
+ __props__=None):
631
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
632
+ if not isinstance(opts, pulumi.ResourceOptions):
633
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
634
+ if opts.id is None:
635
+ if __props__ is not None:
636
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
637
+ __props__ = TargetSiteArgs.__new__(TargetSiteArgs)
638
+
639
+ if data_store_id is None and not opts.urn:
640
+ raise TypeError("Missing required property 'data_store_id'")
641
+ __props__.__dict__["data_store_id"] = data_store_id
642
+ __props__.__dict__["exact_match"] = exact_match
643
+ if location is None and not opts.urn:
644
+ raise TypeError("Missing required property 'location'")
645
+ __props__.__dict__["location"] = location
646
+ __props__.__dict__["project"] = project
647
+ if provided_uri_pattern is None and not opts.urn:
648
+ raise TypeError("Missing required property 'provided_uri_pattern'")
649
+ __props__.__dict__["provided_uri_pattern"] = provided_uri_pattern
650
+ __props__.__dict__["type"] = type
651
+ __props__.__dict__["failure_reasons"] = None
652
+ __props__.__dict__["generated_uri_pattern"] = None
653
+ __props__.__dict__["indexing_status"] = None
654
+ __props__.__dict__["name"] = None
655
+ __props__.__dict__["root_domain_uri"] = None
656
+ __props__.__dict__["site_verification_infos"] = None
657
+ __props__.__dict__["target_site_id"] = None
658
+ __props__.__dict__["update_time"] = None
659
+ super(TargetSite, __self__).__init__(
660
+ 'gcp:discoveryengine/targetSite:TargetSite',
661
+ resource_name,
662
+ __props__,
663
+ opts)
664
+
665
+ @staticmethod
666
+ def get(resource_name: str,
667
+ id: pulumi.Input[str],
668
+ opts: Optional[pulumi.ResourceOptions] = None,
669
+ data_store_id: Optional[pulumi.Input[str]] = None,
670
+ exact_match: Optional[pulumi.Input[bool]] = None,
671
+ failure_reasons: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TargetSiteFailureReasonArgs', 'TargetSiteFailureReasonArgsDict']]]]] = None,
672
+ generated_uri_pattern: Optional[pulumi.Input[str]] = None,
673
+ indexing_status: Optional[pulumi.Input[str]] = None,
674
+ location: Optional[pulumi.Input[str]] = None,
675
+ name: Optional[pulumi.Input[str]] = None,
676
+ project: Optional[pulumi.Input[str]] = None,
677
+ provided_uri_pattern: Optional[pulumi.Input[str]] = None,
678
+ root_domain_uri: Optional[pulumi.Input[str]] = None,
679
+ site_verification_infos: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TargetSiteSiteVerificationInfoArgs', 'TargetSiteSiteVerificationInfoArgsDict']]]]] = None,
680
+ target_site_id: Optional[pulumi.Input[str]] = None,
681
+ type: Optional[pulumi.Input[str]] = None,
682
+ update_time: Optional[pulumi.Input[str]] = None) -> 'TargetSite':
683
+ """
684
+ Get an existing TargetSite resource's state with the given name, id, and optional extra
685
+ properties used to qualify the lookup.
686
+
687
+ :param str resource_name: The unique name of the resulting resource.
688
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
689
+ :param pulumi.ResourceOptions opts: Options for the resource.
690
+ :param pulumi.Input[str] data_store_id: The unique id of the data store.
691
+
692
+
693
+ - - -
694
+ :param pulumi.Input[bool] exact_match: If set to false, a uri_pattern is generated to include all pages whose
695
+ address contains the provided_uri_pattern. If set to true, an uri_pattern
696
+ is generated to try to be an exact match of the provided_uri_pattern or
697
+ just the specific page if the provided_uri_pattern is a specific one.
698
+ provided_uri_pattern is always normalized to generate the URI pattern to
699
+ be used by the search engine.
700
+ :param pulumi.Input[Sequence[pulumi.Input[Union['TargetSiteFailureReasonArgs', 'TargetSiteFailureReasonArgsDict']]]] failure_reasons: Site search indexing failure reasons.
701
+ Structure is documented below.
702
+ :param pulumi.Input[str] generated_uri_pattern: This is system-generated based on the `provided_uri_pattern`.
703
+ :param pulumi.Input[str] indexing_status: The indexing status.
704
+ :param pulumi.Input[str] location: The geographic location where the data store should reside. The value can
705
+ only be one of "global", "us" and "eu".
706
+ :param pulumi.Input[str] name: The unique full resource name of the target site. Values are of the format
707
+ `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/siteSearchEngine/targetSites/{target_site_id}`.
708
+ This field must be a UTF-8 encoded string with a length limit of 1024
709
+ characters.
710
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
711
+ If it is not provided, the provider project is used.
712
+ :param pulumi.Input[str] provided_uri_pattern: The user provided URI pattern from which the `generated_uri_pattern` is
713
+ generated.
714
+ :param pulumi.Input[str] root_domain_uri: Root domain of the `provided_uri_pattern`.
715
+ :param pulumi.Input[Sequence[pulumi.Input[Union['TargetSiteSiteVerificationInfoArgs', 'TargetSiteSiteVerificationInfoArgsDict']]]] site_verification_infos: Site ownership and validity verification status.
716
+ Structure is documented below.
717
+ :param pulumi.Input[str] target_site_id: The unique id of the target site.
718
+ :param pulumi.Input[str] type: The possible target site types.
719
+ Possible values are: `INCLUDE`, `EXCLUDE`.
720
+ :param pulumi.Input[str] update_time: The target site's last updated time.
721
+ """
722
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
723
+
724
+ __props__ = _TargetSiteState.__new__(_TargetSiteState)
725
+
726
+ __props__.__dict__["data_store_id"] = data_store_id
727
+ __props__.__dict__["exact_match"] = exact_match
728
+ __props__.__dict__["failure_reasons"] = failure_reasons
729
+ __props__.__dict__["generated_uri_pattern"] = generated_uri_pattern
730
+ __props__.__dict__["indexing_status"] = indexing_status
731
+ __props__.__dict__["location"] = location
732
+ __props__.__dict__["name"] = name
733
+ __props__.__dict__["project"] = project
734
+ __props__.__dict__["provided_uri_pattern"] = provided_uri_pattern
735
+ __props__.__dict__["root_domain_uri"] = root_domain_uri
736
+ __props__.__dict__["site_verification_infos"] = site_verification_infos
737
+ __props__.__dict__["target_site_id"] = target_site_id
738
+ __props__.__dict__["type"] = type
739
+ __props__.__dict__["update_time"] = update_time
740
+ return TargetSite(resource_name, opts=opts, __props__=__props__)
741
+
742
+ @property
743
+ @pulumi.getter(name="dataStoreId")
744
+ def data_store_id(self) -> pulumi.Output[str]:
745
+ """
746
+ The unique id of the data store.
747
+
748
+
749
+ - - -
750
+ """
751
+ return pulumi.get(self, "data_store_id")
752
+
753
+ @property
754
+ @pulumi.getter(name="exactMatch")
755
+ def exact_match(self) -> pulumi.Output[Optional[bool]]:
756
+ """
757
+ If set to false, a uri_pattern is generated to include all pages whose
758
+ address contains the provided_uri_pattern. If set to true, an uri_pattern
759
+ is generated to try to be an exact match of the provided_uri_pattern or
760
+ just the specific page if the provided_uri_pattern is a specific one.
761
+ provided_uri_pattern is always normalized to generate the URI pattern to
762
+ be used by the search engine.
763
+ """
764
+ return pulumi.get(self, "exact_match")
765
+
766
+ @property
767
+ @pulumi.getter(name="failureReasons")
768
+ def failure_reasons(self) -> pulumi.Output[Sequence['outputs.TargetSiteFailureReason']]:
769
+ """
770
+ Site search indexing failure reasons.
771
+ Structure is documented below.
772
+ """
773
+ return pulumi.get(self, "failure_reasons")
774
+
775
+ @property
776
+ @pulumi.getter(name="generatedUriPattern")
777
+ def generated_uri_pattern(self) -> pulumi.Output[str]:
778
+ """
779
+ This is system-generated based on the `provided_uri_pattern`.
780
+ """
781
+ return pulumi.get(self, "generated_uri_pattern")
782
+
783
+ @property
784
+ @pulumi.getter(name="indexingStatus")
785
+ def indexing_status(self) -> pulumi.Output[str]:
786
+ """
787
+ The indexing status.
788
+ """
789
+ return pulumi.get(self, "indexing_status")
790
+
791
+ @property
792
+ @pulumi.getter
793
+ def location(self) -> pulumi.Output[str]:
794
+ """
795
+ The geographic location where the data store should reside. The value can
796
+ only be one of "global", "us" and "eu".
797
+ """
798
+ return pulumi.get(self, "location")
799
+
800
+ @property
801
+ @pulumi.getter
802
+ def name(self) -> pulumi.Output[str]:
803
+ """
804
+ The unique full resource name of the target site. Values are of the format
805
+ `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/siteSearchEngine/targetSites/{target_site_id}`.
806
+ This field must be a UTF-8 encoded string with a length limit of 1024
807
+ characters.
808
+ """
809
+ return pulumi.get(self, "name")
810
+
811
+ @property
812
+ @pulumi.getter
813
+ def project(self) -> pulumi.Output[str]:
814
+ """
815
+ The ID of the project in which the resource belongs.
816
+ If it is not provided, the provider project is used.
817
+ """
818
+ return pulumi.get(self, "project")
819
+
820
+ @property
821
+ @pulumi.getter(name="providedUriPattern")
822
+ def provided_uri_pattern(self) -> pulumi.Output[str]:
823
+ """
824
+ The user provided URI pattern from which the `generated_uri_pattern` is
825
+ generated.
826
+ """
827
+ return pulumi.get(self, "provided_uri_pattern")
828
+
829
+ @property
830
+ @pulumi.getter(name="rootDomainUri")
831
+ def root_domain_uri(self) -> pulumi.Output[str]:
832
+ """
833
+ Root domain of the `provided_uri_pattern`.
834
+ """
835
+ return pulumi.get(self, "root_domain_uri")
836
+
837
+ @property
838
+ @pulumi.getter(name="siteVerificationInfos")
839
+ def site_verification_infos(self) -> pulumi.Output[Sequence['outputs.TargetSiteSiteVerificationInfo']]:
840
+ """
841
+ Site ownership and validity verification status.
842
+ Structure is documented below.
843
+ """
844
+ return pulumi.get(self, "site_verification_infos")
845
+
846
+ @property
847
+ @pulumi.getter(name="targetSiteId")
848
+ def target_site_id(self) -> pulumi.Output[str]:
849
+ """
850
+ The unique id of the target site.
851
+ """
852
+ return pulumi.get(self, "target_site_id")
853
+
854
+ @property
855
+ @pulumi.getter
856
+ def type(self) -> pulumi.Output[Optional[str]]:
857
+ """
858
+ The possible target site types.
859
+ Possible values are: `INCLUDE`, `EXCLUDE`.
860
+ """
861
+ return pulumi.get(self, "type")
862
+
863
+ @property
864
+ @pulumi.getter(name="updateTime")
865
+ def update_time(self) -> pulumi.Output[str]:
866
+ """
867
+ The target site's last updated time.
868
+ """
869
+ return pulumi.get(self, "update_time")
870
+