pulumi-kubernetes 4.23.0a1746129859__py3-none-any.whl → 4.23.0a1746138483__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.
Potentially problematic release.
This version of pulumi-kubernetes might be problematic. Click here for more details.
- pulumi_kubernetes/__init__.py +36 -2
- pulumi_kubernetes/admissionregistration/v1alpha1/_inputs.py +30 -30
- pulumi_kubernetes/admissionregistration/v1alpha1/outputs.py +20 -20
- pulumi_kubernetes/apps/v1/ReplicaSetList.py +4 -4
- pulumi_kubernetes/apps/v1/_inputs.py +109 -56
- pulumi_kubernetes/apps/v1/outputs.py +129 -56
- pulumi_kubernetes/autoscaling/v2/_inputs.py +92 -12
- pulumi_kubernetes/autoscaling/v2/outputs.py +66 -10
- pulumi_kubernetes/batch/v1/_inputs.py +12 -42
- pulumi_kubernetes/batch/v1/outputs.py +8 -32
- pulumi_kubernetes/certificates/v1alpha1/ClusterTrustBundle.py +2 -0
- pulumi_kubernetes/certificates/v1alpha1/ClusterTrustBundlePatch.py +2 -0
- pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundle.py +229 -0
- pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundleList.py +219 -0
- pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundlePatch.py +240 -0
- pulumi_kubernetes/certificates/v1beta1/__init__.py +3 -0
- pulumi_kubernetes/certificates/v1beta1/_inputs.py +292 -0
- pulumi_kubernetes/certificates/v1beta1/outputs.py +241 -0
- pulumi_kubernetes/coordination/v1alpha1/LeaseCandidate.py +1 -1
- pulumi_kubernetes/coordination/v1alpha1/LeaseCandidatePatch.py +1 -1
- pulumi_kubernetes/coordination/v1alpha2/LeaseCandidate.py +1 -1
- pulumi_kubernetes/coordination/v1alpha2/LeaseCandidatePatch.py +1 -1
- pulumi_kubernetes/coordination/v1alpha2/_inputs.py +6 -6
- pulumi_kubernetes/coordination/v1alpha2/outputs.py +4 -4
- pulumi_kubernetes/coordination/v1beta1/LeaseCandidate.py +220 -0
- pulumi_kubernetes/coordination/v1beta1/LeaseCandidateList.py +219 -0
- pulumi_kubernetes/coordination/v1beta1/LeaseCandidatePatch.py +232 -0
- pulumi_kubernetes/coordination/v1beta1/__init__.py +3 -0
- pulumi_kubernetes/coordination/v1beta1/_inputs.py +371 -0
- pulumi_kubernetes/coordination/v1beta1/outputs.py +292 -0
- pulumi_kubernetes/core/v1/Endpoints.py +8 -0
- pulumi_kubernetes/core/v1/EndpointsList.py +2 -2
- pulumi_kubernetes/core/v1/EndpointsPatch.py +8 -0
- pulumi_kubernetes/core/v1/_inputs.py +240 -66
- pulumi_kubernetes/core/v1/outputs.py +251 -51
- pulumi_kubernetes/discovery/v1/EndpointSlice.py +10 -10
- pulumi_kubernetes/discovery/v1/EndpointSlicePatch.py +10 -10
- pulumi_kubernetes/discovery/v1/_inputs.py +159 -44
- pulumi_kubernetes/discovery/v1/outputs.py +107 -32
- pulumi_kubernetes/networking/v1/IPAddress.py +220 -0
- pulumi_kubernetes/networking/v1/IPAddressList.py +219 -0
- pulumi_kubernetes/networking/v1/IPAddressPatch.py +232 -0
- pulumi_kubernetes/networking/v1/ServiceCIDR.py +230 -0
- pulumi_kubernetes/networking/v1/ServiceCIDRList.py +219 -0
- pulumi_kubernetes/networking/v1/ServiceCIDRPatch.py +242 -0
- pulumi_kubernetes/networking/v1/__init__.py +6 -0
- pulumi_kubernetes/networking/v1/_inputs.py +599 -0
- pulumi_kubernetes/networking/v1/outputs.py +461 -0
- pulumi_kubernetes/networking/v1alpha1/IPAddress.py +1 -1
- pulumi_kubernetes/networking/v1alpha1/IPAddressPatch.py +1 -1
- pulumi_kubernetes/networking/v1alpha1/ServiceCIDR.py +1 -1
- pulumi_kubernetes/networking/v1alpha1/ServiceCIDRPatch.py +1 -1
- pulumi_kubernetes/networking/v1beta1/IPAddress.py +1 -1
- pulumi_kubernetes/networking/v1beta1/IPAddressPatch.py +1 -1
- pulumi_kubernetes/networking/v1beta1/ServiceCIDR.py +1 -1
- pulumi_kubernetes/networking/v1beta1/ServiceCIDRPatch.py +1 -1
- pulumi_kubernetes/policy/v1/_inputs.py +0 -12
- pulumi_kubernetes/policy/v1/outputs.py +0 -8
- pulumi_kubernetes/pulumi-plugin.json +1 -1
- pulumi_kubernetes/resource/__init__.py +3 -0
- pulumi_kubernetes/resource/v1alpha1/ResourceClaim.py +1 -1
- pulumi_kubernetes/resource/v1alpha1/ResourceClaimPatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplate.py +1 -1
- pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplatePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaim.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaimPatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplate.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplatePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceSlice.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceSlicePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/DeviceClass.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/DeviceClassPatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/DeviceTaintRule.py +227 -0
- pulumi_kubernetes/resource/v1alpha3/DeviceTaintRuleList.py +219 -0
- pulumi_kubernetes/resource/v1alpha3/DeviceTaintRulePatch.py +238 -0
- pulumi_kubernetes/resource/v1alpha3/ResourceClaim.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceClaimPatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplate.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplatePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceSlice.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceSlicePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/__init__.py +3 -0
- pulumi_kubernetes/resource/v1alpha3/_inputs.py +2559 -213
- pulumi_kubernetes/resource/v1alpha3/outputs.py +2037 -256
- pulumi_kubernetes/resource/v1beta1/DeviceClass.py +1 -1
- pulumi_kubernetes/resource/v1beta1/DeviceClassPatch.py +1 -1
- pulumi_kubernetes/resource/v1beta1/ResourceClaim.py +1 -1
- pulumi_kubernetes/resource/v1beta1/ResourceClaimPatch.py +1 -1
- pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplate.py +1 -1
- pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplatePatch.py +1 -1
- pulumi_kubernetes/resource/v1beta1/ResourceSlice.py +1 -1
- pulumi_kubernetes/resource/v1beta1/ResourceSlicePatch.py +1 -1
- pulumi_kubernetes/resource/v1beta1/_inputs.py +2044 -176
- pulumi_kubernetes/resource/v1beta1/outputs.py +1536 -134
- pulumi_kubernetes/resource/v1beta2/DeviceClass.py +241 -0
- pulumi_kubernetes/resource/v1beta2/DeviceClassList.py +219 -0
- pulumi_kubernetes/resource/v1beta2/DeviceClassPatch.py +252 -0
- pulumi_kubernetes/resource/v1beta2/ResourceClaim.py +236 -0
- pulumi_kubernetes/resource/v1beta2/ResourceClaimList.py +220 -0
- pulumi_kubernetes/resource/v1beta2/ResourceClaimPatch.py +247 -0
- pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplate.py +233 -0
- pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplateList.py +219 -0
- pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplatePatch.py +244 -0
- pulumi_kubernetes/resource/v1beta2/ResourceSlice.py +250 -0
- pulumi_kubernetes/resource/v1beta2/ResourceSliceList.py +220 -0
- pulumi_kubernetes/resource/v1beta2/ResourceSlicePatch.py +261 -0
- pulumi_kubernetes/resource/v1beta2/__init__.py +22 -0
- pulumi_kubernetes/resource/v1beta2/_inputs.py +5681 -0
- pulumi_kubernetes/resource/v1beta2/outputs.py +4726 -0
- pulumi_kubernetes/storage/v1/_inputs.py +90 -0
- pulumi_kubernetes/storage/v1/outputs.py +110 -0
- pulumi_kubernetes/yaml/yaml.py +108 -0
- {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/METADATA +1 -1
- {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/RECORD +116 -86
- {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/WHEEL +0 -0
- {pulumi_kubernetes-4.23.0a1746129859.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/top_level.txt +0 -0
|
@@ -28,6 +28,8 @@ __all__ = [
|
|
|
28
28
|
'EndpointPort',
|
|
29
29
|
'EndpointPortPatch',
|
|
30
30
|
'EndpointSlice',
|
|
31
|
+
'ForNode',
|
|
32
|
+
'ForNodePatch',
|
|
31
33
|
'ForZone',
|
|
32
34
|
'ForZonePatch',
|
|
33
35
|
]
|
|
@@ -69,7 +71,7 @@ class Endpoint(dict):
|
|
|
69
71
|
zone: Optional[builtins.str] = None):
|
|
70
72
|
"""
|
|
71
73
|
Endpoint represents a single logical "backend" implementing a service.
|
|
72
|
-
:param Sequence[builtins.str] addresses: addresses of this endpoint.
|
|
74
|
+
:param Sequence[builtins.str] addresses: addresses of this endpoint. For EndpointSlices of addressType "IPv4" or "IPv6", the values are IP addresses in canonical form. The syntax and semantics of other addressType values are not defined. This must contain at least one address but no more than 100. EndpointSlices generated by the EndpointSlice controller will always have exactly 1 address. No semantics are defined for additional addresses beyond the first, and kube-proxy does not look at them.
|
|
73
75
|
:param 'EndpointConditionsArgs' conditions: conditions contains information about the current status of the endpoint.
|
|
74
76
|
:param Mapping[str, builtins.str] deprecated_topology: deprecatedTopology contains topology information part of the v1beta1 API. This field is deprecated, and will be removed when the v1beta1 API is removed (no sooner than kubernetes v1.24). While this field can hold values, it is not writable through the v1 API, and any attempts to write to it will be silently ignored. Topology information can be found in the zone and nodeName fields instead.
|
|
75
77
|
:param 'EndpointHintsArgs' hints: hints contains information associated with how an endpoint should be consumed.
|
|
@@ -98,7 +100,7 @@ class Endpoint(dict):
|
|
|
98
100
|
@pulumi.getter
|
|
99
101
|
def addresses(self) -> Sequence[builtins.str]:
|
|
100
102
|
"""
|
|
101
|
-
addresses of this endpoint.
|
|
103
|
+
addresses of this endpoint. For EndpointSlices of addressType "IPv4" or "IPv6", the values are IP addresses in canonical form. The syntax and semantics of other addressType values are not defined. This must contain at least one address but no more than 100. EndpointSlices generated by the EndpointSlice controller will always have exactly 1 address. No semantics are defined for additional addresses beyond the first, and kube-proxy does not look at them.
|
|
102
104
|
"""
|
|
103
105
|
return pulumi.get(self, "addresses")
|
|
104
106
|
|
|
@@ -170,9 +172,9 @@ class EndpointConditions(dict):
|
|
|
170
172
|
terminating: Optional[builtins.bool] = None):
|
|
171
173
|
"""
|
|
172
174
|
EndpointConditions represents the current condition of an endpoint.
|
|
173
|
-
:param builtins.bool ready: ready indicates that this endpoint is
|
|
174
|
-
:param builtins.bool serving: serving is
|
|
175
|
-
:param builtins.bool terminating: terminating indicates that this endpoint is terminating. A nil value
|
|
175
|
+
:param builtins.bool ready: ready indicates that this endpoint is ready to receive traffic, according to whatever system is managing the endpoint. A nil value should be interpreted as "true". In general, an endpoint should be marked ready if it is serving and not terminating, though this can be overridden in some cases, such as when the associated Service has set the publishNotReadyAddresses flag.
|
|
176
|
+
:param builtins.bool serving: serving indicates that this endpoint is able to receive traffic, according to whatever system is managing the endpoint. For endpoints backed by pods, the EndpointSlice controller will mark the endpoint as serving if the pod's Ready condition is True. A nil value should be interpreted as "true".
|
|
177
|
+
:param builtins.bool terminating: terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
|
|
176
178
|
"""
|
|
177
179
|
if ready is not None:
|
|
178
180
|
pulumi.set(__self__, "ready", ready)
|
|
@@ -185,7 +187,7 @@ class EndpointConditions(dict):
|
|
|
185
187
|
@pulumi.getter
|
|
186
188
|
def ready(self) -> Optional[builtins.bool]:
|
|
187
189
|
"""
|
|
188
|
-
ready indicates that this endpoint is
|
|
190
|
+
ready indicates that this endpoint is ready to receive traffic, according to whatever system is managing the endpoint. A nil value should be interpreted as "true". In general, an endpoint should be marked ready if it is serving and not terminating, though this can be overridden in some cases, such as when the associated Service has set the publishNotReadyAddresses flag.
|
|
189
191
|
"""
|
|
190
192
|
return pulumi.get(self, "ready")
|
|
191
193
|
|
|
@@ -193,7 +195,7 @@ class EndpointConditions(dict):
|
|
|
193
195
|
@pulumi.getter
|
|
194
196
|
def serving(self) -> Optional[builtins.bool]:
|
|
195
197
|
"""
|
|
196
|
-
serving is
|
|
198
|
+
serving indicates that this endpoint is able to receive traffic, according to whatever system is managing the endpoint. For endpoints backed by pods, the EndpointSlice controller will mark the endpoint as serving if the pod's Ready condition is True. A nil value should be interpreted as "true".
|
|
197
199
|
"""
|
|
198
200
|
return pulumi.get(self, "serving")
|
|
199
201
|
|
|
@@ -201,7 +203,7 @@ class EndpointConditions(dict):
|
|
|
201
203
|
@pulumi.getter
|
|
202
204
|
def terminating(self) -> Optional[builtins.bool]:
|
|
203
205
|
"""
|
|
204
|
-
terminating indicates that this endpoint is terminating. A nil value
|
|
206
|
+
terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
|
|
205
207
|
"""
|
|
206
208
|
return pulumi.get(self, "terminating")
|
|
207
209
|
|
|
@@ -217,9 +219,9 @@ class EndpointConditionsPatch(dict):
|
|
|
217
219
|
terminating: Optional[builtins.bool] = None):
|
|
218
220
|
"""
|
|
219
221
|
EndpointConditions represents the current condition of an endpoint.
|
|
220
|
-
:param builtins.bool ready: ready indicates that this endpoint is
|
|
221
|
-
:param builtins.bool serving: serving is
|
|
222
|
-
:param builtins.bool terminating: terminating indicates that this endpoint is terminating. A nil value
|
|
222
|
+
:param builtins.bool ready: ready indicates that this endpoint is ready to receive traffic, according to whatever system is managing the endpoint. A nil value should be interpreted as "true". In general, an endpoint should be marked ready if it is serving and not terminating, though this can be overridden in some cases, such as when the associated Service has set the publishNotReadyAddresses flag.
|
|
223
|
+
:param builtins.bool serving: serving indicates that this endpoint is able to receive traffic, according to whatever system is managing the endpoint. For endpoints backed by pods, the EndpointSlice controller will mark the endpoint as serving if the pod's Ready condition is True. A nil value should be interpreted as "true".
|
|
224
|
+
:param builtins.bool terminating: terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
|
|
223
225
|
"""
|
|
224
226
|
if ready is not None:
|
|
225
227
|
pulumi.set(__self__, "ready", ready)
|
|
@@ -232,7 +234,7 @@ class EndpointConditionsPatch(dict):
|
|
|
232
234
|
@pulumi.getter
|
|
233
235
|
def ready(self) -> Optional[builtins.bool]:
|
|
234
236
|
"""
|
|
235
|
-
ready indicates that this endpoint is
|
|
237
|
+
ready indicates that this endpoint is ready to receive traffic, according to whatever system is managing the endpoint. A nil value should be interpreted as "true". In general, an endpoint should be marked ready if it is serving and not terminating, though this can be overridden in some cases, such as when the associated Service has set the publishNotReadyAddresses flag.
|
|
236
238
|
"""
|
|
237
239
|
return pulumi.get(self, "ready")
|
|
238
240
|
|
|
@@ -240,7 +242,7 @@ class EndpointConditionsPatch(dict):
|
|
|
240
242
|
@pulumi.getter
|
|
241
243
|
def serving(self) -> Optional[builtins.bool]:
|
|
242
244
|
"""
|
|
243
|
-
serving is
|
|
245
|
+
serving indicates that this endpoint is able to receive traffic, according to whatever system is managing the endpoint. For endpoints backed by pods, the EndpointSlice controller will mark the endpoint as serving if the pod's Ready condition is True. A nil value should be interpreted as "true".
|
|
244
246
|
"""
|
|
245
247
|
return pulumi.get(self, "serving")
|
|
246
248
|
|
|
@@ -248,7 +250,7 @@ class EndpointConditionsPatch(dict):
|
|
|
248
250
|
@pulumi.getter
|
|
249
251
|
def terminating(self) -> Optional[builtins.bool]:
|
|
250
252
|
"""
|
|
251
|
-
terminating indicates that this endpoint is terminating. A nil value
|
|
253
|
+
terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
|
|
252
254
|
"""
|
|
253
255
|
return pulumi.get(self, "terminating")
|
|
254
256
|
|
|
@@ -261,7 +263,9 @@ class EndpointHints(dict):
|
|
|
261
263
|
@staticmethod
|
|
262
264
|
def __key_warning(key: str):
|
|
263
265
|
suggest = None
|
|
264
|
-
if key == "
|
|
266
|
+
if key == "forNodes":
|
|
267
|
+
suggest = "for_nodes"
|
|
268
|
+
elif key == "forZones":
|
|
265
269
|
suggest = "for_zones"
|
|
266
270
|
|
|
267
271
|
if suggest:
|
|
@@ -276,19 +280,31 @@ class EndpointHints(dict):
|
|
|
276
280
|
return super().get(key, default)
|
|
277
281
|
|
|
278
282
|
def __init__(__self__, *,
|
|
283
|
+
for_nodes: Optional[Sequence['outputs.ForNode']] = None,
|
|
279
284
|
for_zones: Optional[Sequence['outputs.ForZone']] = None):
|
|
280
285
|
"""
|
|
281
286
|
EndpointHints provides hints describing how an endpoint should be consumed.
|
|
282
|
-
:param Sequence['
|
|
287
|
+
:param Sequence['ForNodeArgs'] for_nodes: forNodes indicates the node(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries. This is an Alpha feature and is only used when the PreferSameTrafficDistribution feature gate is enabled.
|
|
288
|
+
:param Sequence['ForZoneArgs'] for_zones: forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
|
|
283
289
|
"""
|
|
290
|
+
if for_nodes is not None:
|
|
291
|
+
pulumi.set(__self__, "for_nodes", for_nodes)
|
|
284
292
|
if for_zones is not None:
|
|
285
293
|
pulumi.set(__self__, "for_zones", for_zones)
|
|
286
294
|
|
|
295
|
+
@property
|
|
296
|
+
@pulumi.getter(name="forNodes")
|
|
297
|
+
def for_nodes(self) -> Optional[Sequence['outputs.ForNode']]:
|
|
298
|
+
"""
|
|
299
|
+
forNodes indicates the node(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries. This is an Alpha feature and is only used when the PreferSameTrafficDistribution feature gate is enabled.
|
|
300
|
+
"""
|
|
301
|
+
return pulumi.get(self, "for_nodes")
|
|
302
|
+
|
|
287
303
|
@property
|
|
288
304
|
@pulumi.getter(name="forZones")
|
|
289
305
|
def for_zones(self) -> Optional[Sequence['outputs.ForZone']]:
|
|
290
306
|
"""
|
|
291
|
-
forZones indicates the zone(s) this endpoint should be consumed by
|
|
307
|
+
forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
|
|
292
308
|
"""
|
|
293
309
|
return pulumi.get(self, "for_zones")
|
|
294
310
|
|
|
@@ -301,7 +317,9 @@ class EndpointHintsPatch(dict):
|
|
|
301
317
|
@staticmethod
|
|
302
318
|
def __key_warning(key: str):
|
|
303
319
|
suggest = None
|
|
304
|
-
if key == "
|
|
320
|
+
if key == "forNodes":
|
|
321
|
+
suggest = "for_nodes"
|
|
322
|
+
elif key == "forZones":
|
|
305
323
|
suggest = "for_zones"
|
|
306
324
|
|
|
307
325
|
if suggest:
|
|
@@ -316,19 +334,31 @@ class EndpointHintsPatch(dict):
|
|
|
316
334
|
return super().get(key, default)
|
|
317
335
|
|
|
318
336
|
def __init__(__self__, *,
|
|
337
|
+
for_nodes: Optional[Sequence['outputs.ForNodePatch']] = None,
|
|
319
338
|
for_zones: Optional[Sequence['outputs.ForZonePatch']] = None):
|
|
320
339
|
"""
|
|
321
340
|
EndpointHints provides hints describing how an endpoint should be consumed.
|
|
322
|
-
:param Sequence['
|
|
341
|
+
:param Sequence['ForNodePatchArgs'] for_nodes: forNodes indicates the node(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries. This is an Alpha feature and is only used when the PreferSameTrafficDistribution feature gate is enabled.
|
|
342
|
+
:param Sequence['ForZonePatchArgs'] for_zones: forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
|
|
323
343
|
"""
|
|
344
|
+
if for_nodes is not None:
|
|
345
|
+
pulumi.set(__self__, "for_nodes", for_nodes)
|
|
324
346
|
if for_zones is not None:
|
|
325
347
|
pulumi.set(__self__, "for_zones", for_zones)
|
|
326
348
|
|
|
349
|
+
@property
|
|
350
|
+
@pulumi.getter(name="forNodes")
|
|
351
|
+
def for_nodes(self) -> Optional[Sequence['outputs.ForNodePatch']]:
|
|
352
|
+
"""
|
|
353
|
+
forNodes indicates the node(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries. This is an Alpha feature and is only used when the PreferSameTrafficDistribution feature gate is enabled.
|
|
354
|
+
"""
|
|
355
|
+
return pulumi.get(self, "for_nodes")
|
|
356
|
+
|
|
327
357
|
@property
|
|
328
358
|
@pulumi.getter(name="forZones")
|
|
329
359
|
def for_zones(self) -> Optional[Sequence['outputs.ForZonePatch']]:
|
|
330
360
|
"""
|
|
331
|
-
forZones indicates the zone(s) this endpoint should be consumed by
|
|
361
|
+
forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
|
|
332
362
|
"""
|
|
333
363
|
return pulumi.get(self, "for_zones")
|
|
334
364
|
|
|
@@ -370,7 +400,7 @@ class EndpointPatch(dict):
|
|
|
370
400
|
zone: Optional[builtins.str] = None):
|
|
371
401
|
"""
|
|
372
402
|
Endpoint represents a single logical "backend" implementing a service.
|
|
373
|
-
:param Sequence[builtins.str] addresses: addresses of this endpoint.
|
|
403
|
+
:param Sequence[builtins.str] addresses: addresses of this endpoint. For EndpointSlices of addressType "IPv4" or "IPv6", the values are IP addresses in canonical form. The syntax and semantics of other addressType values are not defined. This must contain at least one address but no more than 100. EndpointSlices generated by the EndpointSlice controller will always have exactly 1 address. No semantics are defined for additional addresses beyond the first, and kube-proxy does not look at them.
|
|
374
404
|
:param 'EndpointConditionsPatchArgs' conditions: conditions contains information about the current status of the endpoint.
|
|
375
405
|
:param Mapping[str, builtins.str] deprecated_topology: deprecatedTopology contains topology information part of the v1beta1 API. This field is deprecated, and will be removed when the v1beta1 API is removed (no sooner than kubernetes v1.24). While this field can hold values, it is not writable through the v1 API, and any attempts to write to it will be silently ignored. Topology information can be found in the zone and nodeName fields instead.
|
|
376
406
|
:param 'EndpointHintsPatchArgs' hints: hints contains information associated with how an endpoint should be consumed.
|
|
@@ -400,7 +430,7 @@ class EndpointPatch(dict):
|
|
|
400
430
|
@pulumi.getter
|
|
401
431
|
def addresses(self) -> Optional[Sequence[builtins.str]]:
|
|
402
432
|
"""
|
|
403
|
-
addresses of this endpoint.
|
|
433
|
+
addresses of this endpoint. For EndpointSlices of addressType "IPv4" or "IPv6", the values are IP addresses in canonical form. The syntax and semantics of other addressType values are not defined. This must contain at least one address but no more than 100. EndpointSlices generated by the EndpointSlice controller will always have exactly 1 address. No semantics are defined for additional addresses beyond the first, and kube-proxy does not look at them.
|
|
404
434
|
"""
|
|
405
435
|
return pulumi.get(self, "addresses")
|
|
406
436
|
|
|
@@ -501,7 +531,7 @@ class EndpointPort(dict):
|
|
|
501
531
|
|
|
502
532
|
* Other protocols should use implementation-defined prefixed names such as mycompany.com/my-custom-protocol.
|
|
503
533
|
:param builtins.str name: name represents the name of this port. All ports in an EndpointSlice must have a unique name. If the EndpointSlice is derived from a Kubernetes service, this corresponds to the Service.ports[].name. Name must either be an empty string or pass DNS_LABEL validation: * must be no more than 63 characters long. * must consist of lower case alphanumeric characters or '-'. * must start and end with an alphanumeric character. Default is empty string.
|
|
504
|
-
:param builtins.int port: port represents the port number of the endpoint. If
|
|
534
|
+
:param builtins.int port: port represents the port number of the endpoint. If the EndpointSlice is derived from a Kubernetes service, this must be set to the service's target port. EndpointSlices used for other purposes may have a nil port.
|
|
505
535
|
:param builtins.str protocol: protocol represents the IP protocol for this port. Must be UDP, TCP, or SCTP. Default is TCP.
|
|
506
536
|
"""
|
|
507
537
|
if app_protocol is not None:
|
|
@@ -542,7 +572,7 @@ class EndpointPort(dict):
|
|
|
542
572
|
@pulumi.getter
|
|
543
573
|
def port(self) -> Optional[builtins.int]:
|
|
544
574
|
"""
|
|
545
|
-
port represents the port number of the endpoint. If
|
|
575
|
+
port represents the port number of the endpoint. If the EndpointSlice is derived from a Kubernetes service, this must be set to the service's target port. EndpointSlices used for other purposes may have a nil port.
|
|
546
576
|
"""
|
|
547
577
|
return pulumi.get(self, "port")
|
|
548
578
|
|
|
@@ -595,7 +625,7 @@ class EndpointPortPatch(dict):
|
|
|
595
625
|
|
|
596
626
|
* Other protocols should use implementation-defined prefixed names such as mycompany.com/my-custom-protocol.
|
|
597
627
|
:param builtins.str name: name represents the name of this port. All ports in an EndpointSlice must have a unique name. If the EndpointSlice is derived from a Kubernetes service, this corresponds to the Service.ports[].name. Name must either be an empty string or pass DNS_LABEL validation: * must be no more than 63 characters long. * must consist of lower case alphanumeric characters or '-'. * must start and end with an alphanumeric character. Default is empty string.
|
|
598
|
-
:param builtins.int port: port represents the port number of the endpoint. If
|
|
628
|
+
:param builtins.int port: port represents the port number of the endpoint. If the EndpointSlice is derived from a Kubernetes service, this must be set to the service's target port. EndpointSlices used for other purposes may have a nil port.
|
|
599
629
|
:param builtins.str protocol: protocol represents the IP protocol for this port. Must be UDP, TCP, or SCTP. Default is TCP.
|
|
600
630
|
"""
|
|
601
631
|
if app_protocol is not None:
|
|
@@ -636,7 +666,7 @@ class EndpointPortPatch(dict):
|
|
|
636
666
|
@pulumi.getter
|
|
637
667
|
def port(self) -> Optional[builtins.int]:
|
|
638
668
|
"""
|
|
639
|
-
port represents the port number of the endpoint. If
|
|
669
|
+
port represents the port number of the endpoint. If the EndpointSlice is derived from a Kubernetes service, this must be set to the service's target port. EndpointSlices used for other purposes may have a nil port.
|
|
640
670
|
"""
|
|
641
671
|
return pulumi.get(self, "port")
|
|
642
672
|
|
|
@@ -652,7 +682,7 @@ class EndpointPortPatch(dict):
|
|
|
652
682
|
@pulumi.output_type
|
|
653
683
|
class EndpointSlice(dict):
|
|
654
684
|
"""
|
|
655
|
-
EndpointSlice represents a
|
|
685
|
+
EndpointSlice represents a set of service endpoints. Most EndpointSlices are created by the EndpointSlice controller to represent the Pods selected by Service objects. For a given service there may be multiple EndpointSlice objects which must be joined to produce the full set of endpoints; you can find all of the slices for a given service by listing EndpointSlices in the service's namespace whose `kubernetes.io/service-name` label contains the service's name.
|
|
656
686
|
"""
|
|
657
687
|
@staticmethod
|
|
658
688
|
def __key_warning(key: str):
|
|
@@ -681,13 +711,13 @@ class EndpointSlice(dict):
|
|
|
681
711
|
metadata: Optional['_meta.v1.outputs.ObjectMeta'] = None,
|
|
682
712
|
ports: Optional[Sequence['outputs.EndpointPort']] = None):
|
|
683
713
|
"""
|
|
684
|
-
EndpointSlice represents a
|
|
685
|
-
:param builtins.str address_type: addressType specifies the type of address carried by this EndpointSlice. All addresses in this slice must be the same type. This field is immutable after creation. The following address types are currently supported: * IPv4: Represents an IPv4 Address. * IPv6: Represents an IPv6 Address. * FQDN: Represents a Fully Qualified Domain Name.
|
|
714
|
+
EndpointSlice represents a set of service endpoints. Most EndpointSlices are created by the EndpointSlice controller to represent the Pods selected by Service objects. For a given service there may be multiple EndpointSlice objects which must be joined to produce the full set of endpoints; you can find all of the slices for a given service by listing EndpointSlices in the service's namespace whose `kubernetes.io/service-name` label contains the service's name.
|
|
715
|
+
:param builtins.str address_type: addressType specifies the type of address carried by this EndpointSlice. All addresses in this slice must be the same type. This field is immutable after creation. The following address types are currently supported: * IPv4: Represents an IPv4 Address. * IPv6: Represents an IPv6 Address. * FQDN: Represents a Fully Qualified Domain Name. (Deprecated) The EndpointSlice controller only generates, and kube-proxy only processes, slices of addressType "IPv4" and "IPv6". No semantics are defined for the "FQDN" type.
|
|
686
716
|
:param Sequence['EndpointArgs'] endpoints: endpoints is a list of unique endpoints in this slice. Each slice may include a maximum of 1000 endpoints.
|
|
687
717
|
:param builtins.str api_version: APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
688
718
|
:param builtins.str kind: Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
689
719
|
:param '_meta.v1.ObjectMetaArgs' metadata: Standard object's metadata.
|
|
690
|
-
:param Sequence['EndpointPortArgs'] ports: ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name.
|
|
720
|
+
:param Sequence['EndpointPortArgs'] ports: ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name. Each slice may include a maximum of 100 ports. Services always have at least 1 port, so EndpointSlices generated by the EndpointSlice controller will likewise always have at least 1 port. EndpointSlices used for other purposes may have an empty ports list.
|
|
691
721
|
"""
|
|
692
722
|
pulumi.set(__self__, "address_type", address_type)
|
|
693
723
|
pulumi.set(__self__, "endpoints", endpoints)
|
|
@@ -704,7 +734,7 @@ class EndpointSlice(dict):
|
|
|
704
734
|
@pulumi.getter(name="addressType")
|
|
705
735
|
def address_type(self) -> builtins.str:
|
|
706
736
|
"""
|
|
707
|
-
addressType specifies the type of address carried by this EndpointSlice. All addresses in this slice must be the same type. This field is immutable after creation. The following address types are currently supported: * IPv4: Represents an IPv4 Address. * IPv6: Represents an IPv6 Address. * FQDN: Represents a Fully Qualified Domain Name.
|
|
737
|
+
addressType specifies the type of address carried by this EndpointSlice. All addresses in this slice must be the same type. This field is immutable after creation. The following address types are currently supported: * IPv4: Represents an IPv4 Address. * IPv6: Represents an IPv6 Address. * FQDN: Represents a Fully Qualified Domain Name. (Deprecated) The EndpointSlice controller only generates, and kube-proxy only processes, slices of addressType "IPv4" and "IPv6". No semantics are defined for the "FQDN" type.
|
|
708
738
|
"""
|
|
709
739
|
return pulumi.get(self, "address_type")
|
|
710
740
|
|
|
@@ -744,11 +774,56 @@ class EndpointSlice(dict):
|
|
|
744
774
|
@pulumi.getter
|
|
745
775
|
def ports(self) -> Optional[Sequence['outputs.EndpointPort']]:
|
|
746
776
|
"""
|
|
747
|
-
ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name.
|
|
777
|
+
ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name. Each slice may include a maximum of 100 ports. Services always have at least 1 port, so EndpointSlices generated by the EndpointSlice controller will likewise always have at least 1 port. EndpointSlices used for other purposes may have an empty ports list.
|
|
748
778
|
"""
|
|
749
779
|
return pulumi.get(self, "ports")
|
|
750
780
|
|
|
751
781
|
|
|
782
|
+
@pulumi.output_type
|
|
783
|
+
class ForNode(dict):
|
|
784
|
+
"""
|
|
785
|
+
ForNode provides information about which nodes should consume this endpoint.
|
|
786
|
+
"""
|
|
787
|
+
def __init__(__self__, *,
|
|
788
|
+
name: builtins.str):
|
|
789
|
+
"""
|
|
790
|
+
ForNode provides information about which nodes should consume this endpoint.
|
|
791
|
+
:param builtins.str name: name represents the name of the node.
|
|
792
|
+
"""
|
|
793
|
+
pulumi.set(__self__, "name", name)
|
|
794
|
+
|
|
795
|
+
@property
|
|
796
|
+
@pulumi.getter
|
|
797
|
+
def name(self) -> builtins.str:
|
|
798
|
+
"""
|
|
799
|
+
name represents the name of the node.
|
|
800
|
+
"""
|
|
801
|
+
return pulumi.get(self, "name")
|
|
802
|
+
|
|
803
|
+
|
|
804
|
+
@pulumi.output_type
|
|
805
|
+
class ForNodePatch(dict):
|
|
806
|
+
"""
|
|
807
|
+
ForNode provides information about which nodes should consume this endpoint.
|
|
808
|
+
"""
|
|
809
|
+
def __init__(__self__, *,
|
|
810
|
+
name: Optional[builtins.str] = None):
|
|
811
|
+
"""
|
|
812
|
+
ForNode provides information about which nodes should consume this endpoint.
|
|
813
|
+
:param builtins.str name: name represents the name of the node.
|
|
814
|
+
"""
|
|
815
|
+
if name is not None:
|
|
816
|
+
pulumi.set(__self__, "name", name)
|
|
817
|
+
|
|
818
|
+
@property
|
|
819
|
+
@pulumi.getter
|
|
820
|
+
def name(self) -> Optional[builtins.str]:
|
|
821
|
+
"""
|
|
822
|
+
name represents the name of the node.
|
|
823
|
+
"""
|
|
824
|
+
return pulumi.get(self, "name")
|
|
825
|
+
|
|
826
|
+
|
|
752
827
|
@pulumi.output_type
|
|
753
828
|
class ForZone(dict):
|
|
754
829
|
"""
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumigen. ***
|
|
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 ... import meta as _meta
|
|
19
|
+
from ._inputs import *
|
|
20
|
+
|
|
21
|
+
__all__ = ['IPAddressInitArgs', 'IPAddress']
|
|
22
|
+
|
|
23
|
+
@pulumi.input_type
|
|
24
|
+
class IPAddressInitArgs:
|
|
25
|
+
def __init__(__self__, *,
|
|
26
|
+
api_version: Optional[pulumi.Input[builtins.str]] = None,
|
|
27
|
+
kind: Optional[pulumi.Input[builtins.str]] = None,
|
|
28
|
+
metadata: Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']] = None,
|
|
29
|
+
spec: Optional[pulumi.Input['IPAddressSpecArgs']] = None):
|
|
30
|
+
"""
|
|
31
|
+
The set of arguments for constructing a IPAddress resource.
|
|
32
|
+
:param pulumi.Input[builtins.str] api_version: APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
33
|
+
:param pulumi.Input[builtins.str] kind: Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
34
|
+
:param pulumi.Input['_meta.v1.ObjectMetaArgs'] metadata: Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
35
|
+
:param pulumi.Input['IPAddressSpecArgs'] spec: spec is the desired state of the IPAddress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
|
|
36
|
+
"""
|
|
37
|
+
if api_version is not None:
|
|
38
|
+
pulumi.set(__self__, "api_version", 'networking.k8s.io/v1')
|
|
39
|
+
if kind is not None:
|
|
40
|
+
pulumi.set(__self__, "kind", 'IPAddress')
|
|
41
|
+
if metadata is not None:
|
|
42
|
+
pulumi.set(__self__, "metadata", metadata)
|
|
43
|
+
if spec is not None:
|
|
44
|
+
pulumi.set(__self__, "spec", spec)
|
|
45
|
+
|
|
46
|
+
@property
|
|
47
|
+
@pulumi.getter(name="apiVersion")
|
|
48
|
+
def api_version(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
49
|
+
"""
|
|
50
|
+
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
51
|
+
"""
|
|
52
|
+
return pulumi.get(self, "api_version")
|
|
53
|
+
|
|
54
|
+
@api_version.setter
|
|
55
|
+
def api_version(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
56
|
+
pulumi.set(self, "api_version", value)
|
|
57
|
+
|
|
58
|
+
@property
|
|
59
|
+
@pulumi.getter
|
|
60
|
+
def kind(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
61
|
+
"""
|
|
62
|
+
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
63
|
+
"""
|
|
64
|
+
return pulumi.get(self, "kind")
|
|
65
|
+
|
|
66
|
+
@kind.setter
|
|
67
|
+
def kind(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
68
|
+
pulumi.set(self, "kind", value)
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
@pulumi.getter
|
|
72
|
+
def metadata(self) -> Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']]:
|
|
73
|
+
"""
|
|
74
|
+
Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
75
|
+
"""
|
|
76
|
+
return pulumi.get(self, "metadata")
|
|
77
|
+
|
|
78
|
+
@metadata.setter
|
|
79
|
+
def metadata(self, value: Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']]):
|
|
80
|
+
pulumi.set(self, "metadata", value)
|
|
81
|
+
|
|
82
|
+
@property
|
|
83
|
+
@pulumi.getter
|
|
84
|
+
def spec(self) -> Optional[pulumi.Input['IPAddressSpecArgs']]:
|
|
85
|
+
"""
|
|
86
|
+
spec is the desired state of the IPAddress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
|
|
87
|
+
"""
|
|
88
|
+
return pulumi.get(self, "spec")
|
|
89
|
+
|
|
90
|
+
@spec.setter
|
|
91
|
+
def spec(self, value: Optional[pulumi.Input['IPAddressSpecArgs']]):
|
|
92
|
+
pulumi.set(self, "spec", value)
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
class IPAddress(pulumi.CustomResource):
|
|
96
|
+
|
|
97
|
+
pulumi_type = "kubernetes:networking.k8s.io/v1:IPAddress"
|
|
98
|
+
|
|
99
|
+
@overload
|
|
100
|
+
def __init__(__self__,
|
|
101
|
+
resource_name: str,
|
|
102
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
103
|
+
api_version: Optional[pulumi.Input[builtins.str]] = None,
|
|
104
|
+
kind: Optional[pulumi.Input[builtins.str]] = None,
|
|
105
|
+
metadata: Optional[pulumi.Input[Union['_meta.v1.ObjectMetaArgs', '_meta.v1.ObjectMetaArgsDict']]] = None,
|
|
106
|
+
spec: Optional[pulumi.Input[Union['IPAddressSpecArgs', 'IPAddressSpecArgsDict']]] = None,
|
|
107
|
+
__props__=None):
|
|
108
|
+
"""
|
|
109
|
+
IPAddress represents a single IP of a single IP Family. The object is designed to be used by APIs that operate on IP addresses. The object is used by the Service core API for allocation of IP addresses. An IP address can be represented in different formats, to guarantee the uniqueness of the IP, the name of the object is the IP address in canonical format, four decimal digits separated by dots suppressing leading zeros for IPv4 and the representation defined by RFC 5952 for IPv6. Valid: 192.168.1.5 or 2001:db8::1 or 2001:db8:aaaa:bbbb:cccc:dddd:eeee:1 Invalid: 10.01.2.3 or 2001:db8:0:0:0::1
|
|
110
|
+
|
|
111
|
+
:param str resource_name: The name of the resource.
|
|
112
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
113
|
+
:param pulumi.Input[builtins.str] api_version: APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
114
|
+
:param pulumi.Input[builtins.str] kind: Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
115
|
+
:param pulumi.Input[Union['_meta.v1.ObjectMetaArgs', '_meta.v1.ObjectMetaArgsDict']] metadata: Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
116
|
+
:param pulumi.Input[Union['IPAddressSpecArgs', 'IPAddressSpecArgsDict']] spec: spec is the desired state of the IPAddress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
|
|
117
|
+
"""
|
|
118
|
+
...
|
|
119
|
+
@overload
|
|
120
|
+
def __init__(__self__,
|
|
121
|
+
resource_name: str,
|
|
122
|
+
args: Optional[IPAddressInitArgs] = None,
|
|
123
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
124
|
+
"""
|
|
125
|
+
IPAddress represents a single IP of a single IP Family. The object is designed to be used by APIs that operate on IP addresses. The object is used by the Service core API for allocation of IP addresses. An IP address can be represented in different formats, to guarantee the uniqueness of the IP, the name of the object is the IP address in canonical format, four decimal digits separated by dots suppressing leading zeros for IPv4 and the representation defined by RFC 5952 for IPv6. Valid: 192.168.1.5 or 2001:db8::1 or 2001:db8:aaaa:bbbb:cccc:dddd:eeee:1 Invalid: 10.01.2.3 or 2001:db8:0:0:0::1
|
|
126
|
+
|
|
127
|
+
:param str resource_name: The name of the resource.
|
|
128
|
+
:param IPAddressInitArgs args: The arguments to use to populate this resource's properties.
|
|
129
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
130
|
+
"""
|
|
131
|
+
...
|
|
132
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
133
|
+
resource_args, opts = _utilities.get_resource_args_opts(IPAddressInitArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
134
|
+
if resource_args is not None:
|
|
135
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
136
|
+
else:
|
|
137
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
138
|
+
|
|
139
|
+
def _internal_init(__self__,
|
|
140
|
+
resource_name: str,
|
|
141
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
142
|
+
api_version: Optional[pulumi.Input[builtins.str]] = None,
|
|
143
|
+
kind: Optional[pulumi.Input[builtins.str]] = None,
|
|
144
|
+
metadata: Optional[pulumi.Input[Union['_meta.v1.ObjectMetaArgs', '_meta.v1.ObjectMetaArgsDict']]] = None,
|
|
145
|
+
spec: Optional[pulumi.Input[Union['IPAddressSpecArgs', 'IPAddressSpecArgsDict']]] = None,
|
|
146
|
+
__props__=None):
|
|
147
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
148
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
149
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
150
|
+
if opts.id is None:
|
|
151
|
+
if __props__ is not None:
|
|
152
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
153
|
+
__props__ = IPAddressInitArgs.__new__(IPAddressInitArgs)
|
|
154
|
+
|
|
155
|
+
__props__.__dict__["api_version"] = 'networking.k8s.io/v1'
|
|
156
|
+
__props__.__dict__["kind"] = 'IPAddress'
|
|
157
|
+
__props__.__dict__["metadata"] = metadata
|
|
158
|
+
__props__.__dict__["spec"] = spec
|
|
159
|
+
alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="kubernetes:networking.k8s.io/v1alpha1:IPAddress"), pulumi.Alias(type_="kubernetes:networking.k8s.io/v1beta1:IPAddress")])
|
|
160
|
+
opts = pulumi.ResourceOptions.merge(opts, alias_opts)
|
|
161
|
+
super(IPAddress, __self__).__init__(
|
|
162
|
+
'kubernetes:networking.k8s.io/v1:IPAddress',
|
|
163
|
+
resource_name,
|
|
164
|
+
__props__,
|
|
165
|
+
opts)
|
|
166
|
+
|
|
167
|
+
@staticmethod
|
|
168
|
+
def get(resource_name: str,
|
|
169
|
+
id: pulumi.Input[str],
|
|
170
|
+
opts: Optional[pulumi.ResourceOptions] = None) -> 'IPAddress':
|
|
171
|
+
"""
|
|
172
|
+
Get an existing IPAddress resource's state with the given name, id, and optional extra
|
|
173
|
+
properties used to qualify the lookup.
|
|
174
|
+
|
|
175
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
176
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
177
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
178
|
+
"""
|
|
179
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
180
|
+
|
|
181
|
+
__props__ = IPAddressInitArgs.__new__(IPAddressInitArgs)
|
|
182
|
+
|
|
183
|
+
__props__.__dict__["api_version"] = None
|
|
184
|
+
__props__.__dict__["kind"] = None
|
|
185
|
+
__props__.__dict__["metadata"] = None
|
|
186
|
+
__props__.__dict__["spec"] = None
|
|
187
|
+
return IPAddress(resource_name, opts=opts, __props__=__props__)
|
|
188
|
+
|
|
189
|
+
@property
|
|
190
|
+
@pulumi.getter(name="apiVersion")
|
|
191
|
+
def api_version(self) -> pulumi.Output[builtins.str]:
|
|
192
|
+
"""
|
|
193
|
+
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
194
|
+
"""
|
|
195
|
+
return pulumi.get(self, "api_version")
|
|
196
|
+
|
|
197
|
+
@property
|
|
198
|
+
@pulumi.getter
|
|
199
|
+
def kind(self) -> pulumi.Output[builtins.str]:
|
|
200
|
+
"""
|
|
201
|
+
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
202
|
+
"""
|
|
203
|
+
return pulumi.get(self, "kind")
|
|
204
|
+
|
|
205
|
+
@property
|
|
206
|
+
@pulumi.getter
|
|
207
|
+
def metadata(self) -> pulumi.Output['_meta.v1.outputs.ObjectMeta']:
|
|
208
|
+
"""
|
|
209
|
+
Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
210
|
+
"""
|
|
211
|
+
return pulumi.get(self, "metadata")
|
|
212
|
+
|
|
213
|
+
@property
|
|
214
|
+
@pulumi.getter
|
|
215
|
+
def spec(self) -> pulumi.Output['outputs.IPAddressSpec']:
|
|
216
|
+
"""
|
|
217
|
+
spec is the desired state of the IPAddress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
|
|
218
|
+
"""
|
|
219
|
+
return pulumi.get(self, "spec")
|
|
220
|
+
|