pulumi-gcp 8.34.0a1749538186__py3-none-any.whl → 8.34.0a1749653876__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.
- pulumi_gcp/__init__.py +32 -0
- pulumi_gcp/alloydb/cluster.py +16 -64
- pulumi_gcp/apigee/_inputs.py +89 -0
- pulumi_gcp/apigee/environment.py +68 -2
- pulumi_gcp/apigee/outputs.py +88 -0
- pulumi_gcp/apihub/__init__.py +1 -0
- pulumi_gcp/apihub/_inputs.py +184 -0
- pulumi_gcp/apihub/curation.py +812 -0
- pulumi_gcp/apihub/outputs.py +165 -0
- pulumi_gcp/beyondcorp/get_security_gateway.py +12 -1
- pulumi_gcp/beyondcorp/security_gateway.py +28 -0
- pulumi_gcp/cloudrunv2/_inputs.py +463 -0
- pulumi_gcp/cloudrunv2/outputs.py +581 -1
- pulumi_gcp/cloudrunv2/worker_pool.py +0 -8
- pulumi_gcp/colab/runtime_template.py +4 -26
- pulumi_gcp/compute/__init__.py +3 -0
- pulumi_gcp/compute/_inputs.py +1551 -0
- pulumi_gcp/compute/interconnect.py +32 -0
- pulumi_gcp/compute/interconnect_attachment.py +28 -0
- pulumi_gcp/compute/interconnect_attachment_group.py +636 -0
- pulumi_gcp/compute/interconnect_group.py +586 -0
- pulumi_gcp/compute/outputs.py +1087 -0
- pulumi_gcp/compute/snapshot_settings.py +285 -0
- pulumi_gcp/container/_inputs.py +51 -18
- pulumi_gcp/container/cluster.py +47 -0
- pulumi_gcp/container/get_cluster.py +12 -1
- pulumi_gcp/container/outputs.py +71 -16
- pulumi_gcp/dataplex/_inputs.py +20 -0
- pulumi_gcp/dataplex/datascan.py +2 -0
- pulumi_gcp/dataplex/outputs.py +15 -1
- pulumi_gcp/eventarc/_inputs.py +12 -5
- pulumi_gcp/eventarc/outputs.py +8 -3
- pulumi_gcp/eventarc/pipeline.py +0 -12
- pulumi_gcp/gemini/data_sharing_with_google_setting.py +58 -9
- pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +11 -16
- pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +51 -2
- pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +11 -16
- pulumi_gcp/gkehub/_inputs.py +84 -7
- pulumi_gcp/gkehub/feature.py +38 -0
- pulumi_gcp/gkehub/outputs.py +102 -7
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +54 -2
- pulumi_gcp/gkeonprem/_inputs.py +54 -0
- pulumi_gcp/gkeonprem/outputs.py +49 -0
- pulumi_gcp/gkeonprem/vmware_admin_cluster.py +71 -0
- pulumi_gcp/iam/workload_identity_pool_namespace.py +4 -4
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
- pulumi_gcp/managedkafka/connect_cluster.py +4 -4
- pulumi_gcp/managedkafka/connector.py +4 -4
- pulumi_gcp/networkconnectivity/spoke.py +14 -14
- pulumi_gcp/networksecurity/backend_authentication_config.py +64 -0
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/pubsub/_inputs.py +392 -0
- pulumi_gcp/pubsub/get_subscription.py +12 -1
- pulumi_gcp/pubsub/get_topic.py +12 -1
- pulumi_gcp/pubsub/outputs.py +548 -0
- pulumi_gcp/pubsub/subscription.py +67 -6
- pulumi_gcp/pubsub/topic.py +61 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/vertex/ai_endpoint.py +4 -4
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
- {pulumi_gcp-8.34.0a1749538186.dist-info → pulumi_gcp-8.34.0a1749653876.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.34.0a1749538186.dist-info → pulumi_gcp-8.34.0a1749653876.dist-info}/RECORD +65 -61
- {pulumi_gcp-8.34.0a1749538186.dist-info → pulumi_gcp-8.34.0a1749653876.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.34.0a1749538186.dist-info → pulumi_gcp-8.34.0a1749653876.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,636 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
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
|
+
from . import outputs
|
18
|
+
from ._inputs import *
|
19
|
+
|
20
|
+
__all__ = ['InterconnectAttachmentGroupArgs', 'InterconnectAttachmentGroup']
|
21
|
+
|
22
|
+
@pulumi.input_type
|
23
|
+
class InterconnectAttachmentGroupArgs:
|
24
|
+
def __init__(__self__, *,
|
25
|
+
intent: pulumi.Input['InterconnectAttachmentGroupIntentArgs'],
|
26
|
+
attachments: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]]] = None,
|
27
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
28
|
+
interconnect_group: Optional[pulumi.Input[builtins.str]] = None,
|
29
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
30
|
+
project: Optional[pulumi.Input[builtins.str]] = None):
|
31
|
+
"""
|
32
|
+
The set of arguments for constructing a InterconnectAttachmentGroup resource.
|
33
|
+
:param pulumi.Input['InterconnectAttachmentGroupIntentArgs'] intent: The user's intent for this group. This is the only required field besides
|
34
|
+
the name that must be specified on group creation.
|
35
|
+
Structure is documented below.
|
36
|
+
:param pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]] attachments: (Output)
|
37
|
+
URLs of any particular Attachments to explain this
|
38
|
+
blocker in more detail.
|
39
|
+
:param pulumi.Input[builtins.str] description: An optional description of this resource. Provide this property when you create the resource.
|
40
|
+
:param pulumi.Input[builtins.str] interconnect_group: The URL of an InterconnectGroup that groups these Attachments' Interconnects. Customers do not need to set this unless
|
41
|
+
directed by Google Support.
|
42
|
+
:param pulumi.Input[builtins.str] name: Name of the resource. Provided by the client when the resource is created. The name must be
|
43
|
+
1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters
|
44
|
+
long and match the regular expression `a-z?` which means the first
|
45
|
+
character must be a lowercase letter, and all following characters must be a dash,
|
46
|
+
lowercase letter, or digit, except the last character, which cannot be a dash.
|
47
|
+
"""
|
48
|
+
pulumi.set(__self__, "intent", intent)
|
49
|
+
if attachments is not None:
|
50
|
+
pulumi.set(__self__, "attachments", attachments)
|
51
|
+
if description is not None:
|
52
|
+
pulumi.set(__self__, "description", description)
|
53
|
+
if interconnect_group is not None:
|
54
|
+
pulumi.set(__self__, "interconnect_group", interconnect_group)
|
55
|
+
if name is not None:
|
56
|
+
pulumi.set(__self__, "name", name)
|
57
|
+
if project is not None:
|
58
|
+
pulumi.set(__self__, "project", project)
|
59
|
+
|
60
|
+
@property
|
61
|
+
@pulumi.getter
|
62
|
+
def intent(self) -> pulumi.Input['InterconnectAttachmentGroupIntentArgs']:
|
63
|
+
"""
|
64
|
+
The user's intent for this group. This is the only required field besides
|
65
|
+
the name that must be specified on group creation.
|
66
|
+
Structure is documented below.
|
67
|
+
"""
|
68
|
+
return pulumi.get(self, "intent")
|
69
|
+
|
70
|
+
@intent.setter
|
71
|
+
def intent(self, value: pulumi.Input['InterconnectAttachmentGroupIntentArgs']):
|
72
|
+
pulumi.set(self, "intent", value)
|
73
|
+
|
74
|
+
@property
|
75
|
+
@pulumi.getter
|
76
|
+
def attachments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]]]:
|
77
|
+
"""
|
78
|
+
(Output)
|
79
|
+
URLs of any particular Attachments to explain this
|
80
|
+
blocker in more detail.
|
81
|
+
"""
|
82
|
+
return pulumi.get(self, "attachments")
|
83
|
+
|
84
|
+
@attachments.setter
|
85
|
+
def attachments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]]]):
|
86
|
+
pulumi.set(self, "attachments", value)
|
87
|
+
|
88
|
+
@property
|
89
|
+
@pulumi.getter
|
90
|
+
def description(self) -> Optional[pulumi.Input[builtins.str]]:
|
91
|
+
"""
|
92
|
+
An optional description of this resource. Provide this property when you create the resource.
|
93
|
+
"""
|
94
|
+
return pulumi.get(self, "description")
|
95
|
+
|
96
|
+
@description.setter
|
97
|
+
def description(self, value: Optional[pulumi.Input[builtins.str]]):
|
98
|
+
pulumi.set(self, "description", value)
|
99
|
+
|
100
|
+
@property
|
101
|
+
@pulumi.getter(name="interconnectGroup")
|
102
|
+
def interconnect_group(self) -> Optional[pulumi.Input[builtins.str]]:
|
103
|
+
"""
|
104
|
+
The URL of an InterconnectGroup that groups these Attachments' Interconnects. Customers do not need to set this unless
|
105
|
+
directed by Google Support.
|
106
|
+
"""
|
107
|
+
return pulumi.get(self, "interconnect_group")
|
108
|
+
|
109
|
+
@interconnect_group.setter
|
110
|
+
def interconnect_group(self, value: Optional[pulumi.Input[builtins.str]]):
|
111
|
+
pulumi.set(self, "interconnect_group", value)
|
112
|
+
|
113
|
+
@property
|
114
|
+
@pulumi.getter
|
115
|
+
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
116
|
+
"""
|
117
|
+
Name of the resource. Provided by the client when the resource is created. The name must be
|
118
|
+
1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters
|
119
|
+
long and match the regular expression `a-z?` which means the first
|
120
|
+
character must be a lowercase letter, and all following characters must be a dash,
|
121
|
+
lowercase letter, or digit, except the last character, which cannot be a dash.
|
122
|
+
"""
|
123
|
+
return pulumi.get(self, "name")
|
124
|
+
|
125
|
+
@name.setter
|
126
|
+
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
127
|
+
pulumi.set(self, "name", value)
|
128
|
+
|
129
|
+
@property
|
130
|
+
@pulumi.getter
|
131
|
+
def project(self) -> Optional[pulumi.Input[builtins.str]]:
|
132
|
+
return pulumi.get(self, "project")
|
133
|
+
|
134
|
+
@project.setter
|
135
|
+
def project(self, value: Optional[pulumi.Input[builtins.str]]):
|
136
|
+
pulumi.set(self, "project", value)
|
137
|
+
|
138
|
+
|
139
|
+
@pulumi.input_type
|
140
|
+
class _InterconnectAttachmentGroupState:
|
141
|
+
def __init__(__self__, *,
|
142
|
+
attachments: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]]] = None,
|
143
|
+
configureds: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupConfiguredArgs']]]] = None,
|
144
|
+
creation_timestamp: Optional[pulumi.Input[builtins.str]] = None,
|
145
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
146
|
+
intent: Optional[pulumi.Input['InterconnectAttachmentGroupIntentArgs']] = None,
|
147
|
+
interconnect_group: Optional[pulumi.Input[builtins.str]] = None,
|
148
|
+
logical_structures: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupLogicalStructureArgs']]]] = None,
|
149
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
150
|
+
project: Optional[pulumi.Input[builtins.str]] = None):
|
151
|
+
"""
|
152
|
+
Input properties used for looking up and filtering InterconnectAttachmentGroup resources.
|
153
|
+
:param pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]] attachments: (Output)
|
154
|
+
URLs of any particular Attachments to explain this
|
155
|
+
blocker in more detail.
|
156
|
+
:param pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupConfiguredArgs']]] configureds: The redundancy this group is configured to support. The way a
|
157
|
+
user queries what SLA their Attachment gets is by looking at this field of
|
158
|
+
the Attachment's AttachmentGroup.
|
159
|
+
Structure is documented below.
|
160
|
+
:param pulumi.Input[builtins.str] creation_timestamp: Creation timestamp in RFC3339 text format.
|
161
|
+
:param pulumi.Input[builtins.str] description: An optional description of this resource. Provide this property when you create the resource.
|
162
|
+
:param pulumi.Input['InterconnectAttachmentGroupIntentArgs'] intent: The user's intent for this group. This is the only required field besides
|
163
|
+
the name that must be specified on group creation.
|
164
|
+
Structure is documented below.
|
165
|
+
:param pulumi.Input[builtins.str] interconnect_group: The URL of an InterconnectGroup that groups these Attachments' Interconnects. Customers do not need to set this unless
|
166
|
+
directed by Google Support.
|
167
|
+
:param pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupLogicalStructureArgs']]] logical_structures: An analysis of the logical layout of Attachments in this
|
168
|
+
group. Every Attachment in the group is shown once in this structure.
|
169
|
+
Structure is documented below.
|
170
|
+
:param pulumi.Input[builtins.str] name: Name of the resource. Provided by the client when the resource is created. The name must be
|
171
|
+
1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters
|
172
|
+
long and match the regular expression `a-z?` which means the first
|
173
|
+
character must be a lowercase letter, and all following characters must be a dash,
|
174
|
+
lowercase letter, or digit, except the last character, which cannot be a dash.
|
175
|
+
"""
|
176
|
+
if attachments is not None:
|
177
|
+
pulumi.set(__self__, "attachments", attachments)
|
178
|
+
if configureds is not None:
|
179
|
+
pulumi.set(__self__, "configureds", configureds)
|
180
|
+
if creation_timestamp is not None:
|
181
|
+
pulumi.set(__self__, "creation_timestamp", creation_timestamp)
|
182
|
+
if description is not None:
|
183
|
+
pulumi.set(__self__, "description", description)
|
184
|
+
if intent is not None:
|
185
|
+
pulumi.set(__self__, "intent", intent)
|
186
|
+
if interconnect_group is not None:
|
187
|
+
pulumi.set(__self__, "interconnect_group", interconnect_group)
|
188
|
+
if logical_structures is not None:
|
189
|
+
pulumi.set(__self__, "logical_structures", logical_structures)
|
190
|
+
if name is not None:
|
191
|
+
pulumi.set(__self__, "name", name)
|
192
|
+
if project is not None:
|
193
|
+
pulumi.set(__self__, "project", project)
|
194
|
+
|
195
|
+
@property
|
196
|
+
@pulumi.getter
|
197
|
+
def attachments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]]]:
|
198
|
+
"""
|
199
|
+
(Output)
|
200
|
+
URLs of any particular Attachments to explain this
|
201
|
+
blocker in more detail.
|
202
|
+
"""
|
203
|
+
return pulumi.get(self, "attachments")
|
204
|
+
|
205
|
+
@attachments.setter
|
206
|
+
def attachments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupAttachmentArgs']]]]):
|
207
|
+
pulumi.set(self, "attachments", value)
|
208
|
+
|
209
|
+
@property
|
210
|
+
@pulumi.getter
|
211
|
+
def configureds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupConfiguredArgs']]]]:
|
212
|
+
"""
|
213
|
+
The redundancy this group is configured to support. The way a
|
214
|
+
user queries what SLA their Attachment gets is by looking at this field of
|
215
|
+
the Attachment's AttachmentGroup.
|
216
|
+
Structure is documented below.
|
217
|
+
"""
|
218
|
+
return pulumi.get(self, "configureds")
|
219
|
+
|
220
|
+
@configureds.setter
|
221
|
+
def configureds(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupConfiguredArgs']]]]):
|
222
|
+
pulumi.set(self, "configureds", value)
|
223
|
+
|
224
|
+
@property
|
225
|
+
@pulumi.getter(name="creationTimestamp")
|
226
|
+
def creation_timestamp(self) -> Optional[pulumi.Input[builtins.str]]:
|
227
|
+
"""
|
228
|
+
Creation timestamp in RFC3339 text format.
|
229
|
+
"""
|
230
|
+
return pulumi.get(self, "creation_timestamp")
|
231
|
+
|
232
|
+
@creation_timestamp.setter
|
233
|
+
def creation_timestamp(self, value: Optional[pulumi.Input[builtins.str]]):
|
234
|
+
pulumi.set(self, "creation_timestamp", value)
|
235
|
+
|
236
|
+
@property
|
237
|
+
@pulumi.getter
|
238
|
+
def description(self) -> Optional[pulumi.Input[builtins.str]]:
|
239
|
+
"""
|
240
|
+
An optional description of this resource. Provide this property when you create the resource.
|
241
|
+
"""
|
242
|
+
return pulumi.get(self, "description")
|
243
|
+
|
244
|
+
@description.setter
|
245
|
+
def description(self, value: Optional[pulumi.Input[builtins.str]]):
|
246
|
+
pulumi.set(self, "description", value)
|
247
|
+
|
248
|
+
@property
|
249
|
+
@pulumi.getter
|
250
|
+
def intent(self) -> Optional[pulumi.Input['InterconnectAttachmentGroupIntentArgs']]:
|
251
|
+
"""
|
252
|
+
The user's intent for this group. This is the only required field besides
|
253
|
+
the name that must be specified on group creation.
|
254
|
+
Structure is documented below.
|
255
|
+
"""
|
256
|
+
return pulumi.get(self, "intent")
|
257
|
+
|
258
|
+
@intent.setter
|
259
|
+
def intent(self, value: Optional[pulumi.Input['InterconnectAttachmentGroupIntentArgs']]):
|
260
|
+
pulumi.set(self, "intent", value)
|
261
|
+
|
262
|
+
@property
|
263
|
+
@pulumi.getter(name="interconnectGroup")
|
264
|
+
def interconnect_group(self) -> Optional[pulumi.Input[builtins.str]]:
|
265
|
+
"""
|
266
|
+
The URL of an InterconnectGroup that groups these Attachments' Interconnects. Customers do not need to set this unless
|
267
|
+
directed by Google Support.
|
268
|
+
"""
|
269
|
+
return pulumi.get(self, "interconnect_group")
|
270
|
+
|
271
|
+
@interconnect_group.setter
|
272
|
+
def interconnect_group(self, value: Optional[pulumi.Input[builtins.str]]):
|
273
|
+
pulumi.set(self, "interconnect_group", value)
|
274
|
+
|
275
|
+
@property
|
276
|
+
@pulumi.getter(name="logicalStructures")
|
277
|
+
def logical_structures(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupLogicalStructureArgs']]]]:
|
278
|
+
"""
|
279
|
+
An analysis of the logical layout of Attachments in this
|
280
|
+
group. Every Attachment in the group is shown once in this structure.
|
281
|
+
Structure is documented below.
|
282
|
+
"""
|
283
|
+
return pulumi.get(self, "logical_structures")
|
284
|
+
|
285
|
+
@logical_structures.setter
|
286
|
+
def logical_structures(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InterconnectAttachmentGroupLogicalStructureArgs']]]]):
|
287
|
+
pulumi.set(self, "logical_structures", value)
|
288
|
+
|
289
|
+
@property
|
290
|
+
@pulumi.getter
|
291
|
+
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
292
|
+
"""
|
293
|
+
Name of the resource. Provided by the client when the resource is created. The name must be
|
294
|
+
1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters
|
295
|
+
long and match the regular expression `a-z?` which means the first
|
296
|
+
character must be a lowercase letter, and all following characters must be a dash,
|
297
|
+
lowercase letter, or digit, except the last character, which cannot be a dash.
|
298
|
+
"""
|
299
|
+
return pulumi.get(self, "name")
|
300
|
+
|
301
|
+
@name.setter
|
302
|
+
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
303
|
+
pulumi.set(self, "name", value)
|
304
|
+
|
305
|
+
@property
|
306
|
+
@pulumi.getter
|
307
|
+
def project(self) -> Optional[pulumi.Input[builtins.str]]:
|
308
|
+
return pulumi.get(self, "project")
|
309
|
+
|
310
|
+
@project.setter
|
311
|
+
def project(self, value: Optional[pulumi.Input[builtins.str]]):
|
312
|
+
pulumi.set(self, "project", value)
|
313
|
+
|
314
|
+
|
315
|
+
@pulumi.type_token("gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup")
|
316
|
+
class InterconnectAttachmentGroup(pulumi.CustomResource):
|
317
|
+
@overload
|
318
|
+
def __init__(__self__,
|
319
|
+
resource_name: str,
|
320
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
321
|
+
attachments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupAttachmentArgs', 'InterconnectAttachmentGroupAttachmentArgsDict']]]]] = None,
|
322
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
323
|
+
intent: Optional[pulumi.Input[Union['InterconnectAttachmentGroupIntentArgs', 'InterconnectAttachmentGroupIntentArgsDict']]] = None,
|
324
|
+
interconnect_group: Optional[pulumi.Input[builtins.str]] = None,
|
325
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
326
|
+
project: Optional[pulumi.Input[builtins.str]] = None,
|
327
|
+
__props__=None):
|
328
|
+
"""
|
329
|
+
An interconnect attachment group resource allows customers to create,
|
330
|
+
analyze, and expand highly available deployments.
|
331
|
+
|
332
|
+
To get more information about InterconnectAttachmentGroup, see:
|
333
|
+
|
334
|
+
* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/interconnects)
|
335
|
+
* How-to Guides
|
336
|
+
* [Create a Dedicated Interconnect](https://cloud.google.com/network-connectivity/docs/interconnect/concepts/dedicated-overview)
|
337
|
+
|
338
|
+
## Example Usage
|
339
|
+
|
340
|
+
### Interconnect Attachment Group Basic
|
341
|
+
|
342
|
+
```python
|
343
|
+
import pulumi
|
344
|
+
import pulumi_gcp as gcp
|
345
|
+
|
346
|
+
example_interconnect_attachment_group = gcp.compute.InterconnectAttachmentGroup("example-interconnect-attachment-group",
|
347
|
+
name="example-interconnect-attachment-group",
|
348
|
+
intent={
|
349
|
+
"availability_sla": "NO_SLA",
|
350
|
+
})
|
351
|
+
```
|
352
|
+
|
353
|
+
## Import
|
354
|
+
|
355
|
+
InterconnectAttachmentGroup can be imported using any of these accepted formats:
|
356
|
+
|
357
|
+
* `projects/{{project}}/global/interconnectAttachmentGroups/{{name}}`
|
358
|
+
|
359
|
+
* `{{project}}/{{name}}`
|
360
|
+
|
361
|
+
* `{{name}}`
|
362
|
+
|
363
|
+
When using the `pulumi import` command, InterconnectAttachmentGroup can be imported using one of the formats above. For example:
|
364
|
+
|
365
|
+
```sh
|
366
|
+
$ pulumi import gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup default projects/{{project}}/global/interconnectAttachmentGroups/{{name}}
|
367
|
+
```
|
368
|
+
|
369
|
+
```sh
|
370
|
+
$ pulumi import gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup default {{project}}/{{name}}
|
371
|
+
```
|
372
|
+
|
373
|
+
```sh
|
374
|
+
$ pulumi import gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup default {{name}}
|
375
|
+
```
|
376
|
+
|
377
|
+
:param str resource_name: The name of the resource.
|
378
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
379
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupAttachmentArgs', 'InterconnectAttachmentGroupAttachmentArgsDict']]]] attachments: (Output)
|
380
|
+
URLs of any particular Attachments to explain this
|
381
|
+
blocker in more detail.
|
382
|
+
:param pulumi.Input[builtins.str] description: An optional description of this resource. Provide this property when you create the resource.
|
383
|
+
:param pulumi.Input[Union['InterconnectAttachmentGroupIntentArgs', 'InterconnectAttachmentGroupIntentArgsDict']] intent: The user's intent for this group. This is the only required field besides
|
384
|
+
the name that must be specified on group creation.
|
385
|
+
Structure is documented below.
|
386
|
+
:param pulumi.Input[builtins.str] interconnect_group: The URL of an InterconnectGroup that groups these Attachments' Interconnects. Customers do not need to set this unless
|
387
|
+
directed by Google Support.
|
388
|
+
:param pulumi.Input[builtins.str] name: Name of the resource. Provided by the client when the resource is created. The name must be
|
389
|
+
1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters
|
390
|
+
long and match the regular expression `a-z?` which means the first
|
391
|
+
character must be a lowercase letter, and all following characters must be a dash,
|
392
|
+
lowercase letter, or digit, except the last character, which cannot be a dash.
|
393
|
+
"""
|
394
|
+
...
|
395
|
+
@overload
|
396
|
+
def __init__(__self__,
|
397
|
+
resource_name: str,
|
398
|
+
args: InterconnectAttachmentGroupArgs,
|
399
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
400
|
+
"""
|
401
|
+
An interconnect attachment group resource allows customers to create,
|
402
|
+
analyze, and expand highly available deployments.
|
403
|
+
|
404
|
+
To get more information about InterconnectAttachmentGroup, see:
|
405
|
+
|
406
|
+
* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/interconnects)
|
407
|
+
* How-to Guides
|
408
|
+
* [Create a Dedicated Interconnect](https://cloud.google.com/network-connectivity/docs/interconnect/concepts/dedicated-overview)
|
409
|
+
|
410
|
+
## Example Usage
|
411
|
+
|
412
|
+
### Interconnect Attachment Group Basic
|
413
|
+
|
414
|
+
```python
|
415
|
+
import pulumi
|
416
|
+
import pulumi_gcp as gcp
|
417
|
+
|
418
|
+
example_interconnect_attachment_group = gcp.compute.InterconnectAttachmentGroup("example-interconnect-attachment-group",
|
419
|
+
name="example-interconnect-attachment-group",
|
420
|
+
intent={
|
421
|
+
"availability_sla": "NO_SLA",
|
422
|
+
})
|
423
|
+
```
|
424
|
+
|
425
|
+
## Import
|
426
|
+
|
427
|
+
InterconnectAttachmentGroup can be imported using any of these accepted formats:
|
428
|
+
|
429
|
+
* `projects/{{project}}/global/interconnectAttachmentGroups/{{name}}`
|
430
|
+
|
431
|
+
* `{{project}}/{{name}}`
|
432
|
+
|
433
|
+
* `{{name}}`
|
434
|
+
|
435
|
+
When using the `pulumi import` command, InterconnectAttachmentGroup can be imported using one of the formats above. For example:
|
436
|
+
|
437
|
+
```sh
|
438
|
+
$ pulumi import gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup default projects/{{project}}/global/interconnectAttachmentGroups/{{name}}
|
439
|
+
```
|
440
|
+
|
441
|
+
```sh
|
442
|
+
$ pulumi import gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup default {{project}}/{{name}}
|
443
|
+
```
|
444
|
+
|
445
|
+
```sh
|
446
|
+
$ pulumi import gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup default {{name}}
|
447
|
+
```
|
448
|
+
|
449
|
+
:param str resource_name: The name of the resource.
|
450
|
+
:param InterconnectAttachmentGroupArgs args: The arguments to use to populate this resource's properties.
|
451
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
452
|
+
"""
|
453
|
+
...
|
454
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
455
|
+
resource_args, opts = _utilities.get_resource_args_opts(InterconnectAttachmentGroupArgs, pulumi.ResourceOptions, *args, **kwargs)
|
456
|
+
if resource_args is not None:
|
457
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
458
|
+
else:
|
459
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
460
|
+
|
461
|
+
def _internal_init(__self__,
|
462
|
+
resource_name: str,
|
463
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
464
|
+
attachments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupAttachmentArgs', 'InterconnectAttachmentGroupAttachmentArgsDict']]]]] = None,
|
465
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
466
|
+
intent: Optional[pulumi.Input[Union['InterconnectAttachmentGroupIntentArgs', 'InterconnectAttachmentGroupIntentArgsDict']]] = None,
|
467
|
+
interconnect_group: Optional[pulumi.Input[builtins.str]] = None,
|
468
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
469
|
+
project: Optional[pulumi.Input[builtins.str]] = None,
|
470
|
+
__props__=None):
|
471
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
472
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
473
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
474
|
+
if opts.id is None:
|
475
|
+
if __props__ is not None:
|
476
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
477
|
+
__props__ = InterconnectAttachmentGroupArgs.__new__(InterconnectAttachmentGroupArgs)
|
478
|
+
|
479
|
+
__props__.__dict__["attachments"] = attachments
|
480
|
+
__props__.__dict__["description"] = description
|
481
|
+
if intent is None and not opts.urn:
|
482
|
+
raise TypeError("Missing required property 'intent'")
|
483
|
+
__props__.__dict__["intent"] = intent
|
484
|
+
__props__.__dict__["interconnect_group"] = interconnect_group
|
485
|
+
__props__.__dict__["name"] = name
|
486
|
+
__props__.__dict__["project"] = project
|
487
|
+
__props__.__dict__["configureds"] = None
|
488
|
+
__props__.__dict__["creation_timestamp"] = None
|
489
|
+
__props__.__dict__["logical_structures"] = None
|
490
|
+
super(InterconnectAttachmentGroup, __self__).__init__(
|
491
|
+
'gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup',
|
492
|
+
resource_name,
|
493
|
+
__props__,
|
494
|
+
opts)
|
495
|
+
|
496
|
+
@staticmethod
|
497
|
+
def get(resource_name: str,
|
498
|
+
id: pulumi.Input[str],
|
499
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
500
|
+
attachments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupAttachmentArgs', 'InterconnectAttachmentGroupAttachmentArgsDict']]]]] = None,
|
501
|
+
configureds: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupConfiguredArgs', 'InterconnectAttachmentGroupConfiguredArgsDict']]]]] = None,
|
502
|
+
creation_timestamp: Optional[pulumi.Input[builtins.str]] = None,
|
503
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
504
|
+
intent: Optional[pulumi.Input[Union['InterconnectAttachmentGroupIntentArgs', 'InterconnectAttachmentGroupIntentArgsDict']]] = None,
|
505
|
+
interconnect_group: Optional[pulumi.Input[builtins.str]] = None,
|
506
|
+
logical_structures: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupLogicalStructureArgs', 'InterconnectAttachmentGroupLogicalStructureArgsDict']]]]] = None,
|
507
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
508
|
+
project: Optional[pulumi.Input[builtins.str]] = None) -> 'InterconnectAttachmentGroup':
|
509
|
+
"""
|
510
|
+
Get an existing InterconnectAttachmentGroup resource's state with the given name, id, and optional extra
|
511
|
+
properties used to qualify the lookup.
|
512
|
+
|
513
|
+
:param str resource_name: The unique name of the resulting resource.
|
514
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
515
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
516
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupAttachmentArgs', 'InterconnectAttachmentGroupAttachmentArgsDict']]]] attachments: (Output)
|
517
|
+
URLs of any particular Attachments to explain this
|
518
|
+
blocker in more detail.
|
519
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupConfiguredArgs', 'InterconnectAttachmentGroupConfiguredArgsDict']]]] configureds: The redundancy this group is configured to support. The way a
|
520
|
+
user queries what SLA their Attachment gets is by looking at this field of
|
521
|
+
the Attachment's AttachmentGroup.
|
522
|
+
Structure is documented below.
|
523
|
+
:param pulumi.Input[builtins.str] creation_timestamp: Creation timestamp in RFC3339 text format.
|
524
|
+
:param pulumi.Input[builtins.str] description: An optional description of this resource. Provide this property when you create the resource.
|
525
|
+
:param pulumi.Input[Union['InterconnectAttachmentGroupIntentArgs', 'InterconnectAttachmentGroupIntentArgsDict']] intent: The user's intent for this group. This is the only required field besides
|
526
|
+
the name that must be specified on group creation.
|
527
|
+
Structure is documented below.
|
528
|
+
:param pulumi.Input[builtins.str] interconnect_group: The URL of an InterconnectGroup that groups these Attachments' Interconnects. Customers do not need to set this unless
|
529
|
+
directed by Google Support.
|
530
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['InterconnectAttachmentGroupLogicalStructureArgs', 'InterconnectAttachmentGroupLogicalStructureArgsDict']]]] logical_structures: An analysis of the logical layout of Attachments in this
|
531
|
+
group. Every Attachment in the group is shown once in this structure.
|
532
|
+
Structure is documented below.
|
533
|
+
:param pulumi.Input[builtins.str] name: Name of the resource. Provided by the client when the resource is created. The name must be
|
534
|
+
1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters
|
535
|
+
long and match the regular expression `a-z?` which means the first
|
536
|
+
character must be a lowercase letter, and all following characters must be a dash,
|
537
|
+
lowercase letter, or digit, except the last character, which cannot be a dash.
|
538
|
+
"""
|
539
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
540
|
+
|
541
|
+
__props__ = _InterconnectAttachmentGroupState.__new__(_InterconnectAttachmentGroupState)
|
542
|
+
|
543
|
+
__props__.__dict__["attachments"] = attachments
|
544
|
+
__props__.__dict__["configureds"] = configureds
|
545
|
+
__props__.__dict__["creation_timestamp"] = creation_timestamp
|
546
|
+
__props__.__dict__["description"] = description
|
547
|
+
__props__.__dict__["intent"] = intent
|
548
|
+
__props__.__dict__["interconnect_group"] = interconnect_group
|
549
|
+
__props__.__dict__["logical_structures"] = logical_structures
|
550
|
+
__props__.__dict__["name"] = name
|
551
|
+
__props__.__dict__["project"] = project
|
552
|
+
return InterconnectAttachmentGroup(resource_name, opts=opts, __props__=__props__)
|
553
|
+
|
554
|
+
@property
|
555
|
+
@pulumi.getter
|
556
|
+
def attachments(self) -> pulumi.Output[Optional[Sequence['outputs.InterconnectAttachmentGroupAttachment']]]:
|
557
|
+
"""
|
558
|
+
(Output)
|
559
|
+
URLs of any particular Attachments to explain this
|
560
|
+
blocker in more detail.
|
561
|
+
"""
|
562
|
+
return pulumi.get(self, "attachments")
|
563
|
+
|
564
|
+
@property
|
565
|
+
@pulumi.getter
|
566
|
+
def configureds(self) -> pulumi.Output[Sequence['outputs.InterconnectAttachmentGroupConfigured']]:
|
567
|
+
"""
|
568
|
+
The redundancy this group is configured to support. The way a
|
569
|
+
user queries what SLA their Attachment gets is by looking at this field of
|
570
|
+
the Attachment's AttachmentGroup.
|
571
|
+
Structure is documented below.
|
572
|
+
"""
|
573
|
+
return pulumi.get(self, "configureds")
|
574
|
+
|
575
|
+
@property
|
576
|
+
@pulumi.getter(name="creationTimestamp")
|
577
|
+
def creation_timestamp(self) -> pulumi.Output[builtins.str]:
|
578
|
+
"""
|
579
|
+
Creation timestamp in RFC3339 text format.
|
580
|
+
"""
|
581
|
+
return pulumi.get(self, "creation_timestamp")
|
582
|
+
|
583
|
+
@property
|
584
|
+
@pulumi.getter
|
585
|
+
def description(self) -> pulumi.Output[Optional[builtins.str]]:
|
586
|
+
"""
|
587
|
+
An optional description of this resource. Provide this property when you create the resource.
|
588
|
+
"""
|
589
|
+
return pulumi.get(self, "description")
|
590
|
+
|
591
|
+
@property
|
592
|
+
@pulumi.getter
|
593
|
+
def intent(self) -> pulumi.Output['outputs.InterconnectAttachmentGroupIntent']:
|
594
|
+
"""
|
595
|
+
The user's intent for this group. This is the only required field besides
|
596
|
+
the name that must be specified on group creation.
|
597
|
+
Structure is documented below.
|
598
|
+
"""
|
599
|
+
return pulumi.get(self, "intent")
|
600
|
+
|
601
|
+
@property
|
602
|
+
@pulumi.getter(name="interconnectGroup")
|
603
|
+
def interconnect_group(self) -> pulumi.Output[Optional[builtins.str]]:
|
604
|
+
"""
|
605
|
+
The URL of an InterconnectGroup that groups these Attachments' Interconnects. Customers do not need to set this unless
|
606
|
+
directed by Google Support.
|
607
|
+
"""
|
608
|
+
return pulumi.get(self, "interconnect_group")
|
609
|
+
|
610
|
+
@property
|
611
|
+
@pulumi.getter(name="logicalStructures")
|
612
|
+
def logical_structures(self) -> pulumi.Output[Sequence['outputs.InterconnectAttachmentGroupLogicalStructure']]:
|
613
|
+
"""
|
614
|
+
An analysis of the logical layout of Attachments in this
|
615
|
+
group. Every Attachment in the group is shown once in this structure.
|
616
|
+
Structure is documented below.
|
617
|
+
"""
|
618
|
+
return pulumi.get(self, "logical_structures")
|
619
|
+
|
620
|
+
@property
|
621
|
+
@pulumi.getter
|
622
|
+
def name(self) -> pulumi.Output[builtins.str]:
|
623
|
+
"""
|
624
|
+
Name of the resource. Provided by the client when the resource is created. The name must be
|
625
|
+
1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters
|
626
|
+
long and match the regular expression `a-z?` which means the first
|
627
|
+
character must be a lowercase letter, and all following characters must be a dash,
|
628
|
+
lowercase letter, or digit, except the last character, which cannot be a dash.
|
629
|
+
"""
|
630
|
+
return pulumi.get(self, "name")
|
631
|
+
|
632
|
+
@property
|
633
|
+
@pulumi.getter
|
634
|
+
def project(self) -> pulumi.Output[builtins.str]:
|
635
|
+
return pulumi.get(self, "project")
|
636
|
+
|