pulumi-gcp 7.12.0a1709365001__py3-none-any.whl → 7.13.0a1709814369__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. pulumi_gcp/__init__.py +72 -0
  2. pulumi_gcp/appengine/application_url_dispatch_rules.py +2 -2
  3. pulumi_gcp/appengine/engine_split_traffic.py +4 -4
  4. pulumi_gcp/appengine/service_network_settings.py +2 -2
  5. pulumi_gcp/appengine/standard_app_version.py +4 -4
  6. pulumi_gcp/bigquery/_inputs.py +88 -0
  7. pulumi_gcp/bigquery/dataset_iam_binding.py +35 -28
  8. pulumi_gcp/bigquery/dataset_iam_member.py +35 -28
  9. pulumi_gcp/bigquery/dataset_iam_policy.py +35 -28
  10. pulumi_gcp/bigquery/outputs.py +91 -0
  11. pulumi_gcp/bigquery/routine.py +118 -12
  12. pulumi_gcp/certificatemanager/dns_authorization.py +63 -14
  13. pulumi_gcp/clouddeploy/__init__.py +4 -0
  14. pulumi_gcp/clouddeploy/_inputs.py +80 -0
  15. pulumi_gcp/clouddeploy/automation.py +16 -0
  16. pulumi_gcp/clouddeploy/get_target_iam_policy.py +162 -0
  17. pulumi_gcp/clouddeploy/outputs.py +56 -0
  18. pulumi_gcp/clouddeploy/target_iam_binding.py +324 -0
  19. pulumi_gcp/clouddeploy/target_iam_member.py +324 -0
  20. pulumi_gcp/clouddeploy/target_iam_policy.py +253 -0
  21. pulumi_gcp/cloudfunctionsv2/function.py +0 -2
  22. pulumi_gcp/cloudrunv2/_inputs.py +4 -2
  23. pulumi_gcp/cloudrunv2/outputs.py +8 -4
  24. pulumi_gcp/composer/_inputs.py +18 -2
  25. pulumi_gcp/composer/outputs.py +29 -4
  26. pulumi_gcp/compute/__init__.py +1 -0
  27. pulumi_gcp/compute/get_forwarding_rules.py +142 -0
  28. pulumi_gcp/compute/instance_group_membership.py +4 -4
  29. pulumi_gcp/compute/outputs.py +816 -0
  30. pulumi_gcp/compute/region_network_endpoint.py +2 -2
  31. pulumi_gcp/compute/region_target_https_proxy.py +162 -37
  32. pulumi_gcp/compute/router_nat.py +8 -8
  33. pulumi_gcp/container/_inputs.py +80 -0
  34. pulumi_gcp/container/cluster.py +20 -16
  35. pulumi_gcp/container/outputs.py +115 -1
  36. pulumi_gcp/firebase/__init__.py +4 -0
  37. pulumi_gcp/firebase/app_check_app_attest_config.py +461 -0
  38. pulumi_gcp/firebase/app_check_play_integrity_config.py +465 -0
  39. pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +474 -0
  40. pulumi_gcp/firebase/app_check_recaptcha_v3_config.py +511 -0
  41. pulumi_gcp/gkehub/scope.py +85 -0
  42. pulumi_gcp/integrationconnectors/connection.py +4 -4
  43. pulumi_gcp/looker/_inputs.py +42 -0
  44. pulumi_gcp/looker/instance.py +90 -0
  45. pulumi_gcp/looker/outputs.py +34 -0
  46. pulumi_gcp/migrationcenter/__init__.py +3 -0
  47. pulumi_gcp/migrationcenter/_inputs.py +500 -0
  48. pulumi_gcp/migrationcenter/outputs.py +562 -0
  49. pulumi_gcp/migrationcenter/preference_set.py +687 -0
  50. pulumi_gcp/monitoring/custom_service.py +4 -2
  51. pulumi_gcp/monitoring/generic_service.py +4 -2
  52. pulumi_gcp/monitoring/get_app_engine_service.py +2 -2
  53. pulumi_gcp/netapp/__init__.py +1 -0
  54. pulumi_gcp/netapp/_inputs.py +275 -0
  55. pulumi_gcp/netapp/outputs.py +290 -0
  56. pulumi_gcp/netapp/volume.py +140 -2
  57. pulumi_gcp/netapp/volume_replication.py +1292 -0
  58. pulumi_gcp/notebooks/instance.py +1 -1
  59. pulumi_gcp/securityposture/_inputs.py +22 -19
  60. pulumi_gcp/securityposture/outputs.py +18 -15
  61. pulumi_gcp/securityposture/posture.py +28 -48
  62. pulumi_gcp/spanner/_inputs.py +20 -0
  63. pulumi_gcp/spanner/database_iam_binding.py +134 -0
  64. pulumi_gcp/spanner/database_iam_member.py +134 -0
  65. pulumi_gcp/spanner/database_iam_policy.py +114 -0
  66. pulumi_gcp/spanner/outputs.py +20 -0
  67. pulumi_gcp/workbench/_inputs.py +157 -2
  68. pulumi_gcp/workbench/instance.py +52 -0
  69. pulumi_gcp/workbench/outputs.py +154 -2
  70. {pulumi_gcp-7.12.0a1709365001.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/METADATA +1 -1
  71. {pulumi_gcp-7.12.0a1709365001.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/RECORD +73 -60
  72. {pulumi_gcp-7.12.0a1709365001.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/WHEEL +0 -0
  73. {pulumi_gcp-7.12.0a1709365001.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,687 @@
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 pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['PreferenceSetArgs', 'PreferenceSet']
15
+
16
+ @pulumi.input_type
17
+ class PreferenceSetArgs:
18
+ def __init__(__self__, *,
19
+ location: pulumi.Input[str],
20
+ preference_set_id: pulumi.Input[str],
21
+ description: Optional[pulumi.Input[str]] = None,
22
+ display_name: Optional[pulumi.Input[str]] = None,
23
+ project: Optional[pulumi.Input[str]] = None,
24
+ virtual_machine_preferences: Optional[pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs']] = None):
25
+ """
26
+ The set of arguments for constructing a PreferenceSet resource.
27
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
28
+ :param pulumi.Input[str] preference_set_id: Required. User specified ID for the preference set. It will become the last component of the preference set name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression `a-z?`.
29
+
30
+
31
+ - - -
32
+ :param pulumi.Input[str] description: A description of the preference set.
33
+ :param pulumi.Input[str] display_name: User-friendly display name. Maximum length is 63 characters.
34
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
35
+ If it is not provided, the provider project is used.
36
+ :param pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs'] virtual_machine_preferences: VirtualMachinePreferences enables you to create sets of assumptions, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.
37
+ Structure is documented below.
38
+ """
39
+ pulumi.set(__self__, "location", location)
40
+ pulumi.set(__self__, "preference_set_id", preference_set_id)
41
+ if description is not None:
42
+ pulumi.set(__self__, "description", description)
43
+ if display_name is not None:
44
+ pulumi.set(__self__, "display_name", display_name)
45
+ if project is not None:
46
+ pulumi.set(__self__, "project", project)
47
+ if virtual_machine_preferences is not None:
48
+ pulumi.set(__self__, "virtual_machine_preferences", virtual_machine_preferences)
49
+
50
+ @property
51
+ @pulumi.getter
52
+ def location(self) -> pulumi.Input[str]:
53
+ """
54
+ Part of `parent`. See documentation of `projectsId`.
55
+ """
56
+ return pulumi.get(self, "location")
57
+
58
+ @location.setter
59
+ def location(self, value: pulumi.Input[str]):
60
+ pulumi.set(self, "location", value)
61
+
62
+ @property
63
+ @pulumi.getter(name="preferenceSetId")
64
+ def preference_set_id(self) -> pulumi.Input[str]:
65
+ """
66
+ Required. User specified ID for the preference set. It will become the last component of the preference set name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression `a-z?`.
67
+
68
+
69
+ - - -
70
+ """
71
+ return pulumi.get(self, "preference_set_id")
72
+
73
+ @preference_set_id.setter
74
+ def preference_set_id(self, value: pulumi.Input[str]):
75
+ pulumi.set(self, "preference_set_id", value)
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def description(self) -> Optional[pulumi.Input[str]]:
80
+ """
81
+ A description of the preference set.
82
+ """
83
+ return pulumi.get(self, "description")
84
+
85
+ @description.setter
86
+ def description(self, value: Optional[pulumi.Input[str]]):
87
+ pulumi.set(self, "description", value)
88
+
89
+ @property
90
+ @pulumi.getter(name="displayName")
91
+ def display_name(self) -> Optional[pulumi.Input[str]]:
92
+ """
93
+ User-friendly display name. Maximum length is 63 characters.
94
+ """
95
+ return pulumi.get(self, "display_name")
96
+
97
+ @display_name.setter
98
+ def display_name(self, value: Optional[pulumi.Input[str]]):
99
+ pulumi.set(self, "display_name", value)
100
+
101
+ @property
102
+ @pulumi.getter
103
+ def project(self) -> Optional[pulumi.Input[str]]:
104
+ """
105
+ The ID of the project in which the resource belongs.
106
+ If it is not provided, the provider project is used.
107
+ """
108
+ return pulumi.get(self, "project")
109
+
110
+ @project.setter
111
+ def project(self, value: Optional[pulumi.Input[str]]):
112
+ pulumi.set(self, "project", value)
113
+
114
+ @property
115
+ @pulumi.getter(name="virtualMachinePreferences")
116
+ def virtual_machine_preferences(self) -> Optional[pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs']]:
117
+ """
118
+ VirtualMachinePreferences enables you to create sets of assumptions, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.
119
+ Structure is documented below.
120
+ """
121
+ return pulumi.get(self, "virtual_machine_preferences")
122
+
123
+ @virtual_machine_preferences.setter
124
+ def virtual_machine_preferences(self, value: Optional[pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs']]):
125
+ pulumi.set(self, "virtual_machine_preferences", value)
126
+
127
+
128
+ @pulumi.input_type
129
+ class _PreferenceSetState:
130
+ def __init__(__self__, *,
131
+ create_time: Optional[pulumi.Input[str]] = None,
132
+ description: Optional[pulumi.Input[str]] = None,
133
+ display_name: Optional[pulumi.Input[str]] = None,
134
+ location: Optional[pulumi.Input[str]] = None,
135
+ name: Optional[pulumi.Input[str]] = None,
136
+ preference_set_id: Optional[pulumi.Input[str]] = None,
137
+ project: Optional[pulumi.Input[str]] = None,
138
+ update_time: Optional[pulumi.Input[str]] = None,
139
+ virtual_machine_preferences: Optional[pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs']] = None):
140
+ """
141
+ Input properties used for looking up and filtering PreferenceSet resources.
142
+ :param pulumi.Input[str] create_time: Output only. The timestamp when the preference set was created.
143
+ :param pulumi.Input[str] description: A description of the preference set.
144
+ :param pulumi.Input[str] display_name: User-friendly display name. Maximum length is 63 characters.
145
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
146
+ :param pulumi.Input[str] name: Output only. Name of the preference set.
147
+ :param pulumi.Input[str] preference_set_id: Required. User specified ID for the preference set. It will become the last component of the preference set name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression `a-z?`.
148
+
149
+
150
+ - - -
151
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
152
+ If it is not provided, the provider project is used.
153
+ :param pulumi.Input[str] update_time: Output only. The timestamp when the preference set was last updated.
154
+ :param pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs'] virtual_machine_preferences: VirtualMachinePreferences enables you to create sets of assumptions, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.
155
+ Structure is documented below.
156
+ """
157
+ if create_time is not None:
158
+ pulumi.set(__self__, "create_time", create_time)
159
+ if description is not None:
160
+ pulumi.set(__self__, "description", description)
161
+ if display_name is not None:
162
+ pulumi.set(__self__, "display_name", display_name)
163
+ if location is not None:
164
+ pulumi.set(__self__, "location", location)
165
+ if name is not None:
166
+ pulumi.set(__self__, "name", name)
167
+ if preference_set_id is not None:
168
+ pulumi.set(__self__, "preference_set_id", preference_set_id)
169
+ if project is not None:
170
+ pulumi.set(__self__, "project", project)
171
+ if update_time is not None:
172
+ pulumi.set(__self__, "update_time", update_time)
173
+ if virtual_machine_preferences is not None:
174
+ pulumi.set(__self__, "virtual_machine_preferences", virtual_machine_preferences)
175
+
176
+ @property
177
+ @pulumi.getter(name="createTime")
178
+ def create_time(self) -> Optional[pulumi.Input[str]]:
179
+ """
180
+ Output only. The timestamp when the preference set was created.
181
+ """
182
+ return pulumi.get(self, "create_time")
183
+
184
+ @create_time.setter
185
+ def create_time(self, value: Optional[pulumi.Input[str]]):
186
+ pulumi.set(self, "create_time", value)
187
+
188
+ @property
189
+ @pulumi.getter
190
+ def description(self) -> Optional[pulumi.Input[str]]:
191
+ """
192
+ A description of the preference set.
193
+ """
194
+ return pulumi.get(self, "description")
195
+
196
+ @description.setter
197
+ def description(self, value: Optional[pulumi.Input[str]]):
198
+ pulumi.set(self, "description", value)
199
+
200
+ @property
201
+ @pulumi.getter(name="displayName")
202
+ def display_name(self) -> Optional[pulumi.Input[str]]:
203
+ """
204
+ User-friendly display name. Maximum length is 63 characters.
205
+ """
206
+ return pulumi.get(self, "display_name")
207
+
208
+ @display_name.setter
209
+ def display_name(self, value: Optional[pulumi.Input[str]]):
210
+ pulumi.set(self, "display_name", value)
211
+
212
+ @property
213
+ @pulumi.getter
214
+ def location(self) -> Optional[pulumi.Input[str]]:
215
+ """
216
+ Part of `parent`. See documentation of `projectsId`.
217
+ """
218
+ return pulumi.get(self, "location")
219
+
220
+ @location.setter
221
+ def location(self, value: Optional[pulumi.Input[str]]):
222
+ pulumi.set(self, "location", value)
223
+
224
+ @property
225
+ @pulumi.getter
226
+ def name(self) -> Optional[pulumi.Input[str]]:
227
+ """
228
+ Output only. Name of the preference set.
229
+ """
230
+ return pulumi.get(self, "name")
231
+
232
+ @name.setter
233
+ def name(self, value: Optional[pulumi.Input[str]]):
234
+ pulumi.set(self, "name", value)
235
+
236
+ @property
237
+ @pulumi.getter(name="preferenceSetId")
238
+ def preference_set_id(self) -> Optional[pulumi.Input[str]]:
239
+ """
240
+ Required. User specified ID for the preference set. It will become the last component of the preference set name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression `a-z?`.
241
+
242
+
243
+ - - -
244
+ """
245
+ return pulumi.get(self, "preference_set_id")
246
+
247
+ @preference_set_id.setter
248
+ def preference_set_id(self, value: Optional[pulumi.Input[str]]):
249
+ pulumi.set(self, "preference_set_id", value)
250
+
251
+ @property
252
+ @pulumi.getter
253
+ def project(self) -> Optional[pulumi.Input[str]]:
254
+ """
255
+ The ID of the project in which the resource belongs.
256
+ If it is not provided, the provider project is used.
257
+ """
258
+ return pulumi.get(self, "project")
259
+
260
+ @project.setter
261
+ def project(self, value: Optional[pulumi.Input[str]]):
262
+ pulumi.set(self, "project", value)
263
+
264
+ @property
265
+ @pulumi.getter(name="updateTime")
266
+ def update_time(self) -> Optional[pulumi.Input[str]]:
267
+ """
268
+ Output only. The timestamp when the preference set was last updated.
269
+ """
270
+ return pulumi.get(self, "update_time")
271
+
272
+ @update_time.setter
273
+ def update_time(self, value: Optional[pulumi.Input[str]]):
274
+ pulumi.set(self, "update_time", value)
275
+
276
+ @property
277
+ @pulumi.getter(name="virtualMachinePreferences")
278
+ def virtual_machine_preferences(self) -> Optional[pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs']]:
279
+ """
280
+ VirtualMachinePreferences enables you to create sets of assumptions, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.
281
+ Structure is documented below.
282
+ """
283
+ return pulumi.get(self, "virtual_machine_preferences")
284
+
285
+ @virtual_machine_preferences.setter
286
+ def virtual_machine_preferences(self, value: Optional[pulumi.Input['PreferenceSetVirtualMachinePreferencesArgs']]):
287
+ pulumi.set(self, "virtual_machine_preferences", value)
288
+
289
+
290
+ class PreferenceSet(pulumi.CustomResource):
291
+ @overload
292
+ def __init__(__self__,
293
+ resource_name: str,
294
+ opts: Optional[pulumi.ResourceOptions] = None,
295
+ description: Optional[pulumi.Input[str]] = None,
296
+ display_name: Optional[pulumi.Input[str]] = None,
297
+ location: Optional[pulumi.Input[str]] = None,
298
+ preference_set_id: Optional[pulumi.Input[str]] = None,
299
+ project: Optional[pulumi.Input[str]] = None,
300
+ virtual_machine_preferences: Optional[pulumi.Input[pulumi.InputType['PreferenceSetVirtualMachinePreferencesArgs']]] = None,
301
+ __props__=None):
302
+ """
303
+ Manages the PreferenceSet resource.
304
+
305
+ To get more information about PreferenceSet, see:
306
+
307
+ * [API documentation](https://cloud.google.com/migration-center/docs/reference/rest/v1)
308
+ * How-to Guides
309
+ * [Managing Migration Preferences](https://cloud.google.com/migration-center/docs/migration-preferences)
310
+
311
+ ## Example Usage
312
+ ### Preference Set Basic
313
+
314
+ ```python
315
+ import pulumi
316
+ import pulumi_gcp as gcp
317
+
318
+ default = gcp.migrationcenter.PreferenceSet("default",
319
+ location="us-central1",
320
+ preference_set_id="preference-set-test",
321
+ description="Terraform integration test description",
322
+ display_name="Terraform integration test display",
323
+ virtual_machine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesArgs(
324
+ vmware_engine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesArgs(
325
+ cpu_overcommit_ratio=1.5,
326
+ ),
327
+ sizing_optimization_strategy="SIZING_OPTIMIZATION_STRATEGY_SAME_AS_SOURCE",
328
+ target_product="COMPUTE_MIGRATION_TARGET_PRODUCT_COMPUTE_ENGINE",
329
+ ))
330
+ ```
331
+ ### Preference Set Full
332
+
333
+ ```python
334
+ import pulumi
335
+ import pulumi_gcp as gcp
336
+
337
+ default = gcp.migrationcenter.PreferenceSet("default",
338
+ location="us-central1",
339
+ preference_set_id="preference-set-test",
340
+ description="Terraform integration test description",
341
+ display_name="Terraform integration test display",
342
+ virtual_machine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesArgs(
343
+ vmware_engine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesArgs(
344
+ cpu_overcommit_ratio=1.5,
345
+ storage_deduplication_compression_ratio=1.3,
346
+ commitment_plan="ON_DEMAND",
347
+ ),
348
+ sizing_optimization_strategy="SIZING_OPTIMIZATION_STRATEGY_SAME_AS_SOURCE",
349
+ target_product="COMPUTE_MIGRATION_TARGET_PRODUCT_COMPUTE_ENGINE",
350
+ commitment_plan="COMMITMENT_PLAN_ONE_YEAR",
351
+ region_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesRegionPreferencesArgs(
352
+ preferred_regions=["us-central1"],
353
+ ),
354
+ sole_tenancy_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesArgs(
355
+ commitment_plan="ON_DEMAND",
356
+ cpu_overcommit_ratio=1.2,
357
+ host_maintenance_policy="HOST_MAINTENANCE_POLICY_DEFAULT",
358
+ node_types=[gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypeArgs(
359
+ node_name="tf-test",
360
+ )],
361
+ ),
362
+ compute_engine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesComputeEnginePreferencesArgs(
363
+ license_type="LICENSE_TYPE_BRING_YOUR_OWN_LICENSE",
364
+ machine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesArgs(
365
+ allowed_machine_series=[gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesArgs(
366
+ code="C3",
367
+ )],
368
+ ),
369
+ ),
370
+ ))
371
+ ```
372
+
373
+ ## Import
374
+
375
+ PreferenceSet can be imported using any of these accepted formats:
376
+
377
+ * `projects/{{project}}/locations/{{location}}/preferenceSets/{{preference_set_id}}`
378
+
379
+ * `{{project}}/{{location}}/{{preference_set_id}}`
380
+
381
+ * `{{location}}/{{preference_set_id}}`
382
+
383
+ When using the `pulumi import` command, PreferenceSet can be imported using one of the formats above. For example:
384
+
385
+ ```sh
386
+ $ pulumi import gcp:migrationcenter/preferenceSet:PreferenceSet default projects/{{project}}/locations/{{location}}/preferenceSets/{{preference_set_id}}
387
+ ```
388
+
389
+ ```sh
390
+ $ pulumi import gcp:migrationcenter/preferenceSet:PreferenceSet default {{project}}/{{location}}/{{preference_set_id}}
391
+ ```
392
+
393
+ ```sh
394
+ $ pulumi import gcp:migrationcenter/preferenceSet:PreferenceSet default {{location}}/{{preference_set_id}}
395
+ ```
396
+
397
+ :param str resource_name: The name of the resource.
398
+ :param pulumi.ResourceOptions opts: Options for the resource.
399
+ :param pulumi.Input[str] description: A description of the preference set.
400
+ :param pulumi.Input[str] display_name: User-friendly display name. Maximum length is 63 characters.
401
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
402
+ :param pulumi.Input[str] preference_set_id: Required. User specified ID for the preference set. It will become the last component of the preference set name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression `a-z?`.
403
+
404
+
405
+ - - -
406
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
407
+ If it is not provided, the provider project is used.
408
+ :param pulumi.Input[pulumi.InputType['PreferenceSetVirtualMachinePreferencesArgs']] virtual_machine_preferences: VirtualMachinePreferences enables you to create sets of assumptions, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.
409
+ Structure is documented below.
410
+ """
411
+ ...
412
+ @overload
413
+ def __init__(__self__,
414
+ resource_name: str,
415
+ args: PreferenceSetArgs,
416
+ opts: Optional[pulumi.ResourceOptions] = None):
417
+ """
418
+ Manages the PreferenceSet resource.
419
+
420
+ To get more information about PreferenceSet, see:
421
+
422
+ * [API documentation](https://cloud.google.com/migration-center/docs/reference/rest/v1)
423
+ * How-to Guides
424
+ * [Managing Migration Preferences](https://cloud.google.com/migration-center/docs/migration-preferences)
425
+
426
+ ## Example Usage
427
+ ### Preference Set Basic
428
+
429
+ ```python
430
+ import pulumi
431
+ import pulumi_gcp as gcp
432
+
433
+ default = gcp.migrationcenter.PreferenceSet("default",
434
+ location="us-central1",
435
+ preference_set_id="preference-set-test",
436
+ description="Terraform integration test description",
437
+ display_name="Terraform integration test display",
438
+ virtual_machine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesArgs(
439
+ vmware_engine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesArgs(
440
+ cpu_overcommit_ratio=1.5,
441
+ ),
442
+ sizing_optimization_strategy="SIZING_OPTIMIZATION_STRATEGY_SAME_AS_SOURCE",
443
+ target_product="COMPUTE_MIGRATION_TARGET_PRODUCT_COMPUTE_ENGINE",
444
+ ))
445
+ ```
446
+ ### Preference Set Full
447
+
448
+ ```python
449
+ import pulumi
450
+ import pulumi_gcp as gcp
451
+
452
+ default = gcp.migrationcenter.PreferenceSet("default",
453
+ location="us-central1",
454
+ preference_set_id="preference-set-test",
455
+ description="Terraform integration test description",
456
+ display_name="Terraform integration test display",
457
+ virtual_machine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesArgs(
458
+ vmware_engine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesArgs(
459
+ cpu_overcommit_ratio=1.5,
460
+ storage_deduplication_compression_ratio=1.3,
461
+ commitment_plan="ON_DEMAND",
462
+ ),
463
+ sizing_optimization_strategy="SIZING_OPTIMIZATION_STRATEGY_SAME_AS_SOURCE",
464
+ target_product="COMPUTE_MIGRATION_TARGET_PRODUCT_COMPUTE_ENGINE",
465
+ commitment_plan="COMMITMENT_PLAN_ONE_YEAR",
466
+ region_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesRegionPreferencesArgs(
467
+ preferred_regions=["us-central1"],
468
+ ),
469
+ sole_tenancy_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesArgs(
470
+ commitment_plan="ON_DEMAND",
471
+ cpu_overcommit_ratio=1.2,
472
+ host_maintenance_policy="HOST_MAINTENANCE_POLICY_DEFAULT",
473
+ node_types=[gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypeArgs(
474
+ node_name="tf-test",
475
+ )],
476
+ ),
477
+ compute_engine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesComputeEnginePreferencesArgs(
478
+ license_type="LICENSE_TYPE_BRING_YOUR_OWN_LICENSE",
479
+ machine_preferences=gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesArgs(
480
+ allowed_machine_series=[gcp.migrationcenter.PreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesArgs(
481
+ code="C3",
482
+ )],
483
+ ),
484
+ ),
485
+ ))
486
+ ```
487
+
488
+ ## Import
489
+
490
+ PreferenceSet can be imported using any of these accepted formats:
491
+
492
+ * `projects/{{project}}/locations/{{location}}/preferenceSets/{{preference_set_id}}`
493
+
494
+ * `{{project}}/{{location}}/{{preference_set_id}}`
495
+
496
+ * `{{location}}/{{preference_set_id}}`
497
+
498
+ When using the `pulumi import` command, PreferenceSet can be imported using one of the formats above. For example:
499
+
500
+ ```sh
501
+ $ pulumi import gcp:migrationcenter/preferenceSet:PreferenceSet default projects/{{project}}/locations/{{location}}/preferenceSets/{{preference_set_id}}
502
+ ```
503
+
504
+ ```sh
505
+ $ pulumi import gcp:migrationcenter/preferenceSet:PreferenceSet default {{project}}/{{location}}/{{preference_set_id}}
506
+ ```
507
+
508
+ ```sh
509
+ $ pulumi import gcp:migrationcenter/preferenceSet:PreferenceSet default {{location}}/{{preference_set_id}}
510
+ ```
511
+
512
+ :param str resource_name: The name of the resource.
513
+ :param PreferenceSetArgs args: The arguments to use to populate this resource's properties.
514
+ :param pulumi.ResourceOptions opts: Options for the resource.
515
+ """
516
+ ...
517
+ def __init__(__self__, resource_name: str, *args, **kwargs):
518
+ resource_args, opts = _utilities.get_resource_args_opts(PreferenceSetArgs, pulumi.ResourceOptions, *args, **kwargs)
519
+ if resource_args is not None:
520
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
521
+ else:
522
+ __self__._internal_init(resource_name, *args, **kwargs)
523
+
524
+ def _internal_init(__self__,
525
+ resource_name: str,
526
+ opts: Optional[pulumi.ResourceOptions] = None,
527
+ description: Optional[pulumi.Input[str]] = None,
528
+ display_name: Optional[pulumi.Input[str]] = None,
529
+ location: Optional[pulumi.Input[str]] = None,
530
+ preference_set_id: Optional[pulumi.Input[str]] = None,
531
+ project: Optional[pulumi.Input[str]] = None,
532
+ virtual_machine_preferences: Optional[pulumi.Input[pulumi.InputType['PreferenceSetVirtualMachinePreferencesArgs']]] = None,
533
+ __props__=None):
534
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
535
+ if not isinstance(opts, pulumi.ResourceOptions):
536
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
537
+ if opts.id is None:
538
+ if __props__ is not None:
539
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
540
+ __props__ = PreferenceSetArgs.__new__(PreferenceSetArgs)
541
+
542
+ __props__.__dict__["description"] = description
543
+ __props__.__dict__["display_name"] = display_name
544
+ if location is None and not opts.urn:
545
+ raise TypeError("Missing required property 'location'")
546
+ __props__.__dict__["location"] = location
547
+ if preference_set_id is None and not opts.urn:
548
+ raise TypeError("Missing required property 'preference_set_id'")
549
+ __props__.__dict__["preference_set_id"] = preference_set_id
550
+ __props__.__dict__["project"] = project
551
+ __props__.__dict__["virtual_machine_preferences"] = virtual_machine_preferences
552
+ __props__.__dict__["create_time"] = None
553
+ __props__.__dict__["name"] = None
554
+ __props__.__dict__["update_time"] = None
555
+ super(PreferenceSet, __self__).__init__(
556
+ 'gcp:migrationcenter/preferenceSet:PreferenceSet',
557
+ resource_name,
558
+ __props__,
559
+ opts)
560
+
561
+ @staticmethod
562
+ def get(resource_name: str,
563
+ id: pulumi.Input[str],
564
+ opts: Optional[pulumi.ResourceOptions] = None,
565
+ create_time: Optional[pulumi.Input[str]] = None,
566
+ description: Optional[pulumi.Input[str]] = None,
567
+ display_name: Optional[pulumi.Input[str]] = None,
568
+ location: Optional[pulumi.Input[str]] = None,
569
+ name: Optional[pulumi.Input[str]] = None,
570
+ preference_set_id: Optional[pulumi.Input[str]] = None,
571
+ project: Optional[pulumi.Input[str]] = None,
572
+ update_time: Optional[pulumi.Input[str]] = None,
573
+ virtual_machine_preferences: Optional[pulumi.Input[pulumi.InputType['PreferenceSetVirtualMachinePreferencesArgs']]] = None) -> 'PreferenceSet':
574
+ """
575
+ Get an existing PreferenceSet resource's state with the given name, id, and optional extra
576
+ properties used to qualify the lookup.
577
+
578
+ :param str resource_name: The unique name of the resulting resource.
579
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
580
+ :param pulumi.ResourceOptions opts: Options for the resource.
581
+ :param pulumi.Input[str] create_time: Output only. The timestamp when the preference set was created.
582
+ :param pulumi.Input[str] description: A description of the preference set.
583
+ :param pulumi.Input[str] display_name: User-friendly display name. Maximum length is 63 characters.
584
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
585
+ :param pulumi.Input[str] name: Output only. Name of the preference set.
586
+ :param pulumi.Input[str] preference_set_id: Required. User specified ID for the preference set. It will become the last component of the preference set name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression `a-z?`.
587
+
588
+
589
+ - - -
590
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
591
+ If it is not provided, the provider project is used.
592
+ :param pulumi.Input[str] update_time: Output only. The timestamp when the preference set was last updated.
593
+ :param pulumi.Input[pulumi.InputType['PreferenceSetVirtualMachinePreferencesArgs']] virtual_machine_preferences: VirtualMachinePreferences enables you to create sets of assumptions, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.
594
+ Structure is documented below.
595
+ """
596
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
597
+
598
+ __props__ = _PreferenceSetState.__new__(_PreferenceSetState)
599
+
600
+ __props__.__dict__["create_time"] = create_time
601
+ __props__.__dict__["description"] = description
602
+ __props__.__dict__["display_name"] = display_name
603
+ __props__.__dict__["location"] = location
604
+ __props__.__dict__["name"] = name
605
+ __props__.__dict__["preference_set_id"] = preference_set_id
606
+ __props__.__dict__["project"] = project
607
+ __props__.__dict__["update_time"] = update_time
608
+ __props__.__dict__["virtual_machine_preferences"] = virtual_machine_preferences
609
+ return PreferenceSet(resource_name, opts=opts, __props__=__props__)
610
+
611
+ @property
612
+ @pulumi.getter(name="createTime")
613
+ def create_time(self) -> pulumi.Output[str]:
614
+ """
615
+ Output only. The timestamp when the preference set was created.
616
+ """
617
+ return pulumi.get(self, "create_time")
618
+
619
+ @property
620
+ @pulumi.getter
621
+ def description(self) -> pulumi.Output[Optional[str]]:
622
+ """
623
+ A description of the preference set.
624
+ """
625
+ return pulumi.get(self, "description")
626
+
627
+ @property
628
+ @pulumi.getter(name="displayName")
629
+ def display_name(self) -> pulumi.Output[Optional[str]]:
630
+ """
631
+ User-friendly display name. Maximum length is 63 characters.
632
+ """
633
+ return pulumi.get(self, "display_name")
634
+
635
+ @property
636
+ @pulumi.getter
637
+ def location(self) -> pulumi.Output[str]:
638
+ """
639
+ Part of `parent`. See documentation of `projectsId`.
640
+ """
641
+ return pulumi.get(self, "location")
642
+
643
+ @property
644
+ @pulumi.getter
645
+ def name(self) -> pulumi.Output[str]:
646
+ """
647
+ Output only. Name of the preference set.
648
+ """
649
+ return pulumi.get(self, "name")
650
+
651
+ @property
652
+ @pulumi.getter(name="preferenceSetId")
653
+ def preference_set_id(self) -> pulumi.Output[str]:
654
+ """
655
+ Required. User specified ID for the preference set. It will become the last component of the preference set name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression `a-z?`.
656
+
657
+
658
+ - - -
659
+ """
660
+ return pulumi.get(self, "preference_set_id")
661
+
662
+ @property
663
+ @pulumi.getter
664
+ def project(self) -> pulumi.Output[str]:
665
+ """
666
+ The ID of the project in which the resource belongs.
667
+ If it is not provided, the provider project is used.
668
+ """
669
+ return pulumi.get(self, "project")
670
+
671
+ @property
672
+ @pulumi.getter(name="updateTime")
673
+ def update_time(self) -> pulumi.Output[str]:
674
+ """
675
+ Output only. The timestamp when the preference set was last updated.
676
+ """
677
+ return pulumi.get(self, "update_time")
678
+
679
+ @property
680
+ @pulumi.getter(name="virtualMachinePreferences")
681
+ def virtual_machine_preferences(self) -> pulumi.Output[Optional['outputs.PreferenceSetVirtualMachinePreferences']]:
682
+ """
683
+ VirtualMachinePreferences enables you to create sets of assumptions, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.
684
+ Structure is documented below.
685
+ """
686
+ return pulumi.get(self, "virtual_machine_preferences")
687
+