pulumi-kubernetes 4.23.0a1746131759__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.

Files changed (116) hide show
  1. pulumi_kubernetes/__init__.py +36 -2
  2. pulumi_kubernetes/admissionregistration/v1alpha1/_inputs.py +30 -30
  3. pulumi_kubernetes/admissionregistration/v1alpha1/outputs.py +20 -20
  4. pulumi_kubernetes/apps/v1/ReplicaSetList.py +4 -4
  5. pulumi_kubernetes/apps/v1/_inputs.py +109 -56
  6. pulumi_kubernetes/apps/v1/outputs.py +129 -56
  7. pulumi_kubernetes/autoscaling/v2/_inputs.py +92 -12
  8. pulumi_kubernetes/autoscaling/v2/outputs.py +66 -10
  9. pulumi_kubernetes/batch/v1/_inputs.py +12 -42
  10. pulumi_kubernetes/batch/v1/outputs.py +8 -32
  11. pulumi_kubernetes/certificates/v1alpha1/ClusterTrustBundle.py +2 -0
  12. pulumi_kubernetes/certificates/v1alpha1/ClusterTrustBundlePatch.py +2 -0
  13. pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundle.py +229 -0
  14. pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundleList.py +219 -0
  15. pulumi_kubernetes/certificates/v1beta1/ClusterTrustBundlePatch.py +240 -0
  16. pulumi_kubernetes/certificates/v1beta1/__init__.py +3 -0
  17. pulumi_kubernetes/certificates/v1beta1/_inputs.py +292 -0
  18. pulumi_kubernetes/certificates/v1beta1/outputs.py +241 -0
  19. pulumi_kubernetes/coordination/v1alpha1/LeaseCandidate.py +1 -1
  20. pulumi_kubernetes/coordination/v1alpha1/LeaseCandidatePatch.py +1 -1
  21. pulumi_kubernetes/coordination/v1alpha2/LeaseCandidate.py +1 -1
  22. pulumi_kubernetes/coordination/v1alpha2/LeaseCandidatePatch.py +1 -1
  23. pulumi_kubernetes/coordination/v1alpha2/_inputs.py +6 -6
  24. pulumi_kubernetes/coordination/v1alpha2/outputs.py +4 -4
  25. pulumi_kubernetes/coordination/v1beta1/LeaseCandidate.py +220 -0
  26. pulumi_kubernetes/coordination/v1beta1/LeaseCandidateList.py +219 -0
  27. pulumi_kubernetes/coordination/v1beta1/LeaseCandidatePatch.py +232 -0
  28. pulumi_kubernetes/coordination/v1beta1/__init__.py +3 -0
  29. pulumi_kubernetes/coordination/v1beta1/_inputs.py +371 -0
  30. pulumi_kubernetes/coordination/v1beta1/outputs.py +292 -0
  31. pulumi_kubernetes/core/v1/Endpoints.py +8 -0
  32. pulumi_kubernetes/core/v1/EndpointsList.py +2 -2
  33. pulumi_kubernetes/core/v1/EndpointsPatch.py +8 -0
  34. pulumi_kubernetes/core/v1/_inputs.py +240 -66
  35. pulumi_kubernetes/core/v1/outputs.py +251 -51
  36. pulumi_kubernetes/discovery/v1/EndpointSlice.py +10 -10
  37. pulumi_kubernetes/discovery/v1/EndpointSlicePatch.py +10 -10
  38. pulumi_kubernetes/discovery/v1/_inputs.py +159 -44
  39. pulumi_kubernetes/discovery/v1/outputs.py +107 -32
  40. pulumi_kubernetes/networking/v1/IPAddress.py +220 -0
  41. pulumi_kubernetes/networking/v1/IPAddressList.py +219 -0
  42. pulumi_kubernetes/networking/v1/IPAddressPatch.py +232 -0
  43. pulumi_kubernetes/networking/v1/ServiceCIDR.py +230 -0
  44. pulumi_kubernetes/networking/v1/ServiceCIDRList.py +219 -0
  45. pulumi_kubernetes/networking/v1/ServiceCIDRPatch.py +242 -0
  46. pulumi_kubernetes/networking/v1/__init__.py +6 -0
  47. pulumi_kubernetes/networking/v1/_inputs.py +599 -0
  48. pulumi_kubernetes/networking/v1/outputs.py +461 -0
  49. pulumi_kubernetes/networking/v1alpha1/IPAddress.py +1 -1
  50. pulumi_kubernetes/networking/v1alpha1/IPAddressPatch.py +1 -1
  51. pulumi_kubernetes/networking/v1alpha1/ServiceCIDR.py +1 -1
  52. pulumi_kubernetes/networking/v1alpha1/ServiceCIDRPatch.py +1 -1
  53. pulumi_kubernetes/networking/v1beta1/IPAddress.py +1 -1
  54. pulumi_kubernetes/networking/v1beta1/IPAddressPatch.py +1 -1
  55. pulumi_kubernetes/networking/v1beta1/ServiceCIDR.py +1 -1
  56. pulumi_kubernetes/networking/v1beta1/ServiceCIDRPatch.py +1 -1
  57. pulumi_kubernetes/policy/v1/_inputs.py +0 -12
  58. pulumi_kubernetes/policy/v1/outputs.py +0 -8
  59. pulumi_kubernetes/pulumi-plugin.json +1 -1
  60. pulumi_kubernetes/resource/__init__.py +3 -0
  61. pulumi_kubernetes/resource/v1alpha1/ResourceClaim.py +1 -1
  62. pulumi_kubernetes/resource/v1alpha1/ResourceClaimPatch.py +1 -1
  63. pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplate.py +1 -1
  64. pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplatePatch.py +1 -1
  65. pulumi_kubernetes/resource/v1alpha2/ResourceClaim.py +1 -1
  66. pulumi_kubernetes/resource/v1alpha2/ResourceClaimPatch.py +1 -1
  67. pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplate.py +1 -1
  68. pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplatePatch.py +1 -1
  69. pulumi_kubernetes/resource/v1alpha2/ResourceSlice.py +1 -1
  70. pulumi_kubernetes/resource/v1alpha2/ResourceSlicePatch.py +1 -1
  71. pulumi_kubernetes/resource/v1alpha3/DeviceClass.py +1 -1
  72. pulumi_kubernetes/resource/v1alpha3/DeviceClassPatch.py +1 -1
  73. pulumi_kubernetes/resource/v1alpha3/DeviceTaintRule.py +227 -0
  74. pulumi_kubernetes/resource/v1alpha3/DeviceTaintRuleList.py +219 -0
  75. pulumi_kubernetes/resource/v1alpha3/DeviceTaintRulePatch.py +238 -0
  76. pulumi_kubernetes/resource/v1alpha3/ResourceClaim.py +1 -1
  77. pulumi_kubernetes/resource/v1alpha3/ResourceClaimPatch.py +1 -1
  78. pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplate.py +1 -1
  79. pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplatePatch.py +1 -1
  80. pulumi_kubernetes/resource/v1alpha3/ResourceSlice.py +1 -1
  81. pulumi_kubernetes/resource/v1alpha3/ResourceSlicePatch.py +1 -1
  82. pulumi_kubernetes/resource/v1alpha3/__init__.py +3 -0
  83. pulumi_kubernetes/resource/v1alpha3/_inputs.py +2559 -213
  84. pulumi_kubernetes/resource/v1alpha3/outputs.py +2037 -256
  85. pulumi_kubernetes/resource/v1beta1/DeviceClass.py +1 -1
  86. pulumi_kubernetes/resource/v1beta1/DeviceClassPatch.py +1 -1
  87. pulumi_kubernetes/resource/v1beta1/ResourceClaim.py +1 -1
  88. pulumi_kubernetes/resource/v1beta1/ResourceClaimPatch.py +1 -1
  89. pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplate.py +1 -1
  90. pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplatePatch.py +1 -1
  91. pulumi_kubernetes/resource/v1beta1/ResourceSlice.py +1 -1
  92. pulumi_kubernetes/resource/v1beta1/ResourceSlicePatch.py +1 -1
  93. pulumi_kubernetes/resource/v1beta1/_inputs.py +2044 -176
  94. pulumi_kubernetes/resource/v1beta1/outputs.py +1536 -134
  95. pulumi_kubernetes/resource/v1beta2/DeviceClass.py +241 -0
  96. pulumi_kubernetes/resource/v1beta2/DeviceClassList.py +219 -0
  97. pulumi_kubernetes/resource/v1beta2/DeviceClassPatch.py +252 -0
  98. pulumi_kubernetes/resource/v1beta2/ResourceClaim.py +236 -0
  99. pulumi_kubernetes/resource/v1beta2/ResourceClaimList.py +220 -0
  100. pulumi_kubernetes/resource/v1beta2/ResourceClaimPatch.py +247 -0
  101. pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplate.py +233 -0
  102. pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplateList.py +219 -0
  103. pulumi_kubernetes/resource/v1beta2/ResourceClaimTemplatePatch.py +244 -0
  104. pulumi_kubernetes/resource/v1beta2/ResourceSlice.py +250 -0
  105. pulumi_kubernetes/resource/v1beta2/ResourceSliceList.py +220 -0
  106. pulumi_kubernetes/resource/v1beta2/ResourceSlicePatch.py +261 -0
  107. pulumi_kubernetes/resource/v1beta2/__init__.py +22 -0
  108. pulumi_kubernetes/resource/v1beta2/_inputs.py +5681 -0
  109. pulumi_kubernetes/resource/v1beta2/outputs.py +4726 -0
  110. pulumi_kubernetes/storage/v1/_inputs.py +90 -0
  111. pulumi_kubernetes/storage/v1/outputs.py +110 -0
  112. pulumi_kubernetes/yaml/yaml.py +108 -0
  113. {pulumi_kubernetes-4.23.0a1746131759.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/METADATA +1 -1
  114. {pulumi_kubernetes-4.23.0a1746131759.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/RECORD +116 -86
  115. {pulumi_kubernetes-4.23.0a1746131759.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/WHEEL +0 -0
  116. {pulumi_kubernetes-4.23.0a1746131759.dist-info → pulumi_kubernetes-4.23.0a1746138483.dist-info}/top_level.txt +0 -0
@@ -36,6 +36,10 @@ __all__ = [
36
36
  'EndpointSliceArgsDict',
37
37
  'EndpointArgs',
38
38
  'EndpointArgsDict',
39
+ 'ForNodePatchArgs',
40
+ 'ForNodePatchArgsDict',
41
+ 'ForNodeArgs',
42
+ 'ForNodeArgsDict',
39
43
  'ForZonePatchArgs',
40
44
  'ForZonePatchArgsDict',
41
45
  'ForZoneArgs',
@@ -51,15 +55,15 @@ if not MYPY:
51
55
  """
52
56
  ready: NotRequired[pulumi.Input[builtins.bool]]
53
57
  """
54
- ready indicates that this endpoint is prepared to receive traffic, according to whatever system is managing the endpoint. A nil value indicates an unknown state. In most cases consumers should interpret this unknown state as ready. For compatibility reasons, ready should never be "true" for terminating endpoints, except when the normal readiness behavior is being explicitly overridden, for example when the associated Service has set the publishNotReadyAddresses flag.
58
+ 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.
55
59
  """
56
60
  serving: NotRequired[pulumi.Input[builtins.bool]]
57
61
  """
58
- serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition.
62
+ 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".
59
63
  """
60
64
  terminating: NotRequired[pulumi.Input[builtins.bool]]
61
65
  """
62
- terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating.
66
+ terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
63
67
  """
64
68
  elif False:
65
69
  EndpointConditionsPatchArgsDict: TypeAlias = Mapping[str, Any]
@@ -72,9 +76,9 @@ class EndpointConditionsPatchArgs:
72
76
  terminating: Optional[pulumi.Input[builtins.bool]] = None):
73
77
  """
74
78
  EndpointConditions represents the current condition of an endpoint.
75
- :param pulumi.Input[builtins.bool] ready: ready indicates that this endpoint is prepared to receive traffic, according to whatever system is managing the endpoint. A nil value indicates an unknown state. In most cases consumers should interpret this unknown state as ready. For compatibility reasons, ready should never be "true" for terminating endpoints, except when the normal readiness behavior is being explicitly overridden, for example when the associated Service has set the publishNotReadyAddresses flag.
76
- :param pulumi.Input[builtins.bool] serving: serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition.
77
- :param pulumi.Input[builtins.bool] terminating: terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating.
79
+ :param pulumi.Input[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.
80
+ :param pulumi.Input[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".
81
+ :param pulumi.Input[builtins.bool] terminating: terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
78
82
  """
79
83
  if ready is not None:
80
84
  pulumi.set(__self__, "ready", ready)
@@ -87,7 +91,7 @@ class EndpointConditionsPatchArgs:
87
91
  @pulumi.getter
88
92
  def ready(self) -> Optional[pulumi.Input[builtins.bool]]:
89
93
  """
90
- ready indicates that this endpoint is prepared to receive traffic, according to whatever system is managing the endpoint. A nil value indicates an unknown state. In most cases consumers should interpret this unknown state as ready. For compatibility reasons, ready should never be "true" for terminating endpoints, except when the normal readiness behavior is being explicitly overridden, for example when the associated Service has set the publishNotReadyAddresses flag.
94
+ 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.
91
95
  """
92
96
  return pulumi.get(self, "ready")
93
97
 
@@ -99,7 +103,7 @@ class EndpointConditionsPatchArgs:
99
103
  @pulumi.getter
100
104
  def serving(self) -> Optional[pulumi.Input[builtins.bool]]:
101
105
  """
102
- serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition.
106
+ 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".
103
107
  """
104
108
  return pulumi.get(self, "serving")
105
109
 
@@ -111,7 +115,7 @@ class EndpointConditionsPatchArgs:
111
115
  @pulumi.getter
112
116
  def terminating(self) -> Optional[pulumi.Input[builtins.bool]]:
113
117
  """
114
- terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating.
118
+ terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
115
119
  """
116
120
  return pulumi.get(self, "terminating")
117
121
 
@@ -127,15 +131,15 @@ if not MYPY:
127
131
  """
128
132
  ready: NotRequired[pulumi.Input[builtins.bool]]
129
133
  """
130
- ready indicates that this endpoint is prepared to receive traffic, according to whatever system is managing the endpoint. A nil value indicates an unknown state. In most cases consumers should interpret this unknown state as ready. For compatibility reasons, ready should never be "true" for terminating endpoints, except when the normal readiness behavior is being explicitly overridden, for example when the associated Service has set the publishNotReadyAddresses flag.
134
+ 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.
131
135
  """
132
136
  serving: NotRequired[pulumi.Input[builtins.bool]]
133
137
  """
134
- serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition.
138
+ 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".
135
139
  """
136
140
  terminating: NotRequired[pulumi.Input[builtins.bool]]
137
141
  """
138
- terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating.
142
+ terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
139
143
  """
140
144
  elif False:
141
145
  EndpointConditionsArgsDict: TypeAlias = Mapping[str, Any]
@@ -148,9 +152,9 @@ class EndpointConditionsArgs:
148
152
  terminating: Optional[pulumi.Input[builtins.bool]] = None):
149
153
  """
150
154
  EndpointConditions represents the current condition of an endpoint.
151
- :param pulumi.Input[builtins.bool] ready: ready indicates that this endpoint is prepared to receive traffic, according to whatever system is managing the endpoint. A nil value indicates an unknown state. In most cases consumers should interpret this unknown state as ready. For compatibility reasons, ready should never be "true" for terminating endpoints, except when the normal readiness behavior is being explicitly overridden, for example when the associated Service has set the publishNotReadyAddresses flag.
152
- :param pulumi.Input[builtins.bool] serving: serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition.
153
- :param pulumi.Input[builtins.bool] terminating: terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating.
155
+ :param pulumi.Input[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.
156
+ :param pulumi.Input[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".
157
+ :param pulumi.Input[builtins.bool] terminating: terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
154
158
  """
155
159
  if ready is not None:
156
160
  pulumi.set(__self__, "ready", ready)
@@ -163,7 +167,7 @@ class EndpointConditionsArgs:
163
167
  @pulumi.getter
164
168
  def ready(self) -> Optional[pulumi.Input[builtins.bool]]:
165
169
  """
166
- ready indicates that this endpoint is prepared to receive traffic, according to whatever system is managing the endpoint. A nil value indicates an unknown state. In most cases consumers should interpret this unknown state as ready. For compatibility reasons, ready should never be "true" for terminating endpoints, except when the normal readiness behavior is being explicitly overridden, for example when the associated Service has set the publishNotReadyAddresses flag.
170
+ 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.
167
171
  """
168
172
  return pulumi.get(self, "ready")
169
173
 
@@ -175,7 +179,7 @@ class EndpointConditionsArgs:
175
179
  @pulumi.getter
176
180
  def serving(self) -> Optional[pulumi.Input[builtins.bool]]:
177
181
  """
178
- serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition.
182
+ 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".
179
183
  """
180
184
  return pulumi.get(self, "serving")
181
185
 
@@ -187,7 +191,7 @@ class EndpointConditionsArgs:
187
191
  @pulumi.getter
188
192
  def terminating(self) -> Optional[pulumi.Input[builtins.bool]]:
189
193
  """
190
- terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating.
194
+ terminating indicates that this endpoint is terminating. A nil value should be interpreted as "false".
191
195
  """
192
196
  return pulumi.get(self, "terminating")
193
197
 
@@ -201,9 +205,13 @@ if not MYPY:
201
205
  """
202
206
  EndpointHints provides hints describing how an endpoint should be consumed.
203
207
  """
208
+ for_nodes: NotRequired[pulumi.Input[Sequence[pulumi.Input['ForNodePatchArgsDict']]]]
209
+ """
210
+ 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.
211
+ """
204
212
  for_zones: NotRequired[pulumi.Input[Sequence[pulumi.Input['ForZonePatchArgsDict']]]]
205
213
  """
206
- forZones indicates the zone(s) this endpoint should be consumed by to enable topology aware routing.
214
+ forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
207
215
  """
208
216
  elif False:
209
217
  EndpointHintsPatchArgsDict: TypeAlias = Mapping[str, Any]
@@ -211,19 +219,35 @@ elif False:
211
219
  @pulumi.input_type
212
220
  class EndpointHintsPatchArgs:
213
221
  def __init__(__self__, *,
222
+ for_nodes: Optional[pulumi.Input[Sequence[pulumi.Input['ForNodePatchArgs']]]] = None,
214
223
  for_zones: Optional[pulumi.Input[Sequence[pulumi.Input['ForZonePatchArgs']]]] = None):
215
224
  """
216
225
  EndpointHints provides hints describing how an endpoint should be consumed.
217
- :param pulumi.Input[Sequence[pulumi.Input['ForZonePatchArgs']]] for_zones: forZones indicates the zone(s) this endpoint should be consumed by to enable topology aware routing.
226
+ :param pulumi.Input[Sequence[pulumi.Input['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.
227
+ :param pulumi.Input[Sequence[pulumi.Input['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.
218
228
  """
229
+ if for_nodes is not None:
230
+ pulumi.set(__self__, "for_nodes", for_nodes)
219
231
  if for_zones is not None:
220
232
  pulumi.set(__self__, "for_zones", for_zones)
221
233
 
234
+ @property
235
+ @pulumi.getter(name="forNodes")
236
+ def for_nodes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ForNodePatchArgs']]]]:
237
+ """
238
+ 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.
239
+ """
240
+ return pulumi.get(self, "for_nodes")
241
+
242
+ @for_nodes.setter
243
+ def for_nodes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ForNodePatchArgs']]]]):
244
+ pulumi.set(self, "for_nodes", value)
245
+
222
246
  @property
223
247
  @pulumi.getter(name="forZones")
224
248
  def for_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ForZonePatchArgs']]]]:
225
249
  """
226
- forZones indicates the zone(s) this endpoint should be consumed by to enable topology aware routing.
250
+ forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
227
251
  """
228
252
  return pulumi.get(self, "for_zones")
229
253
 
@@ -237,9 +261,13 @@ if not MYPY:
237
261
  """
238
262
  EndpointHints provides hints describing how an endpoint should be consumed.
239
263
  """
264
+ for_nodes: NotRequired[pulumi.Input[Sequence[pulumi.Input['ForNodeArgsDict']]]]
265
+ """
266
+ 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.
267
+ """
240
268
  for_zones: NotRequired[pulumi.Input[Sequence[pulumi.Input['ForZoneArgsDict']]]]
241
269
  """
242
- forZones indicates the zone(s) this endpoint should be consumed by to enable topology aware routing.
270
+ forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
243
271
  """
244
272
  elif False:
245
273
  EndpointHintsArgsDict: TypeAlias = Mapping[str, Any]
@@ -247,19 +275,35 @@ elif False:
247
275
  @pulumi.input_type
248
276
  class EndpointHintsArgs:
249
277
  def __init__(__self__, *,
278
+ for_nodes: Optional[pulumi.Input[Sequence[pulumi.Input['ForNodeArgs']]]] = None,
250
279
  for_zones: Optional[pulumi.Input[Sequence[pulumi.Input['ForZoneArgs']]]] = None):
251
280
  """
252
281
  EndpointHints provides hints describing how an endpoint should be consumed.
253
- :param pulumi.Input[Sequence[pulumi.Input['ForZoneArgs']]] for_zones: forZones indicates the zone(s) this endpoint should be consumed by to enable topology aware routing.
282
+ :param pulumi.Input[Sequence[pulumi.Input['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.
283
+ :param pulumi.Input[Sequence[pulumi.Input['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.
254
284
  """
285
+ if for_nodes is not None:
286
+ pulumi.set(__self__, "for_nodes", for_nodes)
255
287
  if for_zones is not None:
256
288
  pulumi.set(__self__, "for_zones", for_zones)
257
289
 
290
+ @property
291
+ @pulumi.getter(name="forNodes")
292
+ def for_nodes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ForNodeArgs']]]]:
293
+ """
294
+ 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.
295
+ """
296
+ return pulumi.get(self, "for_nodes")
297
+
298
+ @for_nodes.setter
299
+ def for_nodes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ForNodeArgs']]]]):
300
+ pulumi.set(self, "for_nodes", value)
301
+
258
302
  @property
259
303
  @pulumi.getter(name="forZones")
260
304
  def for_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ForZoneArgs']]]]:
261
305
  """
262
- forZones indicates the zone(s) this endpoint should be consumed by to enable topology aware routing.
306
+ forZones indicates the zone(s) this endpoint should be consumed by when using topology aware routing. May contain a maximum of 8 entries.
263
307
  """
264
308
  return pulumi.get(self, "for_zones")
265
309
 
@@ -275,7 +319,7 @@ if not MYPY:
275
319
  """
276
320
  addresses: NotRequired[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]
277
321
  """
278
- addresses of this endpoint. The contents of this field are interpreted according to the corresponding EndpointSlice addressType field. Consumers must handle different types of addresses in the context of their own capabilities. This must contain at least one address but no more than 100. These are all assumed to be fungible and clients may choose to only use the first element. Refer to: https://issue.k8s.io/106267
322
+ 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.
279
323
  """
280
324
  conditions: NotRequired[pulumi.Input['EndpointConditionsPatchArgsDict']]
281
325
  """
@@ -321,7 +365,7 @@ class EndpointPatchArgs:
321
365
  zone: Optional[pulumi.Input[builtins.str]] = None):
322
366
  """
323
367
  Endpoint represents a single logical "backend" implementing a service.
324
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] addresses: addresses of this endpoint. The contents of this field are interpreted according to the corresponding EndpointSlice addressType field. Consumers must handle different types of addresses in the context of their own capabilities. This must contain at least one address but no more than 100. These are all assumed to be fungible and clients may choose to only use the first element. Refer to: https://issue.k8s.io/106267
368
+ :param pulumi.Input[Sequence[pulumi.Input[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.
325
369
  :param pulumi.Input['EndpointConditionsPatchArgs'] conditions: conditions contains information about the current status of the endpoint.
326
370
  :param pulumi.Input[Mapping[str, pulumi.Input[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.
327
371
  :param pulumi.Input['EndpointHintsPatchArgs'] hints: hints contains information associated with how an endpoint should be consumed.
@@ -351,7 +395,7 @@ class EndpointPatchArgs:
351
395
  @pulumi.getter
352
396
  def addresses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
353
397
  """
354
- addresses of this endpoint. The contents of this field are interpreted according to the corresponding EndpointSlice addressType field. Consumers must handle different types of addresses in the context of their own capabilities. This must contain at least one address but no more than 100. These are all assumed to be fungible and clients may choose to only use the first element. Refer to: https://issue.k8s.io/106267
398
+ 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.
355
399
  """
356
400
  return pulumi.get(self, "addresses")
357
401
 
@@ -468,7 +512,7 @@ if not MYPY:
468
512
  """
469
513
  port: NotRequired[pulumi.Input[builtins.int]]
470
514
  """
471
- port represents the port number of the endpoint. If this is not specified, ports are not restricted and must be interpreted in the context of the specific consumer.
515
+ 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.
472
516
  """
473
517
  protocol: NotRequired[pulumi.Input[builtins.str]]
474
518
  """
@@ -497,7 +541,7 @@ class EndpointPortPatchArgs:
497
541
 
498
542
  * Other protocols should use implementation-defined prefixed names such as mycompany.com/my-custom-protocol.
499
543
  :param pulumi.Input[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.
500
- :param pulumi.Input[builtins.int] port: port represents the port number of the endpoint. If this is not specified, ports are not restricted and must be interpreted in the context of the specific consumer.
544
+ :param pulumi.Input[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.
501
545
  :param pulumi.Input[builtins.str] protocol: protocol represents the IP protocol for this port. Must be UDP, TCP, or SCTP. Default is TCP.
502
546
  """
503
547
  if app_protocol is not None:
@@ -546,7 +590,7 @@ class EndpointPortPatchArgs:
546
590
  @pulumi.getter
547
591
  def port(self) -> Optional[pulumi.Input[builtins.int]]:
548
592
  """
549
- port represents the port number of the endpoint. If this is not specified, ports are not restricted and must be interpreted in the context of the specific consumer.
593
+ 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.
550
594
  """
551
595
  return pulumi.get(self, "port")
552
596
 
@@ -591,7 +635,7 @@ if not MYPY:
591
635
  """
592
636
  port: NotRequired[pulumi.Input[builtins.int]]
593
637
  """
594
- port represents the port number of the endpoint. If this is not specified, ports are not restricted and must be interpreted in the context of the specific consumer.
638
+ 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.
595
639
  """
596
640
  protocol: NotRequired[pulumi.Input[builtins.str]]
597
641
  """
@@ -620,7 +664,7 @@ class EndpointPortArgs:
620
664
 
621
665
  * Other protocols should use implementation-defined prefixed names such as mycompany.com/my-custom-protocol.
622
666
  :param pulumi.Input[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.
623
- :param pulumi.Input[builtins.int] port: port represents the port number of the endpoint. If this is not specified, ports are not restricted and must be interpreted in the context of the specific consumer.
667
+ :param pulumi.Input[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.
624
668
  :param pulumi.Input[builtins.str] protocol: protocol represents the IP protocol for this port. Must be UDP, TCP, or SCTP. Default is TCP.
625
669
  """
626
670
  if app_protocol is not None:
@@ -669,7 +713,7 @@ class EndpointPortArgs:
669
713
  @pulumi.getter
670
714
  def port(self) -> Optional[pulumi.Input[builtins.int]]:
671
715
  """
672
- port represents the port number of the endpoint. If this is not specified, ports are not restricted and must be interpreted in the context of the specific consumer.
716
+ 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.
673
717
  """
674
718
  return pulumi.get(self, "port")
675
719
 
@@ -693,11 +737,11 @@ class EndpointPortArgs:
693
737
  if not MYPY:
694
738
  class EndpointSliceArgsDict(TypedDict):
695
739
  """
696
- EndpointSlice represents a subset of the endpoints that implement a service. For a given service there may be multiple EndpointSlice objects, selected by labels, which must be joined to produce the full set of endpoints.
740
+ 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.
697
741
  """
698
742
  address_type: pulumi.Input[builtins.str]
699
743
  """
700
- 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.
744
+ 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.
701
745
  """
702
746
  endpoints: pulumi.Input[Sequence[pulumi.Input['EndpointArgsDict']]]
703
747
  """
@@ -717,7 +761,7 @@ if not MYPY:
717
761
  """
718
762
  ports: NotRequired[pulumi.Input[Sequence[pulumi.Input['EndpointPortArgsDict']]]]
719
763
  """
720
- ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name. When ports is empty, it indicates that there are no defined ports. When a port is defined with a nil port value, it indicates "all ports". Each slice may include a maximum of 100 ports.
764
+ 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.
721
765
  """
722
766
  elif False:
723
767
  EndpointSliceArgsDict: TypeAlias = Mapping[str, Any]
@@ -732,13 +776,13 @@ class EndpointSliceArgs:
732
776
  metadata: Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']] = None,
733
777
  ports: Optional[pulumi.Input[Sequence[pulumi.Input['EndpointPortArgs']]]] = None):
734
778
  """
735
- EndpointSlice represents a subset of the endpoints that implement a service. For a given service there may be multiple EndpointSlice objects, selected by labels, which must be joined to produce the full set of endpoints.
736
- :param pulumi.Input[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.
779
+ 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.
780
+ :param pulumi.Input[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.
737
781
  :param pulumi.Input[Sequence[pulumi.Input['EndpointArgs']]] endpoints: endpoints is a list of unique endpoints in this slice. Each slice may include a maximum of 1000 endpoints.
738
782
  :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
739
783
  :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
740
784
  :param pulumi.Input['_meta.v1.ObjectMetaArgs'] metadata: Standard object's metadata.
741
- :param pulumi.Input[Sequence[pulumi.Input['EndpointPortArgs']]] ports: ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name. When ports is empty, it indicates that there are no defined ports. When a port is defined with a nil port value, it indicates "all ports". Each slice may include a maximum of 100 ports.
785
+ :param pulumi.Input[Sequence[pulumi.Input['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.
742
786
  """
743
787
  pulumi.set(__self__, "address_type", address_type)
744
788
  pulumi.set(__self__, "endpoints", endpoints)
@@ -755,7 +799,7 @@ class EndpointSliceArgs:
755
799
  @pulumi.getter(name="addressType")
756
800
  def address_type(self) -> pulumi.Input[builtins.str]:
757
801
  """
758
- 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.
802
+ 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.
759
803
  """
760
804
  return pulumi.get(self, "address_type")
761
805
 
@@ -815,7 +859,7 @@ class EndpointSliceArgs:
815
859
  @pulumi.getter
816
860
  def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['EndpointPortArgs']]]]:
817
861
  """
818
- ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name. When ports is empty, it indicates that there are no defined ports. When a port is defined with a nil port value, it indicates "all ports". Each slice may include a maximum of 100 ports.
862
+ 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.
819
863
  """
820
864
  return pulumi.get(self, "ports")
821
865
 
@@ -831,7 +875,7 @@ if not MYPY:
831
875
  """
832
876
  addresses: pulumi.Input[Sequence[pulumi.Input[builtins.str]]]
833
877
  """
834
- addresses of this endpoint. The contents of this field are interpreted according to the corresponding EndpointSlice addressType field. Consumers must handle different types of addresses in the context of their own capabilities. This must contain at least one address but no more than 100. These are all assumed to be fungible and clients may choose to only use the first element. Refer to: https://issue.k8s.io/106267
878
+ 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.
835
879
  """
836
880
  conditions: NotRequired[pulumi.Input['EndpointConditionsArgsDict']]
837
881
  """
@@ -877,7 +921,7 @@ class EndpointArgs:
877
921
  zone: Optional[pulumi.Input[builtins.str]] = None):
878
922
  """
879
923
  Endpoint represents a single logical "backend" implementing a service.
880
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] addresses: addresses of this endpoint. The contents of this field are interpreted according to the corresponding EndpointSlice addressType field. Consumers must handle different types of addresses in the context of their own capabilities. This must contain at least one address but no more than 100. These are all assumed to be fungible and clients may choose to only use the first element. Refer to: https://issue.k8s.io/106267
924
+ :param pulumi.Input[Sequence[pulumi.Input[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.
881
925
  :param pulumi.Input['EndpointConditionsArgs'] conditions: conditions contains information about the current status of the endpoint.
882
926
  :param pulumi.Input[Mapping[str, pulumi.Input[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.
883
927
  :param pulumi.Input['EndpointHintsArgs'] hints: hints contains information associated with how an endpoint should be consumed.
@@ -906,7 +950,7 @@ class EndpointArgs:
906
950
  @pulumi.getter
907
951
  def addresses(self) -> pulumi.Input[Sequence[pulumi.Input[builtins.str]]]:
908
952
  """
909
- addresses of this endpoint. The contents of this field are interpreted according to the corresponding EndpointSlice addressType field. Consumers must handle different types of addresses in the context of their own capabilities. This must contain at least one address but no more than 100. These are all assumed to be fungible and clients may choose to only use the first element. Refer to: https://issue.k8s.io/106267
953
+ 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.
910
954
  """
911
955
  return pulumi.get(self, "addresses")
912
956
 
@@ -999,6 +1043,77 @@ class EndpointArgs:
999
1043
  pulumi.set(self, "zone", value)
1000
1044
 
1001
1045
 
1046
+ if not MYPY:
1047
+ class ForNodePatchArgsDict(TypedDict):
1048
+ """
1049
+ ForNode provides information about which nodes should consume this endpoint.
1050
+ """
1051
+ name: NotRequired[pulumi.Input[builtins.str]]
1052
+ """
1053
+ name represents the name of the node.
1054
+ """
1055
+ elif False:
1056
+ ForNodePatchArgsDict: TypeAlias = Mapping[str, Any]
1057
+
1058
+ @pulumi.input_type
1059
+ class ForNodePatchArgs:
1060
+ def __init__(__self__, *,
1061
+ name: Optional[pulumi.Input[builtins.str]] = None):
1062
+ """
1063
+ ForNode provides information about which nodes should consume this endpoint.
1064
+ :param pulumi.Input[builtins.str] name: name represents the name of the node.
1065
+ """
1066
+ if name is not None:
1067
+ pulumi.set(__self__, "name", name)
1068
+
1069
+ @property
1070
+ @pulumi.getter
1071
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
1072
+ """
1073
+ name represents the name of the node.
1074
+ """
1075
+ return pulumi.get(self, "name")
1076
+
1077
+ @name.setter
1078
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
1079
+ pulumi.set(self, "name", value)
1080
+
1081
+
1082
+ if not MYPY:
1083
+ class ForNodeArgsDict(TypedDict):
1084
+ """
1085
+ ForNode provides information about which nodes should consume this endpoint.
1086
+ """
1087
+ name: pulumi.Input[builtins.str]
1088
+ """
1089
+ name represents the name of the node.
1090
+ """
1091
+ elif False:
1092
+ ForNodeArgsDict: TypeAlias = Mapping[str, Any]
1093
+
1094
+ @pulumi.input_type
1095
+ class ForNodeArgs:
1096
+ def __init__(__self__, *,
1097
+ name: pulumi.Input[builtins.str]):
1098
+ """
1099
+ ForNode provides information about which nodes should consume this endpoint.
1100
+ :param pulumi.Input[builtins.str] name: name represents the name of the node.
1101
+ """
1102
+ pulumi.set(__self__, "name", name)
1103
+
1104
+ @property
1105
+ @pulumi.getter
1106
+ def name(self) -> pulumi.Input[builtins.str]:
1107
+ """
1108
+ name represents the name of the node.
1109
+ """
1110
+ return pulumi.get(self, "name")
1111
+
1112
+ @name.setter
1113
+ def name(self, value: pulumi.Input[builtins.str]):
1114
+ pulumi.set(self, "name", value)
1115
+
1116
+
1002
1117
  if not MYPY:
1003
1118
  class ForZonePatchArgsDict(TypedDict):
1004
1119
  """