mirror of
https://github.com/kubernetes/client-go.git
synced 2025-07-16 16:21:11 +00:00
Merge pull request #130844 from danwinship/improved-traffic-distribution
KEP-3015 PreferSameZone/PreferSameNode traffic distribution Kubernetes-commit: 68ba091fca6927534e187d8b2595882352497f2f
This commit is contained in:
commit
b0ed7301c5
@ -22,6 +22,7 @@ package v1
|
||||
// with apply.
|
||||
type EndpointHintsApplyConfiguration struct {
|
||||
ForZones []ForZoneApplyConfiguration `json:"forZones,omitempty"`
|
||||
ForNodes []ForNodeApplyConfiguration `json:"forNodes,omitempty"`
|
||||
}
|
||||
|
||||
// EndpointHintsApplyConfiguration constructs a declarative configuration of the EndpointHints type for use with
|
||||
@ -42,3 +43,16 @@ func (b *EndpointHintsApplyConfiguration) WithForZones(values ...*ForZoneApplyCo
|
||||
}
|
||||
return b
|
||||
}
|
||||
|
||||
// WithForNodes adds the given value to the ForNodes field in the declarative configuration
|
||||
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
||||
// If called multiple times, values provided by each call will be appended to the ForNodes field.
|
||||
func (b *EndpointHintsApplyConfiguration) WithForNodes(values ...*ForNodeApplyConfiguration) *EndpointHintsApplyConfiguration {
|
||||
for i := range values {
|
||||
if values[i] == nil {
|
||||
panic("nil value passed to WithForNodes")
|
||||
}
|
||||
b.ForNodes = append(b.ForNodes, *values[i])
|
||||
}
|
||||
return b
|
||||
}
|
||||
|
39
applyconfigurations/discovery/v1/fornode.go
Normal file
39
applyconfigurations/discovery/v1/fornode.go
Normal file
@ -0,0 +1,39 @@
|
||||
/*
|
||||
Copyright The Kubernetes Authors.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
// Code generated by applyconfiguration-gen. DO NOT EDIT.
|
||||
|
||||
package v1
|
||||
|
||||
// ForNodeApplyConfiguration represents a declarative configuration of the ForNode type for use
|
||||
// with apply.
|
||||
type ForNodeApplyConfiguration struct {
|
||||
Name *string `json:"name,omitempty"`
|
||||
}
|
||||
|
||||
// ForNodeApplyConfiguration constructs a declarative configuration of the ForNode type for use with
|
||||
// apply.
|
||||
func ForNode() *ForNodeApplyConfiguration {
|
||||
return &ForNodeApplyConfiguration{}
|
||||
}
|
||||
|
||||
// WithName sets the Name field in the declarative configuration to the given value
|
||||
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
||||
// If called multiple times, the Name field is set to the value of the last call.
|
||||
func (b *ForNodeApplyConfiguration) WithName(value string) *ForNodeApplyConfiguration {
|
||||
b.Name = &value
|
||||
return b
|
||||
}
|
@ -22,6 +22,7 @@ package v1beta1
|
||||
// with apply.
|
||||
type EndpointHintsApplyConfiguration struct {
|
||||
ForZones []ForZoneApplyConfiguration `json:"forZones,omitempty"`
|
||||
ForNodes []ForNodeApplyConfiguration `json:"forNodes,omitempty"`
|
||||
}
|
||||
|
||||
// EndpointHintsApplyConfiguration constructs a declarative configuration of the EndpointHints type for use with
|
||||
@ -42,3 +43,16 @@ func (b *EndpointHintsApplyConfiguration) WithForZones(values ...*ForZoneApplyCo
|
||||
}
|
||||
return b
|
||||
}
|
||||
|
||||
// WithForNodes adds the given value to the ForNodes field in the declarative configuration
|
||||
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
||||
// If called multiple times, values provided by each call will be appended to the ForNodes field.
|
||||
func (b *EndpointHintsApplyConfiguration) WithForNodes(values ...*ForNodeApplyConfiguration) *EndpointHintsApplyConfiguration {
|
||||
for i := range values {
|
||||
if values[i] == nil {
|
||||
panic("nil value passed to WithForNodes")
|
||||
}
|
||||
b.ForNodes = append(b.ForNodes, *values[i])
|
||||
}
|
||||
return b
|
||||
}
|
||||
|
39
applyconfigurations/discovery/v1beta1/fornode.go
Normal file
39
applyconfigurations/discovery/v1beta1/fornode.go
Normal file
@ -0,0 +1,39 @@
|
||||
/*
|
||||
Copyright The Kubernetes Authors.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
// Code generated by applyconfiguration-gen. DO NOT EDIT.
|
||||
|
||||
package v1beta1
|
||||
|
||||
// ForNodeApplyConfiguration represents a declarative configuration of the ForNode type for use
|
||||
// with apply.
|
||||
type ForNodeApplyConfiguration struct {
|
||||
Name *string `json:"name,omitempty"`
|
||||
}
|
||||
|
||||
// ForNodeApplyConfiguration constructs a declarative configuration of the ForNode type for use with
|
||||
// apply.
|
||||
func ForNode() *ForNodeApplyConfiguration {
|
||||
return &ForNodeApplyConfiguration{}
|
||||
}
|
||||
|
||||
// WithName sets the Name field in the declarative configuration to the given value
|
||||
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
||||
// If called multiple times, the Name field is set to the value of the last call.
|
||||
func (b *ForNodeApplyConfiguration) WithName(value string) *ForNodeApplyConfiguration {
|
||||
b.Name = &value
|
||||
return b
|
||||
}
|
@ -8741,6 +8741,12 @@ var schemaYAML = typed.YAMLObject(`types:
|
||||
- name: io.k8s.api.discovery.v1.EndpointHints
|
||||
map:
|
||||
fields:
|
||||
- name: forNodes
|
||||
type:
|
||||
list:
|
||||
elementType:
|
||||
namedType: io.k8s.api.discovery.v1.ForNode
|
||||
elementRelationship: atomic
|
||||
- name: forZones
|
||||
type:
|
||||
list:
|
||||
@ -8792,6 +8798,13 @@ var schemaYAML = typed.YAMLObject(`types:
|
||||
elementType:
|
||||
namedType: io.k8s.api.discovery.v1.EndpointPort
|
||||
elementRelationship: atomic
|
||||
- name: io.k8s.api.discovery.v1.ForNode
|
||||
map:
|
||||
fields:
|
||||
- name: name
|
||||
type:
|
||||
scalar: string
|
||||
default: ""
|
||||
- name: io.k8s.api.discovery.v1.ForZone
|
||||
map:
|
||||
fields:
|
||||
@ -8844,6 +8857,12 @@ var schemaYAML = typed.YAMLObject(`types:
|
||||
- name: io.k8s.api.discovery.v1beta1.EndpointHints
|
||||
map:
|
||||
fields:
|
||||
- name: forNodes
|
||||
type:
|
||||
list:
|
||||
elementType:
|
||||
namedType: io.k8s.api.discovery.v1beta1.ForNode
|
||||
elementRelationship: atomic
|
||||
- name: forZones
|
||||
type:
|
||||
list:
|
||||
@ -8894,6 +8913,13 @@ var schemaYAML = typed.YAMLObject(`types:
|
||||
elementType:
|
||||
namedType: io.k8s.api.discovery.v1beta1.EndpointPort
|
||||
elementRelationship: atomic
|
||||
- name: io.k8s.api.discovery.v1beta1.ForNode
|
||||
map:
|
||||
fields:
|
||||
- name: name
|
||||
type:
|
||||
scalar: string
|
||||
default: ""
|
||||
- name: io.k8s.api.discovery.v1beta1.ForZone
|
||||
map:
|
||||
fields:
|
||||
|
@ -1062,6 +1062,8 @@ func ForKind(kind schema.GroupVersionKind) interface{} {
|
||||
return &applyconfigurationsdiscoveryv1.EndpointPortApplyConfiguration{}
|
||||
case discoveryv1.SchemeGroupVersion.WithKind("EndpointSlice"):
|
||||
return &applyconfigurationsdiscoveryv1.EndpointSliceApplyConfiguration{}
|
||||
case discoveryv1.SchemeGroupVersion.WithKind("ForNode"):
|
||||
return &applyconfigurationsdiscoveryv1.ForNodeApplyConfiguration{}
|
||||
case discoveryv1.SchemeGroupVersion.WithKind("ForZone"):
|
||||
return &applyconfigurationsdiscoveryv1.ForZoneApplyConfiguration{}
|
||||
|
||||
@ -1076,6 +1078,8 @@ func ForKind(kind schema.GroupVersionKind) interface{} {
|
||||
return &applyconfigurationsdiscoveryv1beta1.EndpointPortApplyConfiguration{}
|
||||
case discoveryv1beta1.SchemeGroupVersion.WithKind("EndpointSlice"):
|
||||
return &applyconfigurationsdiscoveryv1beta1.EndpointSliceApplyConfiguration{}
|
||||
case discoveryv1beta1.SchemeGroupVersion.WithKind("ForNode"):
|
||||
return &applyconfigurationsdiscoveryv1beta1.ForNodeApplyConfiguration{}
|
||||
case discoveryv1beta1.SchemeGroupVersion.WithKind("ForZone"):
|
||||
return &applyconfigurationsdiscoveryv1beta1.ForZoneApplyConfiguration{}
|
||||
|
||||
|
2
go.mod
2
go.mod
@ -25,7 +25,7 @@ require (
|
||||
golang.org/x/time v0.9.0
|
||||
google.golang.org/protobuf v1.36.5
|
||||
gopkg.in/evanphx/json-patch.v4 v4.12.0
|
||||
k8s.io/api v0.0.0-20250319213038-88064fe45fc1
|
||||
k8s.io/api v0.0.0-20250319213039-6b142a213afd
|
||||
k8s.io/apimachinery v0.0.0-20250319092800-e8a77bd768fd
|
||||
k8s.io/klog/v2 v2.130.1
|
||||
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff
|
||||
|
4
go.sum
4
go.sum
@ -146,8 +146,8 @@ gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
k8s.io/api v0.0.0-20250319213038-88064fe45fc1 h1:UxRrzYpgtXbqwLrgCZnuKutzQM+z75Ag8Xqd0en/IK8=
|
||||
k8s.io/api v0.0.0-20250319213038-88064fe45fc1/go.mod h1:JO0tyTI0qSXXaGVhLdqwfi3RMbS2g9hcYvzBmZP5wVk=
|
||||
k8s.io/api v0.0.0-20250319213039-6b142a213afd h1:8c1Va14wUYbWssIqzNjO2/Hi86kD2wOBPbotT2bXbuw=
|
||||
k8s.io/api v0.0.0-20250319213039-6b142a213afd/go.mod h1:JO0tyTI0qSXXaGVhLdqwfi3RMbS2g9hcYvzBmZP5wVk=
|
||||
k8s.io/apimachinery v0.0.0-20250319092800-e8a77bd768fd h1:KoXgjwEokLM8o95kMxowg5vp5iQ4v46Kk+zobsqeTgU=
|
||||
k8s.io/apimachinery v0.0.0-20250319092800-e8a77bd768fd/go.mod h1:D2UW665TVSpInyOuG6C+PMtC1MZheP0KQz65UPQEiI4=
|
||||
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
|
||||
|
Loading…
Reference in New Issue
Block a user