pulumi-gcp 8.27.0a1744872023__py3-none-any.whl → 8.27.0a1744903336__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/bigquery/_inputs.py +87 -30
  3. pulumi_gcp/bigquery/outputs.py +58 -20
  4. pulumi_gcp/bigquery/table.py +28 -14
  5. pulumi_gcp/cloudrun/service.py +46 -0
  6. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  7. pulumi_gcp/cloudrunv2/service.py +85 -0
  8. pulumi_gcp/compute/_inputs.py +428 -1
  9. pulumi_gcp/compute/image.py +183 -0
  10. pulumi_gcp/compute/outputs.py +362 -3
  11. pulumi_gcp/compute/region_backend_service.py +6 -2
  12. pulumi_gcp/compute/snapshot.py +6 -0
  13. pulumi_gcp/databasemigrationservice/_inputs.py +27 -24
  14. pulumi_gcp/databasemigrationservice/connection_profile.py +168 -0
  15. pulumi_gcp/databasemigrationservice/migration_job.py +6 -0
  16. pulumi_gcp/databasemigrationservice/outputs.py +18 -15
  17. pulumi_gcp/developerconnect/__init__.py +1 -0
  18. pulumi_gcp/developerconnect/_inputs.py +77 -0
  19. pulumi_gcp/developerconnect/account_connector.py +866 -0
  20. pulumi_gcp/developerconnect/outputs.py +64 -0
  21. pulumi_gcp/firestore/database.py +82 -0
  22. pulumi_gcp/firestore/index.py +263 -7
  23. pulumi_gcp/folder/service_identity.py +0 -26
  24. pulumi_gcp/managedkafka/_inputs.py +6 -6
  25. pulumi_gcp/managedkafka/connect_cluster.py +84 -40
  26. pulumi_gcp/managedkafka/connector.py +98 -44
  27. pulumi_gcp/managedkafka/outputs.py +4 -4
  28. pulumi_gcp/memorystore/_inputs.py +69 -0
  29. pulumi_gcp/memorystore/get_instance.py +34 -1
  30. pulumi_gcp/memorystore/instance.py +140 -0
  31. pulumi_gcp/memorystore/outputs.py +80 -0
  32. pulumi_gcp/ml/engine_model.py +0 -22
  33. pulumi_gcp/monitoring/_inputs.py +37 -19
  34. pulumi_gcp/monitoring/outputs.py +39 -11
  35. pulumi_gcp/monitoring/uptime_check_config.py +8 -0
  36. pulumi_gcp/netapp/_inputs.py +3 -3
  37. pulumi_gcp/netapp/outputs.py +2 -2
  38. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  39. pulumi_gcp/orgpolicy/policy.py +2 -2
  40. pulumi_gcp/osconfig/v2_policy_orchestrator.py +8 -0
  41. pulumi_gcp/osconfig/v2_policy_orchestrator_for_organization.py +8 -0
  42. pulumi_gcp/pubsub/subscription.py +6 -6
  43. pulumi_gcp/pulumi-plugin.json +1 -1
  44. pulumi_gcp/redis/_inputs.py +69 -0
  45. pulumi_gcp/redis/cluster.py +140 -0
  46. pulumi_gcp/redis/outputs.py +40 -0
  47. pulumi_gcp/storage/_inputs.py +111 -0
  48. pulumi_gcp/storage/control_folder_intelligence_config.py +32 -0
  49. pulumi_gcp/storage/control_organization_intelligence_config.py +32 -0
  50. pulumi_gcp/storage/control_project_intelligence_config.py +32 -0
  51. pulumi_gcp/storage/get_control_folder_intelligence_config.py +12 -1
  52. pulumi_gcp/storage/get_control_organization_intelligence_config.py +12 -1
  53. pulumi_gcp/storage/get_control_project_intelligence_config.py +12 -1
  54. pulumi_gcp/storage/outputs.py +174 -0
  55. pulumi_gcp/vertex/__init__.py +12 -0
  56. pulumi_gcp/vertex/_inputs.py +294 -0
  57. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  58. pulumi_gcp/vertex/ai_feature_group.py +1 -1
  59. pulumi_gcp/vertex/ai_feature_group_iam_binding.py +583 -0
  60. pulumi_gcp/vertex/ai_feature_group_iam_member.py +583 -0
  61. pulumi_gcp/vertex/ai_feature_group_iam_policy.py +422 -0
  62. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +26 -27
  63. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +614 -0
  64. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +614 -0
  65. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +453 -0
  66. pulumi_gcp/vertex/ai_feature_online_store_iam_binding.py +583 -0
  67. pulumi_gcp/vertex/ai_feature_online_store_iam_member.py +583 -0
  68. pulumi_gcp/vertex/ai_feature_online_store_iam_policy.py +422 -0
  69. pulumi_gcp/vertex/get_ai_feature_group_iam_policy.py +177 -0
  70. pulumi_gcp/vertex/get_ai_feature_online_store_featureview_iam_policy.py +194 -0
  71. pulumi_gcp/vertex/get_ai_feature_online_store_iam_policy.py +177 -0
  72. pulumi_gcp/vertex/outputs.py +168 -0
  73. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/METADATA +1 -1
  74. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/RECORD +76 -63
  75. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/WHEEL +0 -0
  76. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,422 @@
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 builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+
18
+ __all__ = ['AiFeatureGroupIamPolicyArgs', 'AiFeatureGroupIamPolicy']
19
+
20
+ @pulumi.input_type
21
+ class AiFeatureGroupIamPolicyArgs:
22
+ def __init__(__self__, *,
23
+ feature_group: pulumi.Input[builtins.str],
24
+ policy_data: pulumi.Input[builtins.str],
25
+ project: Optional[pulumi.Input[builtins.str]] = None,
26
+ region: Optional[pulumi.Input[builtins.str]] = None):
27
+ """
28
+ The set of arguments for constructing a AiFeatureGroupIamPolicy resource.
29
+ :param pulumi.Input[builtins.str] feature_group: Used to find the parent resource to bind the IAM policy to
30
+ :param pulumi.Input[builtins.str] policy_data: The policy data generated by
31
+ a `organizations_get_iam_policy` data source.
32
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
33
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
34
+ :param pulumi.Input[builtins.str] region: The region of feature group. eg us-central1 Used to find the parent resource to bind the IAM policy to. If not specified,
35
+ the value will be parsed from the identifier of the parent resource. If no region is provided in the parent identifier and no
36
+ region is specified, it is taken from the provider configuration.
37
+ """
38
+ pulumi.set(__self__, "feature_group", feature_group)
39
+ pulumi.set(__self__, "policy_data", policy_data)
40
+ if project is not None:
41
+ pulumi.set(__self__, "project", project)
42
+ if region is not None:
43
+ pulumi.set(__self__, "region", region)
44
+
45
+ @property
46
+ @pulumi.getter(name="featureGroup")
47
+ def feature_group(self) -> pulumi.Input[builtins.str]:
48
+ """
49
+ Used to find the parent resource to bind the IAM policy to
50
+ """
51
+ return pulumi.get(self, "feature_group")
52
+
53
+ @feature_group.setter
54
+ def feature_group(self, value: pulumi.Input[builtins.str]):
55
+ pulumi.set(self, "feature_group", value)
56
+
57
+ @property
58
+ @pulumi.getter(name="policyData")
59
+ def policy_data(self) -> pulumi.Input[builtins.str]:
60
+ """
61
+ The policy data generated by
62
+ a `organizations_get_iam_policy` data source.
63
+ """
64
+ return pulumi.get(self, "policy_data")
65
+
66
+ @policy_data.setter
67
+ def policy_data(self, value: pulumi.Input[builtins.str]):
68
+ pulumi.set(self, "policy_data", value)
69
+
70
+ @property
71
+ @pulumi.getter
72
+ def project(self) -> Optional[pulumi.Input[builtins.str]]:
73
+ """
74
+ The ID of the project in which the resource belongs.
75
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
76
+ """
77
+ return pulumi.get(self, "project")
78
+
79
+ @project.setter
80
+ def project(self, value: Optional[pulumi.Input[builtins.str]]):
81
+ pulumi.set(self, "project", value)
82
+
83
+ @property
84
+ @pulumi.getter
85
+ def region(self) -> Optional[pulumi.Input[builtins.str]]:
86
+ """
87
+ The region of feature group. eg us-central1 Used to find the parent resource to bind the IAM policy to. If not specified,
88
+ the value will be parsed from the identifier of the parent resource. If no region is provided in the parent identifier and no
89
+ region is specified, it is taken from the provider configuration.
90
+ """
91
+ return pulumi.get(self, "region")
92
+
93
+ @region.setter
94
+ def region(self, value: Optional[pulumi.Input[builtins.str]]):
95
+ pulumi.set(self, "region", value)
96
+
97
+
98
+ @pulumi.input_type
99
+ class _AiFeatureGroupIamPolicyState:
100
+ def __init__(__self__, *,
101
+ etag: Optional[pulumi.Input[builtins.str]] = None,
102
+ feature_group: Optional[pulumi.Input[builtins.str]] = None,
103
+ policy_data: Optional[pulumi.Input[builtins.str]] = None,
104
+ project: Optional[pulumi.Input[builtins.str]] = None,
105
+ region: Optional[pulumi.Input[builtins.str]] = None):
106
+ """
107
+ Input properties used for looking up and filtering AiFeatureGroupIamPolicy resources.
108
+ :param pulumi.Input[builtins.str] etag: (Computed) The etag of the IAM policy.
109
+ :param pulumi.Input[builtins.str] feature_group: Used to find the parent resource to bind the IAM policy to
110
+ :param pulumi.Input[builtins.str] policy_data: The policy data generated by
111
+ a `organizations_get_iam_policy` data source.
112
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
113
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
114
+ :param pulumi.Input[builtins.str] region: The region of feature group. eg us-central1 Used to find the parent resource to bind the IAM policy to. If not specified,
115
+ the value will be parsed from the identifier of the parent resource. If no region is provided in the parent identifier and no
116
+ region is specified, it is taken from the provider configuration.
117
+ """
118
+ if etag is not None:
119
+ pulumi.set(__self__, "etag", etag)
120
+ if feature_group is not None:
121
+ pulumi.set(__self__, "feature_group", feature_group)
122
+ if policy_data is not None:
123
+ pulumi.set(__self__, "policy_data", policy_data)
124
+ if project is not None:
125
+ pulumi.set(__self__, "project", project)
126
+ if region is not None:
127
+ pulumi.set(__self__, "region", region)
128
+
129
+ @property
130
+ @pulumi.getter
131
+ def etag(self) -> Optional[pulumi.Input[builtins.str]]:
132
+ """
133
+ (Computed) The etag of the IAM policy.
134
+ """
135
+ return pulumi.get(self, "etag")
136
+
137
+ @etag.setter
138
+ def etag(self, value: Optional[pulumi.Input[builtins.str]]):
139
+ pulumi.set(self, "etag", value)
140
+
141
+ @property
142
+ @pulumi.getter(name="featureGroup")
143
+ def feature_group(self) -> Optional[pulumi.Input[builtins.str]]:
144
+ """
145
+ Used to find the parent resource to bind the IAM policy to
146
+ """
147
+ return pulumi.get(self, "feature_group")
148
+
149
+ @feature_group.setter
150
+ def feature_group(self, value: Optional[pulumi.Input[builtins.str]]):
151
+ pulumi.set(self, "feature_group", value)
152
+
153
+ @property
154
+ @pulumi.getter(name="policyData")
155
+ def policy_data(self) -> Optional[pulumi.Input[builtins.str]]:
156
+ """
157
+ The policy data generated by
158
+ a `organizations_get_iam_policy` data source.
159
+ """
160
+ return pulumi.get(self, "policy_data")
161
+
162
+ @policy_data.setter
163
+ def policy_data(self, value: Optional[pulumi.Input[builtins.str]]):
164
+ pulumi.set(self, "policy_data", value)
165
+
166
+ @property
167
+ @pulumi.getter
168
+ def project(self) -> Optional[pulumi.Input[builtins.str]]:
169
+ """
170
+ The ID of the project in which the resource belongs.
171
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
172
+ """
173
+ return pulumi.get(self, "project")
174
+
175
+ @project.setter
176
+ def project(self, value: Optional[pulumi.Input[builtins.str]]):
177
+ pulumi.set(self, "project", value)
178
+
179
+ @property
180
+ @pulumi.getter
181
+ def region(self) -> Optional[pulumi.Input[builtins.str]]:
182
+ """
183
+ The region of feature group. eg us-central1 Used to find the parent resource to bind the IAM policy to. If not specified,
184
+ the value will be parsed from the identifier of the parent resource. If no region is provided in the parent identifier and no
185
+ region is specified, it is taken from the provider configuration.
186
+ """
187
+ return pulumi.get(self, "region")
188
+
189
+ @region.setter
190
+ def region(self, value: Optional[pulumi.Input[builtins.str]]):
191
+ pulumi.set(self, "region", value)
192
+
193
+
194
+ class AiFeatureGroupIamPolicy(pulumi.CustomResource):
195
+ @overload
196
+ def __init__(__self__,
197
+ resource_name: str,
198
+ opts: Optional[pulumi.ResourceOptions] = None,
199
+ feature_group: Optional[pulumi.Input[builtins.str]] = None,
200
+ policy_data: Optional[pulumi.Input[builtins.str]] = None,
201
+ project: Optional[pulumi.Input[builtins.str]] = None,
202
+ region: Optional[pulumi.Input[builtins.str]] = None,
203
+ __props__=None):
204
+ """
205
+ ## Import
206
+
207
+ For all import syntaxes, the "resource in question" can take any of the following forms:
208
+
209
+ * projects/{{project}}/locations/{{region}}/featureGroups/{{name}}
210
+
211
+ * {{project}}/{{region}}/{{name}}
212
+
213
+ * {{region}}/{{name}}
214
+
215
+ * {{name}}
216
+
217
+ Any variables not passed in the import command will be taken from the provider configuration.
218
+
219
+ Vertex AI featuregroup IAM resources can be imported using the resource identifiers, role, and member.
220
+
221
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
222
+
223
+ ```sh
224
+ $ pulumi import gcp:vertex/aiFeatureGroupIamPolicy:AiFeatureGroupIamPolicy editor "projects/{{project}}/locations/{{region}}/featureGroups/{{feature_group}} roles/viewer user:jane@example.com"
225
+ ```
226
+
227
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
228
+
229
+ ```sh
230
+ $ pulumi import gcp:vertex/aiFeatureGroupIamPolicy:AiFeatureGroupIamPolicy editor "projects/{{project}}/locations/{{region}}/featureGroups/{{feature_group}} roles/viewer"
231
+ ```
232
+
233
+ IAM policy imports use the identifier of the resource in question, e.g.
234
+
235
+ ```sh
236
+ $ pulumi import gcp:vertex/aiFeatureGroupIamPolicy:AiFeatureGroupIamPolicy editor projects/{{project}}/locations/{{region}}/featureGroups/{{feature_group}}
237
+ ```
238
+
239
+ -> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
240
+
241
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
242
+
243
+ :param str resource_name: The name of the resource.
244
+ :param pulumi.ResourceOptions opts: Options for the resource.
245
+ :param pulumi.Input[builtins.str] feature_group: Used to find the parent resource to bind the IAM policy to
246
+ :param pulumi.Input[builtins.str] policy_data: The policy data generated by
247
+ a `organizations_get_iam_policy` data source.
248
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
249
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
250
+ :param pulumi.Input[builtins.str] region: The region of feature group. eg us-central1 Used to find the parent resource to bind the IAM policy to. If not specified,
251
+ the value will be parsed from the identifier of the parent resource. If no region is provided in the parent identifier and no
252
+ region is specified, it is taken from the provider configuration.
253
+ """
254
+ ...
255
+ @overload
256
+ def __init__(__self__,
257
+ resource_name: str,
258
+ args: AiFeatureGroupIamPolicyArgs,
259
+ opts: Optional[pulumi.ResourceOptions] = None):
260
+ """
261
+ ## Import
262
+
263
+ For all import syntaxes, the "resource in question" can take any of the following forms:
264
+
265
+ * projects/{{project}}/locations/{{region}}/featureGroups/{{name}}
266
+
267
+ * {{project}}/{{region}}/{{name}}
268
+
269
+ * {{region}}/{{name}}
270
+
271
+ * {{name}}
272
+
273
+ Any variables not passed in the import command will be taken from the provider configuration.
274
+
275
+ Vertex AI featuregroup IAM resources can be imported using the resource identifiers, role, and member.
276
+
277
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
278
+
279
+ ```sh
280
+ $ pulumi import gcp:vertex/aiFeatureGroupIamPolicy:AiFeatureGroupIamPolicy editor "projects/{{project}}/locations/{{region}}/featureGroups/{{feature_group}} roles/viewer user:jane@example.com"
281
+ ```
282
+
283
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
284
+
285
+ ```sh
286
+ $ pulumi import gcp:vertex/aiFeatureGroupIamPolicy:AiFeatureGroupIamPolicy editor "projects/{{project}}/locations/{{region}}/featureGroups/{{feature_group}} roles/viewer"
287
+ ```
288
+
289
+ IAM policy imports use the identifier of the resource in question, e.g.
290
+
291
+ ```sh
292
+ $ pulumi import gcp:vertex/aiFeatureGroupIamPolicy:AiFeatureGroupIamPolicy editor projects/{{project}}/locations/{{region}}/featureGroups/{{feature_group}}
293
+ ```
294
+
295
+ -> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
296
+
297
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
298
+
299
+ :param str resource_name: The name of the resource.
300
+ :param AiFeatureGroupIamPolicyArgs args: The arguments to use to populate this resource's properties.
301
+ :param pulumi.ResourceOptions opts: Options for the resource.
302
+ """
303
+ ...
304
+ def __init__(__self__, resource_name: str, *args, **kwargs):
305
+ resource_args, opts = _utilities.get_resource_args_opts(AiFeatureGroupIamPolicyArgs, pulumi.ResourceOptions, *args, **kwargs)
306
+ if resource_args is not None:
307
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
308
+ else:
309
+ __self__._internal_init(resource_name, *args, **kwargs)
310
+
311
+ def _internal_init(__self__,
312
+ resource_name: str,
313
+ opts: Optional[pulumi.ResourceOptions] = None,
314
+ feature_group: Optional[pulumi.Input[builtins.str]] = None,
315
+ policy_data: Optional[pulumi.Input[builtins.str]] = None,
316
+ project: Optional[pulumi.Input[builtins.str]] = None,
317
+ region: Optional[pulumi.Input[builtins.str]] = None,
318
+ __props__=None):
319
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
320
+ if not isinstance(opts, pulumi.ResourceOptions):
321
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
322
+ if opts.id is None:
323
+ if __props__ is not None:
324
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
325
+ __props__ = AiFeatureGroupIamPolicyArgs.__new__(AiFeatureGroupIamPolicyArgs)
326
+
327
+ if feature_group is None and not opts.urn:
328
+ raise TypeError("Missing required property 'feature_group'")
329
+ __props__.__dict__["feature_group"] = feature_group
330
+ if policy_data is None and not opts.urn:
331
+ raise TypeError("Missing required property 'policy_data'")
332
+ __props__.__dict__["policy_data"] = policy_data
333
+ __props__.__dict__["project"] = project
334
+ __props__.__dict__["region"] = region
335
+ __props__.__dict__["etag"] = None
336
+ super(AiFeatureGroupIamPolicy, __self__).__init__(
337
+ 'gcp:vertex/aiFeatureGroupIamPolicy:AiFeatureGroupIamPolicy',
338
+ resource_name,
339
+ __props__,
340
+ opts)
341
+
342
+ @staticmethod
343
+ def get(resource_name: str,
344
+ id: pulumi.Input[str],
345
+ opts: Optional[pulumi.ResourceOptions] = None,
346
+ etag: Optional[pulumi.Input[builtins.str]] = None,
347
+ feature_group: Optional[pulumi.Input[builtins.str]] = None,
348
+ policy_data: Optional[pulumi.Input[builtins.str]] = None,
349
+ project: Optional[pulumi.Input[builtins.str]] = None,
350
+ region: Optional[pulumi.Input[builtins.str]] = None) -> 'AiFeatureGroupIamPolicy':
351
+ """
352
+ Get an existing AiFeatureGroupIamPolicy resource's state with the given name, id, and optional extra
353
+ properties used to qualify the lookup.
354
+
355
+ :param str resource_name: The unique name of the resulting resource.
356
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
357
+ :param pulumi.ResourceOptions opts: Options for the resource.
358
+ :param pulumi.Input[builtins.str] etag: (Computed) The etag of the IAM policy.
359
+ :param pulumi.Input[builtins.str] feature_group: Used to find the parent resource to bind the IAM policy to
360
+ :param pulumi.Input[builtins.str] policy_data: The policy data generated by
361
+ a `organizations_get_iam_policy` data source.
362
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
363
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
364
+ :param pulumi.Input[builtins.str] region: The region of feature group. eg us-central1 Used to find the parent resource to bind the IAM policy to. If not specified,
365
+ the value will be parsed from the identifier of the parent resource. If no region is provided in the parent identifier and no
366
+ region is specified, it is taken from the provider configuration.
367
+ """
368
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
369
+
370
+ __props__ = _AiFeatureGroupIamPolicyState.__new__(_AiFeatureGroupIamPolicyState)
371
+
372
+ __props__.__dict__["etag"] = etag
373
+ __props__.__dict__["feature_group"] = feature_group
374
+ __props__.__dict__["policy_data"] = policy_data
375
+ __props__.__dict__["project"] = project
376
+ __props__.__dict__["region"] = region
377
+ return AiFeatureGroupIamPolicy(resource_name, opts=opts, __props__=__props__)
378
+
379
+ @property
380
+ @pulumi.getter
381
+ def etag(self) -> pulumi.Output[builtins.str]:
382
+ """
383
+ (Computed) The etag of the IAM policy.
384
+ """
385
+ return pulumi.get(self, "etag")
386
+
387
+ @property
388
+ @pulumi.getter(name="featureGroup")
389
+ def feature_group(self) -> pulumi.Output[builtins.str]:
390
+ """
391
+ Used to find the parent resource to bind the IAM policy to
392
+ """
393
+ return pulumi.get(self, "feature_group")
394
+
395
+ @property
396
+ @pulumi.getter(name="policyData")
397
+ def policy_data(self) -> pulumi.Output[builtins.str]:
398
+ """
399
+ The policy data generated by
400
+ a `organizations_get_iam_policy` data source.
401
+ """
402
+ return pulumi.get(self, "policy_data")
403
+
404
+ @property
405
+ @pulumi.getter
406
+ def project(self) -> pulumi.Output[builtins.str]:
407
+ """
408
+ The ID of the project in which the resource belongs.
409
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
410
+ """
411
+ return pulumi.get(self, "project")
412
+
413
+ @property
414
+ @pulumi.getter
415
+ def region(self) -> pulumi.Output[builtins.str]:
416
+ """
417
+ The region of feature group. eg us-central1 Used to find the parent resource to bind the IAM policy to. If not specified,
418
+ the value will be parsed from the identifier of the parent resource. If no region is provided in the parent identifier and no
419
+ region is specified, it is taken from the provider configuration.
420
+ """
421
+ return pulumi.get(self, "region")
422
+
@@ -23,21 +23,17 @@ __all__ = ['AiFeatureOnlineStoreFeatureviewArgs', 'AiFeatureOnlineStoreFeaturevi
23
23
  class AiFeatureOnlineStoreFeatureviewArgs:
24
24
  def __init__(__self__, *,
25
25
  feature_online_store: pulumi.Input[builtins.str],
26
- region: pulumi.Input[builtins.str],
27
26
  big_query_source: Optional[pulumi.Input['AiFeatureOnlineStoreFeatureviewBigQuerySourceArgs']] = None,
28
27
  feature_registry_source: Optional[pulumi.Input['AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceArgs']] = None,
29
28
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
30
29
  name: Optional[pulumi.Input[builtins.str]] = None,
31
30
  project: Optional[pulumi.Input[builtins.str]] = None,
31
+ region: Optional[pulumi.Input[builtins.str]] = None,
32
32
  sync_config: Optional[pulumi.Input['AiFeatureOnlineStoreFeatureviewSyncConfigArgs']] = None,
33
33
  vector_search_config: Optional[pulumi.Input['AiFeatureOnlineStoreFeatureviewVectorSearchConfigArgs']] = None):
34
34
  """
35
35
  The set of arguments for constructing a AiFeatureOnlineStoreFeatureview resource.
36
36
  :param pulumi.Input[builtins.str] feature_online_store: The name of the FeatureOnlineStore to use for the featureview.
37
- :param pulumi.Input[builtins.str] region: The region for the resource. It should be the same as the featureonlinestore region.
38
-
39
-
40
- - - -
41
37
  :param pulumi.Input['AiFeatureOnlineStoreFeatureviewBigQuerySourceArgs'] big_query_source: Configures how data is supposed to be extracted from a BigQuery source to be loaded onto the FeatureOnlineStore.
42
38
  Structure is documented below.
43
39
  :param pulumi.Input['AiFeatureOnlineStoreFeatureviewFeatureRegistrySourceArgs'] feature_registry_source: Configures the features from a Feature Registry source that need to be loaded onto the FeatureOnlineStore.
@@ -49,13 +45,16 @@ class AiFeatureOnlineStoreFeatureviewArgs:
49
45
  :param pulumi.Input[builtins.str] name: Name of the FeatureView. This value may be up to 60 characters, and valid characters are [a-z0-9_]. The first character cannot be a number.
50
46
  :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
51
47
  If it is not provided, the provider project is used.
48
+ :param pulumi.Input[builtins.str] region: The region for the resource. It should be the same as the featureonlinestore region.
49
+
50
+
51
+ - - -
52
52
  :param pulumi.Input['AiFeatureOnlineStoreFeatureviewSyncConfigArgs'] sync_config: Configures when data is to be synced/updated for this FeatureView. At the end of the sync the latest featureValues for each entityId of this FeatureView are made ready for online serving.
53
53
  Structure is documented below.
54
54
  :param pulumi.Input['AiFeatureOnlineStoreFeatureviewVectorSearchConfigArgs'] vector_search_config: Configuration for vector search. It contains the required configurations to create an index from source data, so that approximate nearest neighbor (a.k.a ANN) algorithms search can be performed during online serving.
55
55
  Structure is documented below.
56
56
  """
57
57
  pulumi.set(__self__, "feature_online_store", feature_online_store)
58
- pulumi.set(__self__, "region", region)
59
58
  if big_query_source is not None:
60
59
  pulumi.set(__self__, "big_query_source", big_query_source)
61
60
  if feature_registry_source is not None:
@@ -66,6 +65,8 @@ class AiFeatureOnlineStoreFeatureviewArgs:
66
65
  pulumi.set(__self__, "name", name)
67
66
  if project is not None:
68
67
  pulumi.set(__self__, "project", project)
68
+ if region is not None:
69
+ pulumi.set(__self__, "region", region)
69
70
  if sync_config is not None:
70
71
  pulumi.set(__self__, "sync_config", sync_config)
71
72
  if vector_search_config is not None:
@@ -83,21 +84,6 @@ class AiFeatureOnlineStoreFeatureviewArgs:
83
84
  def feature_online_store(self, value: pulumi.Input[builtins.str]):
84
85
  pulumi.set(self, "feature_online_store", value)
85
86
 
86
- @property
87
- @pulumi.getter
88
- def region(self) -> pulumi.Input[builtins.str]:
89
- """
90
- The region for the resource. It should be the same as the featureonlinestore region.
91
-
92
-
93
- - - -
94
- """
95
- return pulumi.get(self, "region")
96
-
97
- @region.setter
98
- def region(self, value: pulumi.Input[builtins.str]):
99
- pulumi.set(self, "region", value)
100
-
101
87
  @property
102
88
  @pulumi.getter(name="bigQuerySource")
103
89
  def big_query_source(self) -> Optional[pulumi.Input['AiFeatureOnlineStoreFeatureviewBigQuerySourceArgs']]:
@@ -164,6 +150,21 @@ class AiFeatureOnlineStoreFeatureviewArgs:
164
150
  def project(self, value: Optional[pulumi.Input[builtins.str]]):
165
151
  pulumi.set(self, "project", value)
166
152
 
153
+ @property
154
+ @pulumi.getter
155
+ def region(self) -> Optional[pulumi.Input[builtins.str]]:
156
+ """
157
+ The region for the resource. It should be the same as the featureonlinestore region.
158
+
159
+
160
+ - - -
161
+ """
162
+ return pulumi.get(self, "region")
163
+
164
+ @region.setter
165
+ def region(self, value: Optional[pulumi.Input[builtins.str]]):
166
+ pulumi.set(self, "region", value)
167
+
167
168
  @property
168
169
  @pulumi.getter(name="syncConfig")
169
170
  def sync_config(self) -> Optional[pulumi.Input['AiFeatureOnlineStoreFeatureviewSyncConfigArgs']]:
@@ -619,8 +620,8 @@ class AiFeatureOnlineStoreFeatureview(pulumi.CustomResource):
619
620
 
620
621
  test_project = gcp.organizations.get_project()
621
622
  project = gcp.organizations.Project("project",
622
- project_id="tf-test_35305",
623
- name="tf-test_62793",
623
+ project_id="tf-test_49082",
624
+ name="tf-test_60365",
624
625
  org_id="123456789",
625
626
  billing_account="000000-0000000-0000000-000000",
626
627
  deletion_policy="DELETE")
@@ -1064,8 +1065,8 @@ class AiFeatureOnlineStoreFeatureview(pulumi.CustomResource):
1064
1065
 
1065
1066
  test_project = gcp.organizations.get_project()
1066
1067
  project = gcp.organizations.Project("project",
1067
- project_id="tf-test_35305",
1068
- name="tf-test_62793",
1068
+ project_id="tf-test_49082",
1069
+ name="tf-test_60365",
1069
1070
  org_id="123456789",
1070
1071
  billing_account="000000-0000000-0000000-000000",
1071
1072
  deletion_policy="DELETE")
@@ -1348,8 +1349,6 @@ class AiFeatureOnlineStoreFeatureview(pulumi.CustomResource):
1348
1349
  __props__.__dict__["labels"] = labels
1349
1350
  __props__.__dict__["name"] = name
1350
1351
  __props__.__dict__["project"] = project
1351
- if region is None and not opts.urn:
1352
- raise TypeError("Missing required property 'region'")
1353
1352
  __props__.__dict__["region"] = region
1354
1353
  __props__.__dict__["sync_config"] = sync_config
1355
1354
  __props__.__dict__["vector_search_config"] = vector_search_config