pulumi-gcp 7.23.0a1715621482__py3-none-any.whl → 7.23.0a1715808346__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 (42) hide show
  1. pulumi_gcp/__init__.py +24 -0
  2. pulumi_gcp/bigquery/table.py +47 -0
  3. pulumi_gcp/bigtable/__init__.py +1 -0
  4. pulumi_gcp/bigtable/_inputs.py +101 -0
  5. pulumi_gcp/bigtable/authorized_view.py +440 -0
  6. pulumi_gcp/bigtable/outputs.py +119 -0
  7. pulumi_gcp/certificateauthority/certificate_template.py +70 -0
  8. pulumi_gcp/cloudbuildv2/repository.py +2 -2
  9. pulumi_gcp/clouddeploy/_inputs.py +96 -0
  10. pulumi_gcp/clouddeploy/custom_target_type.py +46 -0
  11. pulumi_gcp/clouddeploy/delivery_pipeline.py +7 -7
  12. pulumi_gcp/clouddeploy/outputs.py +96 -1
  13. pulumi_gcp/clouddeploy/target.py +54 -7
  14. pulumi_gcp/compute/_inputs.py +689 -0
  15. pulumi_gcp/compute/firewall_policy_rule.py +125 -10
  16. pulumi_gcp/compute/network_firewall_policy_rule.py +125 -10
  17. pulumi_gcp/compute/outputs.py +684 -0
  18. pulumi_gcp/compute/region_network_firewall_policy_rule.py +125 -10
  19. pulumi_gcp/compute/region_security_policy_rule.py +230 -1
  20. pulumi_gcp/container/_inputs.py +67 -3
  21. pulumi_gcp/container/outputs.py +93 -4
  22. pulumi_gcp/dataflow/flex_template_job.py +7 -7
  23. pulumi_gcp/dataflow/job.py +7 -7
  24. pulumi_gcp/iam/_inputs.py +191 -2
  25. pulumi_gcp/iam/outputs.py +197 -2
  26. pulumi_gcp/iam/workforce_pool_provider.py +245 -0
  27. pulumi_gcp/integrationconnectors/__init__.py +1 -0
  28. pulumi_gcp/integrationconnectors/managed_zone.py +753 -0
  29. pulumi_gcp/networkconnectivity/__init__.py +1 -0
  30. pulumi_gcp/networkconnectivity/regional_endpoint.py +946 -0
  31. pulumi_gcp/networksecurity/firewall_endpoint.py +34 -0
  32. pulumi_gcp/networksecurity/firewall_endpoint_association.py +24 -0
  33. pulumi_gcp/networksecurity/security_profile.py +16 -0
  34. pulumi_gcp/networksecurity/security_profile_group.py +18 -0
  35. pulumi_gcp/networksecurity/tls_inspection_policy.py +16 -0
  36. pulumi_gcp/orgpolicy/policy.py +2 -2
  37. pulumi_gcp/pubsub/subscription.py +4 -4
  38. pulumi_gcp/pulumi-plugin.json +2 -1
  39. {pulumi_gcp-7.23.0a1715621482.dist-info → pulumi_gcp-7.23.0a1715808346.dist-info}/METADATA +1 -1
  40. {pulumi_gcp-7.23.0a1715621482.dist-info → pulumi_gcp-7.23.0a1715808346.dist-info}/RECORD +42 -39
  41. {pulumi_gcp-7.23.0a1715621482.dist-info → pulumi_gcp-7.23.0a1715808346.dist-info}/WHEEL +0 -0
  42. {pulumi_gcp-7.23.0a1715621482.dist-info → pulumi_gcp-7.23.0a1715808346.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,753 @@
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
+
12
+ __all__ = ['ManagedZoneArgs', 'ManagedZone']
13
+
14
+ @pulumi.input_type
15
+ class ManagedZoneArgs:
16
+ def __init__(__self__, *,
17
+ dns: pulumi.Input[str],
18
+ target_project: pulumi.Input[str],
19
+ target_vpc: pulumi.Input[str],
20
+ description: Optional[pulumi.Input[str]] = None,
21
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
22
+ name: Optional[pulumi.Input[str]] = None,
23
+ project: Optional[pulumi.Input[str]] = None):
24
+ """
25
+ The set of arguments for constructing a ManagedZone resource.
26
+ :param pulumi.Input[str] dns: DNS Name of the resource.
27
+ :param pulumi.Input[str] target_project: The name of the Target Project.
28
+ :param pulumi.Input[str] target_vpc: The name of the Target Project VPC Network.
29
+ :param pulumi.Input[str] description: Description of the resource.
30
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Resource labels to represent user provided metadata.
31
+
32
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
33
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
34
+ :param pulumi.Input[str] name: Name of Managed Zone needs to be created.
35
+
36
+
37
+ - - -
38
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
39
+ If it is not provided, the provider project is used.
40
+ """
41
+ pulumi.set(__self__, "dns", dns)
42
+ pulumi.set(__self__, "target_project", target_project)
43
+ pulumi.set(__self__, "target_vpc", target_vpc)
44
+ if description is not None:
45
+ pulumi.set(__self__, "description", description)
46
+ if labels is not None:
47
+ pulumi.set(__self__, "labels", labels)
48
+ if name is not None:
49
+ pulumi.set(__self__, "name", name)
50
+ if project is not None:
51
+ pulumi.set(__self__, "project", project)
52
+
53
+ @property
54
+ @pulumi.getter
55
+ def dns(self) -> pulumi.Input[str]:
56
+ """
57
+ DNS Name of the resource.
58
+ """
59
+ return pulumi.get(self, "dns")
60
+
61
+ @dns.setter
62
+ def dns(self, value: pulumi.Input[str]):
63
+ pulumi.set(self, "dns", value)
64
+
65
+ @property
66
+ @pulumi.getter(name="targetProject")
67
+ def target_project(self) -> pulumi.Input[str]:
68
+ """
69
+ The name of the Target Project.
70
+ """
71
+ return pulumi.get(self, "target_project")
72
+
73
+ @target_project.setter
74
+ def target_project(self, value: pulumi.Input[str]):
75
+ pulumi.set(self, "target_project", value)
76
+
77
+ @property
78
+ @pulumi.getter(name="targetVpc")
79
+ def target_vpc(self) -> pulumi.Input[str]:
80
+ """
81
+ The name of the Target Project VPC Network.
82
+ """
83
+ return pulumi.get(self, "target_vpc")
84
+
85
+ @target_vpc.setter
86
+ def target_vpc(self, value: pulumi.Input[str]):
87
+ pulumi.set(self, "target_vpc", value)
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def description(self) -> Optional[pulumi.Input[str]]:
92
+ """
93
+ Description of the resource.
94
+ """
95
+ return pulumi.get(self, "description")
96
+
97
+ @description.setter
98
+ def description(self, value: Optional[pulumi.Input[str]]):
99
+ pulumi.set(self, "description", value)
100
+
101
+ @property
102
+ @pulumi.getter
103
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
104
+ """
105
+ Resource labels to represent user provided metadata.
106
+
107
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
108
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
109
+ """
110
+ return pulumi.get(self, "labels")
111
+
112
+ @labels.setter
113
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
114
+ pulumi.set(self, "labels", value)
115
+
116
+ @property
117
+ @pulumi.getter
118
+ def name(self) -> Optional[pulumi.Input[str]]:
119
+ """
120
+ Name of Managed Zone needs to be created.
121
+
122
+
123
+ - - -
124
+ """
125
+ return pulumi.get(self, "name")
126
+
127
+ @name.setter
128
+ def name(self, value: Optional[pulumi.Input[str]]):
129
+ pulumi.set(self, "name", value)
130
+
131
+ @property
132
+ @pulumi.getter
133
+ def project(self) -> Optional[pulumi.Input[str]]:
134
+ """
135
+ The ID of the project in which the resource belongs.
136
+ If it is not provided, the provider project is used.
137
+ """
138
+ return pulumi.get(self, "project")
139
+
140
+ @project.setter
141
+ def project(self, value: Optional[pulumi.Input[str]]):
142
+ pulumi.set(self, "project", value)
143
+
144
+
145
+ @pulumi.input_type
146
+ class _ManagedZoneState:
147
+ def __init__(__self__, *,
148
+ create_time: Optional[pulumi.Input[str]] = None,
149
+ description: Optional[pulumi.Input[str]] = None,
150
+ dns: Optional[pulumi.Input[str]] = None,
151
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
152
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
153
+ name: Optional[pulumi.Input[str]] = None,
154
+ project: Optional[pulumi.Input[str]] = None,
155
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
156
+ target_project: Optional[pulumi.Input[str]] = None,
157
+ target_vpc: Optional[pulumi.Input[str]] = None,
158
+ update_time: Optional[pulumi.Input[str]] = None):
159
+ """
160
+ Input properties used for looking up and filtering ManagedZone resources.
161
+ :param pulumi.Input[str] create_time: Time the Namespace was created in UTC.
162
+ :param pulumi.Input[str] description: Description of the resource.
163
+ :param pulumi.Input[str] dns: DNS Name of the resource.
164
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
165
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Resource labels to represent user provided metadata.
166
+
167
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
168
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
169
+ :param pulumi.Input[str] name: Name of Managed Zone needs to be created.
170
+
171
+
172
+ - - -
173
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
174
+ If it is not provided, the provider project is used.
175
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
176
+ and default labels configured on the provider.
177
+ :param pulumi.Input[str] target_project: The name of the Target Project.
178
+ :param pulumi.Input[str] target_vpc: The name of the Target Project VPC Network.
179
+ :param pulumi.Input[str] update_time: Time the Namespace was updated in UTC.
180
+ """
181
+ if create_time is not None:
182
+ pulumi.set(__self__, "create_time", create_time)
183
+ if description is not None:
184
+ pulumi.set(__self__, "description", description)
185
+ if dns is not None:
186
+ pulumi.set(__self__, "dns", dns)
187
+ if effective_labels is not None:
188
+ pulumi.set(__self__, "effective_labels", effective_labels)
189
+ if labels is not None:
190
+ pulumi.set(__self__, "labels", labels)
191
+ if name is not None:
192
+ pulumi.set(__self__, "name", name)
193
+ if project is not None:
194
+ pulumi.set(__self__, "project", project)
195
+ if pulumi_labels is not None:
196
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
197
+ if target_project is not None:
198
+ pulumi.set(__self__, "target_project", target_project)
199
+ if target_vpc is not None:
200
+ pulumi.set(__self__, "target_vpc", target_vpc)
201
+ if update_time is not None:
202
+ pulumi.set(__self__, "update_time", update_time)
203
+
204
+ @property
205
+ @pulumi.getter(name="createTime")
206
+ def create_time(self) -> Optional[pulumi.Input[str]]:
207
+ """
208
+ Time the Namespace was created in UTC.
209
+ """
210
+ return pulumi.get(self, "create_time")
211
+
212
+ @create_time.setter
213
+ def create_time(self, value: Optional[pulumi.Input[str]]):
214
+ pulumi.set(self, "create_time", value)
215
+
216
+ @property
217
+ @pulumi.getter
218
+ def description(self) -> Optional[pulumi.Input[str]]:
219
+ """
220
+ Description of the resource.
221
+ """
222
+ return pulumi.get(self, "description")
223
+
224
+ @description.setter
225
+ def description(self, value: Optional[pulumi.Input[str]]):
226
+ pulumi.set(self, "description", value)
227
+
228
+ @property
229
+ @pulumi.getter
230
+ def dns(self) -> Optional[pulumi.Input[str]]:
231
+ """
232
+ DNS Name of the resource.
233
+ """
234
+ return pulumi.get(self, "dns")
235
+
236
+ @dns.setter
237
+ def dns(self, value: Optional[pulumi.Input[str]]):
238
+ pulumi.set(self, "dns", value)
239
+
240
+ @property
241
+ @pulumi.getter(name="effectiveLabels")
242
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
243
+ """
244
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
245
+ """
246
+ return pulumi.get(self, "effective_labels")
247
+
248
+ @effective_labels.setter
249
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
250
+ pulumi.set(self, "effective_labels", value)
251
+
252
+ @property
253
+ @pulumi.getter
254
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
255
+ """
256
+ Resource labels to represent user provided metadata.
257
+
258
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
259
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
260
+ """
261
+ return pulumi.get(self, "labels")
262
+
263
+ @labels.setter
264
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
265
+ pulumi.set(self, "labels", value)
266
+
267
+ @property
268
+ @pulumi.getter
269
+ def name(self) -> Optional[pulumi.Input[str]]:
270
+ """
271
+ Name of Managed Zone needs to be created.
272
+
273
+
274
+ - - -
275
+ """
276
+ return pulumi.get(self, "name")
277
+
278
+ @name.setter
279
+ def name(self, value: Optional[pulumi.Input[str]]):
280
+ pulumi.set(self, "name", value)
281
+
282
+ @property
283
+ @pulumi.getter
284
+ def project(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ The ID of the project in which the resource belongs.
287
+ If it is not provided, the provider project is used.
288
+ """
289
+ return pulumi.get(self, "project")
290
+
291
+ @project.setter
292
+ def project(self, value: Optional[pulumi.Input[str]]):
293
+ pulumi.set(self, "project", value)
294
+
295
+ @property
296
+ @pulumi.getter(name="pulumiLabels")
297
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
298
+ """
299
+ The combination of labels configured directly on the resource
300
+ and default labels configured on the provider.
301
+ """
302
+ return pulumi.get(self, "pulumi_labels")
303
+
304
+ @pulumi_labels.setter
305
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
306
+ pulumi.set(self, "pulumi_labels", value)
307
+
308
+ @property
309
+ @pulumi.getter(name="targetProject")
310
+ def target_project(self) -> Optional[pulumi.Input[str]]:
311
+ """
312
+ The name of the Target Project.
313
+ """
314
+ return pulumi.get(self, "target_project")
315
+
316
+ @target_project.setter
317
+ def target_project(self, value: Optional[pulumi.Input[str]]):
318
+ pulumi.set(self, "target_project", value)
319
+
320
+ @property
321
+ @pulumi.getter(name="targetVpc")
322
+ def target_vpc(self) -> Optional[pulumi.Input[str]]:
323
+ """
324
+ The name of the Target Project VPC Network.
325
+ """
326
+ return pulumi.get(self, "target_vpc")
327
+
328
+ @target_vpc.setter
329
+ def target_vpc(self, value: Optional[pulumi.Input[str]]):
330
+ pulumi.set(self, "target_vpc", value)
331
+
332
+ @property
333
+ @pulumi.getter(name="updateTime")
334
+ def update_time(self) -> Optional[pulumi.Input[str]]:
335
+ """
336
+ Time the Namespace was updated in UTC.
337
+ """
338
+ return pulumi.get(self, "update_time")
339
+
340
+ @update_time.setter
341
+ def update_time(self, value: Optional[pulumi.Input[str]]):
342
+ pulumi.set(self, "update_time", value)
343
+
344
+
345
+ class ManagedZone(pulumi.CustomResource):
346
+ @overload
347
+ def __init__(__self__,
348
+ resource_name: str,
349
+ opts: Optional[pulumi.ResourceOptions] = None,
350
+ description: Optional[pulumi.Input[str]] = None,
351
+ dns: Optional[pulumi.Input[str]] = None,
352
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
353
+ name: Optional[pulumi.Input[str]] = None,
354
+ project: Optional[pulumi.Input[str]] = None,
355
+ target_project: Optional[pulumi.Input[str]] = None,
356
+ target_vpc: Optional[pulumi.Input[str]] = None,
357
+ __props__=None):
358
+ """
359
+ An Integration connectors Managed Zone.
360
+
361
+ To get more information about ManagedZone, see:
362
+
363
+ * [API documentation](https://cloud.google.com/integration-connectors/docs/reference/rest/v1/projects.locations.global.managedZones)
364
+ * How-to Guides
365
+ * [Official Documentation](https://cloud.google.com/integration-connectors/docs)
366
+
367
+ ## Example Usage
368
+
369
+ ### Integration Connectors Managed Zone
370
+
371
+ ```python
372
+ import pulumi
373
+ import pulumi_gcp as gcp
374
+
375
+ target_project = gcp.organizations.Project("target_project",
376
+ project_id="tf-test_75092",
377
+ name="tf-test_2605",
378
+ org_id="123456789",
379
+ billing_account="000000-0000000-0000000-000000")
380
+ test_project = gcp.organizations.get_project()
381
+ dns_peer_binding = gcp.projects.IAMMember("dns_peer_binding",
382
+ project=target_project.project_id,
383
+ role="roles/dns.peer",
384
+ member=f"serviceAccount:service-{test_project.number}@gcp-sa-connectors.iam.gserviceaccount.com")
385
+ dns = gcp.projects.Service("dns",
386
+ project=target_project.project_id,
387
+ service="dns.googleapis.com")
388
+ compute = gcp.projects.Service("compute",
389
+ project=target_project.project_id,
390
+ service="compute.googleapis.com")
391
+ network = gcp.compute.Network("network",
392
+ project=target_project.project_id,
393
+ name="test",
394
+ auto_create_subnetworks=False)
395
+ zone = gcp.dns.ManagedZone("zone",
396
+ name="tf-test-dns_34535",
397
+ dns_name="private_22375.example.com.",
398
+ visibility="private",
399
+ private_visibility_config=gcp.dns.ManagedZonePrivateVisibilityConfigArgs(
400
+ networks=[gcp.dns.ManagedZonePrivateVisibilityConfigNetworkArgs(
401
+ network_url=network.id,
402
+ )],
403
+ ))
404
+ testmanagedzone = gcp.integrationconnectors.ManagedZone("testmanagedzone",
405
+ name="test",
406
+ description="tf created description",
407
+ labels={
408
+ "intent": "example",
409
+ },
410
+ target_project=target_project.project_id,
411
+ target_vpc="test",
412
+ dns=zone.dns_name)
413
+ ```
414
+
415
+ ## Import
416
+
417
+ ManagedZone can be imported using any of these accepted formats:
418
+
419
+ * `projects/{{project}}/locations/global/managedZones/{{name}}`
420
+
421
+ * `{{project}}/{{name}}`
422
+
423
+ * `{{name}}`
424
+
425
+ When using the `pulumi import` command, ManagedZone can be imported using one of the formats above. For example:
426
+
427
+ ```sh
428
+ $ pulumi import gcp:integrationconnectors/managedZone:ManagedZone default projects/{{project}}/locations/global/managedZones/{{name}}
429
+ ```
430
+
431
+ ```sh
432
+ $ pulumi import gcp:integrationconnectors/managedZone:ManagedZone default {{project}}/{{name}}
433
+ ```
434
+
435
+ ```sh
436
+ $ pulumi import gcp:integrationconnectors/managedZone:ManagedZone default {{name}}
437
+ ```
438
+
439
+ :param str resource_name: The name of the resource.
440
+ :param pulumi.ResourceOptions opts: Options for the resource.
441
+ :param pulumi.Input[str] description: Description of the resource.
442
+ :param pulumi.Input[str] dns: DNS Name of the resource.
443
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Resource labels to represent user provided metadata.
444
+
445
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
446
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
447
+ :param pulumi.Input[str] name: Name of Managed Zone needs to be created.
448
+
449
+
450
+ - - -
451
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
452
+ If it is not provided, the provider project is used.
453
+ :param pulumi.Input[str] target_project: The name of the Target Project.
454
+ :param pulumi.Input[str] target_vpc: The name of the Target Project VPC Network.
455
+ """
456
+ ...
457
+ @overload
458
+ def __init__(__self__,
459
+ resource_name: str,
460
+ args: ManagedZoneArgs,
461
+ opts: Optional[pulumi.ResourceOptions] = None):
462
+ """
463
+ An Integration connectors Managed Zone.
464
+
465
+ To get more information about ManagedZone, see:
466
+
467
+ * [API documentation](https://cloud.google.com/integration-connectors/docs/reference/rest/v1/projects.locations.global.managedZones)
468
+ * How-to Guides
469
+ * [Official Documentation](https://cloud.google.com/integration-connectors/docs)
470
+
471
+ ## Example Usage
472
+
473
+ ### Integration Connectors Managed Zone
474
+
475
+ ```python
476
+ import pulumi
477
+ import pulumi_gcp as gcp
478
+
479
+ target_project = gcp.organizations.Project("target_project",
480
+ project_id="tf-test_75092",
481
+ name="tf-test_2605",
482
+ org_id="123456789",
483
+ billing_account="000000-0000000-0000000-000000")
484
+ test_project = gcp.organizations.get_project()
485
+ dns_peer_binding = gcp.projects.IAMMember("dns_peer_binding",
486
+ project=target_project.project_id,
487
+ role="roles/dns.peer",
488
+ member=f"serviceAccount:service-{test_project.number}@gcp-sa-connectors.iam.gserviceaccount.com")
489
+ dns = gcp.projects.Service("dns",
490
+ project=target_project.project_id,
491
+ service="dns.googleapis.com")
492
+ compute = gcp.projects.Service("compute",
493
+ project=target_project.project_id,
494
+ service="compute.googleapis.com")
495
+ network = gcp.compute.Network("network",
496
+ project=target_project.project_id,
497
+ name="test",
498
+ auto_create_subnetworks=False)
499
+ zone = gcp.dns.ManagedZone("zone",
500
+ name="tf-test-dns_34535",
501
+ dns_name="private_22375.example.com.",
502
+ visibility="private",
503
+ private_visibility_config=gcp.dns.ManagedZonePrivateVisibilityConfigArgs(
504
+ networks=[gcp.dns.ManagedZonePrivateVisibilityConfigNetworkArgs(
505
+ network_url=network.id,
506
+ )],
507
+ ))
508
+ testmanagedzone = gcp.integrationconnectors.ManagedZone("testmanagedzone",
509
+ name="test",
510
+ description="tf created description",
511
+ labels={
512
+ "intent": "example",
513
+ },
514
+ target_project=target_project.project_id,
515
+ target_vpc="test",
516
+ dns=zone.dns_name)
517
+ ```
518
+
519
+ ## Import
520
+
521
+ ManagedZone can be imported using any of these accepted formats:
522
+
523
+ * `projects/{{project}}/locations/global/managedZones/{{name}}`
524
+
525
+ * `{{project}}/{{name}}`
526
+
527
+ * `{{name}}`
528
+
529
+ When using the `pulumi import` command, ManagedZone can be imported using one of the formats above. For example:
530
+
531
+ ```sh
532
+ $ pulumi import gcp:integrationconnectors/managedZone:ManagedZone default projects/{{project}}/locations/global/managedZones/{{name}}
533
+ ```
534
+
535
+ ```sh
536
+ $ pulumi import gcp:integrationconnectors/managedZone:ManagedZone default {{project}}/{{name}}
537
+ ```
538
+
539
+ ```sh
540
+ $ pulumi import gcp:integrationconnectors/managedZone:ManagedZone default {{name}}
541
+ ```
542
+
543
+ :param str resource_name: The name of the resource.
544
+ :param ManagedZoneArgs args: The arguments to use to populate this resource's properties.
545
+ :param pulumi.ResourceOptions opts: Options for the resource.
546
+ """
547
+ ...
548
+ def __init__(__self__, resource_name: str, *args, **kwargs):
549
+ resource_args, opts = _utilities.get_resource_args_opts(ManagedZoneArgs, pulumi.ResourceOptions, *args, **kwargs)
550
+ if resource_args is not None:
551
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
552
+ else:
553
+ __self__._internal_init(resource_name, *args, **kwargs)
554
+
555
+ def _internal_init(__self__,
556
+ resource_name: str,
557
+ opts: Optional[pulumi.ResourceOptions] = None,
558
+ description: Optional[pulumi.Input[str]] = None,
559
+ dns: Optional[pulumi.Input[str]] = None,
560
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
561
+ name: Optional[pulumi.Input[str]] = None,
562
+ project: Optional[pulumi.Input[str]] = None,
563
+ target_project: Optional[pulumi.Input[str]] = None,
564
+ target_vpc: Optional[pulumi.Input[str]] = None,
565
+ __props__=None):
566
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
567
+ if not isinstance(opts, pulumi.ResourceOptions):
568
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
569
+ if opts.id is None:
570
+ if __props__ is not None:
571
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
572
+ __props__ = ManagedZoneArgs.__new__(ManagedZoneArgs)
573
+
574
+ __props__.__dict__["description"] = description
575
+ if dns is None and not opts.urn:
576
+ raise TypeError("Missing required property 'dns'")
577
+ __props__.__dict__["dns"] = dns
578
+ __props__.__dict__["labels"] = labels
579
+ __props__.__dict__["name"] = name
580
+ __props__.__dict__["project"] = project
581
+ if target_project is None and not opts.urn:
582
+ raise TypeError("Missing required property 'target_project'")
583
+ __props__.__dict__["target_project"] = target_project
584
+ if target_vpc is None and not opts.urn:
585
+ raise TypeError("Missing required property 'target_vpc'")
586
+ __props__.__dict__["target_vpc"] = target_vpc
587
+ __props__.__dict__["create_time"] = None
588
+ __props__.__dict__["effective_labels"] = None
589
+ __props__.__dict__["pulumi_labels"] = None
590
+ __props__.__dict__["update_time"] = None
591
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
592
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
593
+ super(ManagedZone, __self__).__init__(
594
+ 'gcp:integrationconnectors/managedZone:ManagedZone',
595
+ resource_name,
596
+ __props__,
597
+ opts)
598
+
599
+ @staticmethod
600
+ def get(resource_name: str,
601
+ id: pulumi.Input[str],
602
+ opts: Optional[pulumi.ResourceOptions] = None,
603
+ create_time: Optional[pulumi.Input[str]] = None,
604
+ description: Optional[pulumi.Input[str]] = None,
605
+ dns: Optional[pulumi.Input[str]] = None,
606
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
607
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
608
+ name: Optional[pulumi.Input[str]] = None,
609
+ project: Optional[pulumi.Input[str]] = None,
610
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
611
+ target_project: Optional[pulumi.Input[str]] = None,
612
+ target_vpc: Optional[pulumi.Input[str]] = None,
613
+ update_time: Optional[pulumi.Input[str]] = None) -> 'ManagedZone':
614
+ """
615
+ Get an existing ManagedZone resource's state with the given name, id, and optional extra
616
+ properties used to qualify the lookup.
617
+
618
+ :param str resource_name: The unique name of the resulting resource.
619
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
620
+ :param pulumi.ResourceOptions opts: Options for the resource.
621
+ :param pulumi.Input[str] create_time: Time the Namespace was created in UTC.
622
+ :param pulumi.Input[str] description: Description of the resource.
623
+ :param pulumi.Input[str] dns: DNS Name of the resource.
624
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
625
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Resource labels to represent user provided metadata.
626
+
627
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
628
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
629
+ :param pulumi.Input[str] name: Name of Managed Zone needs to be created.
630
+
631
+
632
+ - - -
633
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
634
+ If it is not provided, the provider project is used.
635
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
636
+ and default labels configured on the provider.
637
+ :param pulumi.Input[str] target_project: The name of the Target Project.
638
+ :param pulumi.Input[str] target_vpc: The name of the Target Project VPC Network.
639
+ :param pulumi.Input[str] update_time: Time the Namespace was updated in UTC.
640
+ """
641
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
642
+
643
+ __props__ = _ManagedZoneState.__new__(_ManagedZoneState)
644
+
645
+ __props__.__dict__["create_time"] = create_time
646
+ __props__.__dict__["description"] = description
647
+ __props__.__dict__["dns"] = dns
648
+ __props__.__dict__["effective_labels"] = effective_labels
649
+ __props__.__dict__["labels"] = labels
650
+ __props__.__dict__["name"] = name
651
+ __props__.__dict__["project"] = project
652
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
653
+ __props__.__dict__["target_project"] = target_project
654
+ __props__.__dict__["target_vpc"] = target_vpc
655
+ __props__.__dict__["update_time"] = update_time
656
+ return ManagedZone(resource_name, opts=opts, __props__=__props__)
657
+
658
+ @property
659
+ @pulumi.getter(name="createTime")
660
+ def create_time(self) -> pulumi.Output[str]:
661
+ """
662
+ Time the Namespace was created in UTC.
663
+ """
664
+ return pulumi.get(self, "create_time")
665
+
666
+ @property
667
+ @pulumi.getter
668
+ def description(self) -> pulumi.Output[Optional[str]]:
669
+ """
670
+ Description of the resource.
671
+ """
672
+ return pulumi.get(self, "description")
673
+
674
+ @property
675
+ @pulumi.getter
676
+ def dns(self) -> pulumi.Output[str]:
677
+ """
678
+ DNS Name of the resource.
679
+ """
680
+ return pulumi.get(self, "dns")
681
+
682
+ @property
683
+ @pulumi.getter(name="effectiveLabels")
684
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
685
+ """
686
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
687
+ """
688
+ return pulumi.get(self, "effective_labels")
689
+
690
+ @property
691
+ @pulumi.getter
692
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
693
+ """
694
+ Resource labels to represent user provided metadata.
695
+
696
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
697
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
698
+ """
699
+ return pulumi.get(self, "labels")
700
+
701
+ @property
702
+ @pulumi.getter
703
+ def name(self) -> pulumi.Output[str]:
704
+ """
705
+ Name of Managed Zone needs to be created.
706
+
707
+
708
+ - - -
709
+ """
710
+ return pulumi.get(self, "name")
711
+
712
+ @property
713
+ @pulumi.getter
714
+ def project(self) -> pulumi.Output[str]:
715
+ """
716
+ The ID of the project in which the resource belongs.
717
+ If it is not provided, the provider project is used.
718
+ """
719
+ return pulumi.get(self, "project")
720
+
721
+ @property
722
+ @pulumi.getter(name="pulumiLabels")
723
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
724
+ """
725
+ The combination of labels configured directly on the resource
726
+ and default labels configured on the provider.
727
+ """
728
+ return pulumi.get(self, "pulumi_labels")
729
+
730
+ @property
731
+ @pulumi.getter(name="targetProject")
732
+ def target_project(self) -> pulumi.Output[str]:
733
+ """
734
+ The name of the Target Project.
735
+ """
736
+ return pulumi.get(self, "target_project")
737
+
738
+ @property
739
+ @pulumi.getter(name="targetVpc")
740
+ def target_vpc(self) -> pulumi.Output[str]:
741
+ """
742
+ The name of the Target Project VPC Network.
743
+ """
744
+ return pulumi.get(self, "target_vpc")
745
+
746
+ @property
747
+ @pulumi.getter(name="updateTime")
748
+ def update_time(self) -> pulumi.Output[str]:
749
+ """
750
+ Time the Namespace was updated in UTC.
751
+ """
752
+ return pulumi.get(self, "update_time")
753
+