Commit ff36eefd authored by xiangpengzhao's avatar xiangpengzhao

Rename kubeproxy config pkg and group.

parent 91ab8fe1
...@@ -53,10 +53,10 @@ import ( ...@@ -53,10 +53,10 @@ import (
"k8s.io/kubernetes/pkg/kubelet/qos" "k8s.io/kubernetes/pkg/kubelet/qos"
"k8s.io/kubernetes/pkg/master/ports" "k8s.io/kubernetes/pkg/master/ports"
"k8s.io/kubernetes/pkg/proxy" "k8s.io/kubernetes/pkg/proxy"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig/scheme" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/scheme"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig/v1alpha1" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/v1alpha1"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig/validation" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/validation"
"k8s.io/kubernetes/pkg/proxy/config" "k8s.io/kubernetes/pkg/proxy/config"
"k8s.io/kubernetes/pkg/proxy/healthcheck" "k8s.io/kubernetes/pkg/proxy/healthcheck"
"k8s.io/kubernetes/pkg/proxy/iptables" "k8s.io/kubernetes/pkg/proxy/iptables"
...@@ -96,10 +96,10 @@ type Options struct { ...@@ -96,10 +96,10 @@ type Options struct {
CleanupAndExit bool CleanupAndExit bool
// config is the proxy server's configuration object. // config is the proxy server's configuration object.
config *proxyconfig.KubeProxyConfiguration config *kubeproxyconfig.KubeProxyConfiguration
// The fields below here are placeholders for flags that can't be directly mapped into // The fields below here are placeholders for flags that can't be directly mapped into
// proxyconfig.KubeProxyConfiguration. // kubeproxyconfig.KubeProxyConfiguration.
// //
// TODO remove these fields once the deprecated flags are removed. // TODO remove these fields once the deprecated flags are removed.
...@@ -165,7 +165,7 @@ func AddFlags(options *Options, fs *pflag.FlagSet) { ...@@ -165,7 +165,7 @@ func AddFlags(options *Options, fs *pflag.FlagSet) {
func NewOptions() *Options { func NewOptions() *Options {
return &Options{ return &Options{
config: new(proxyconfig.KubeProxyConfiguration), config: new(kubeproxyconfig.KubeProxyConfiguration),
healthzPort: ports.ProxyHealthzPort, healthzPort: ports.ProxyHealthzPort,
scheme: scheme.Scheme, scheme: scheme.Scheme,
codecs: scheme.Codecs, codecs: scheme.Codecs,
...@@ -272,7 +272,7 @@ func (o *Options) applyDeprecatedHealthzPortToConfig() { ...@@ -272,7 +272,7 @@ func (o *Options) applyDeprecatedHealthzPortToConfig() {
// loadConfigFromFile loads the contents of file and decodes it as a // loadConfigFromFile loads the contents of file and decodes it as a
// KubeProxyConfiguration object. // KubeProxyConfiguration object.
func (o *Options) loadConfigFromFile(file string) (*proxyconfig.KubeProxyConfiguration, error) { func (o *Options) loadConfigFromFile(file string) (*kubeproxyconfig.KubeProxyConfiguration, error) {
data, err := ioutil.ReadFile(file) data, err := ioutil.ReadFile(file)
if err != nil { if err != nil {
return nil, err return nil, err
...@@ -282,19 +282,19 @@ func (o *Options) loadConfigFromFile(file string) (*proxyconfig.KubeProxyConfigu ...@@ -282,19 +282,19 @@ func (o *Options) loadConfigFromFile(file string) (*proxyconfig.KubeProxyConfigu
} }
// loadConfig decodes data as a KubeProxyConfiguration object. // loadConfig decodes data as a KubeProxyConfiguration object.
func (o *Options) loadConfig(data []byte) (*proxyconfig.KubeProxyConfiguration, error) { func (o *Options) loadConfig(data []byte) (*kubeproxyconfig.KubeProxyConfiguration, error) {
configObj, gvk, err := o.codecs.UniversalDecoder().Decode(data, nil, nil) configObj, gvk, err := o.codecs.UniversalDecoder().Decode(data, nil, nil)
if err != nil { if err != nil {
return nil, err return nil, err
} }
config, ok := configObj.(*proxyconfig.KubeProxyConfiguration) config, ok := configObj.(*kubeproxyconfig.KubeProxyConfiguration)
if !ok { if !ok {
return nil, fmt.Errorf("got unexpected config type: %v", gvk) return nil, fmt.Errorf("got unexpected config type: %v", gvk)
} }
return config, nil return config, nil
} }
func (o *Options) ApplyDefaults(in *proxyconfig.KubeProxyConfiguration) (*proxyconfig.KubeProxyConfiguration, error) { func (o *Options) ApplyDefaults(in *kubeproxyconfig.KubeProxyConfiguration) (*kubeproxyconfig.KubeProxyConfiguration, error) {
external, err := o.scheme.ConvertToVersion(in, v1alpha1.SchemeGroupVersion) external, err := o.scheme.ConvertToVersion(in, v1alpha1.SchemeGroupVersion)
if err != nil { if err != nil {
return nil, err return nil, err
...@@ -302,12 +302,12 @@ func (o *Options) ApplyDefaults(in *proxyconfig.KubeProxyConfiguration) (*proxyc ...@@ -302,12 +302,12 @@ func (o *Options) ApplyDefaults(in *proxyconfig.KubeProxyConfiguration) (*proxyc
o.scheme.Default(external) o.scheme.Default(external)
internal, err := o.scheme.ConvertToVersion(external, proxyconfig.SchemeGroupVersion) internal, err := o.scheme.ConvertToVersion(external, kubeproxyconfig.SchemeGroupVersion)
if err != nil { if err != nil {
return nil, err return nil, err
} }
out := internal.(*proxyconfig.KubeProxyConfiguration) out := internal.(*kubeproxyconfig.KubeProxyConfiguration)
return out, nil return out, nil
} }
...@@ -358,7 +358,7 @@ type ProxyServer struct { ...@@ -358,7 +358,7 @@ type ProxyServer struct {
Proxier proxy.ProxyProvider Proxier proxy.ProxyProvider
Broadcaster record.EventBroadcaster Broadcaster record.EventBroadcaster
Recorder record.EventRecorder Recorder record.EventRecorder
ConntrackConfiguration proxyconfig.KubeProxyConntrackConfiguration ConntrackConfiguration kubeproxyconfig.KubeProxyConntrackConfiguration
Conntracker Conntracker // if nil, ignored Conntracker Conntracker // if nil, ignored
ProxyMode string ProxyMode string
NodeRef *v1.ObjectReference NodeRef *v1.ObjectReference
...@@ -375,7 +375,7 @@ type ProxyServer struct { ...@@ -375,7 +375,7 @@ type ProxyServer struct {
// createClients creates a kube client and an event client from the given config and masterOverride. // createClients creates a kube client and an event client from the given config and masterOverride.
// TODO remove masterOverride when CLI flags are removed. // TODO remove masterOverride when CLI flags are removed.
func createClients(config proxyconfig.ClientConnectionConfiguration, masterOverride string) (clientset.Interface, v1core.EventsGetter, error) { func createClients(config kubeproxyconfig.ClientConnectionConfiguration, masterOverride string) (clientset.Interface, v1core.EventsGetter, error) {
var kubeConfig *rest.Config var kubeConfig *rest.Config
var err error var err error
...@@ -547,7 +547,7 @@ func (s *ProxyServer) birthCry() { ...@@ -547,7 +547,7 @@ func (s *ProxyServer) birthCry() {
s.Recorder.Eventf(s.NodeRef, api.EventTypeNormal, "Starting", "Starting kube-proxy.") s.Recorder.Eventf(s.NodeRef, api.EventTypeNormal, "Starting", "Starting kube-proxy.")
} }
func getConntrackMax(config proxyconfig.KubeProxyConntrackConfiguration) (int, error) { func getConntrackMax(config kubeproxyconfig.KubeProxyConntrackConfiguration) (int, error) {
if config.Max > 0 { if config.Max > 0 {
if config.MaxPerCore > 0 { if config.MaxPerCore > 0 {
return -1, fmt.Errorf("invalid config: Conntrack Max and Conntrack MaxPerCore are mutually exclusive") return -1, fmt.Errorf("invalid config: Conntrack Max and Conntrack MaxPerCore are mutually exclusive")
......
...@@ -34,7 +34,7 @@ import ( ...@@ -34,7 +34,7 @@ import (
"k8s.io/client-go/tools/record" "k8s.io/client-go/tools/record"
"k8s.io/kubernetes/pkg/features" "k8s.io/kubernetes/pkg/features"
"k8s.io/kubernetes/pkg/proxy" "k8s.io/kubernetes/pkg/proxy"
proxyconfigapi "k8s.io/kubernetes/pkg/proxy/apis/proxyconfig" proxyconfigapi "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig"
proxyconfig "k8s.io/kubernetes/pkg/proxy/config" proxyconfig "k8s.io/kubernetes/pkg/proxy/config"
"k8s.io/kubernetes/pkg/proxy/healthcheck" "k8s.io/kubernetes/pkg/proxy/healthcheck"
"k8s.io/kubernetes/pkg/proxy/iptables" "k8s.io/kubernetes/pkg/proxy/iptables"
......
...@@ -29,7 +29,7 @@ import ( ...@@ -29,7 +29,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/diff" "k8s.io/apimachinery/pkg/util/diff"
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig"
"k8s.io/kubernetes/pkg/util/configz" "k8s.io/kubernetes/pkg/util/configz"
"k8s.io/kubernetes/pkg/util/iptables" "k8s.io/kubernetes/pkg/util/iptables"
utilpointer "k8s.io/kubernetes/pkg/util/pointer" utilpointer "k8s.io/kubernetes/pkg/util/pointer"
...@@ -145,7 +145,7 @@ func TestProxyServerWithCleanupAndExit(t *testing.T) { ...@@ -145,7 +145,7 @@ func TestProxyServerWithCleanupAndExit(t *testing.T) {
for _, addr := range bindAddresses { for _, addr := range bindAddresses {
options := NewOptions() options := NewOptions()
options.config = &proxyconfig.KubeProxyConfiguration{ options.config = &kubeproxyconfig.KubeProxyConfiguration{
BindAddress: addr, BindAddress: addr,
} }
options.CleanupAndExit = true options.CleanupAndExit = true
...@@ -158,7 +158,7 @@ func TestProxyServerWithCleanupAndExit(t *testing.T) { ...@@ -158,7 +158,7 @@ func TestProxyServerWithCleanupAndExit(t *testing.T) {
assert.True(t, proxyserver.CleanupAndExit, "false CleanupAndExit, addr: %s", addr) assert.True(t, proxyserver.CleanupAndExit, "false CleanupAndExit, addr: %s", addr)
// Clean up config for next test case // Clean up config for next test case
configz.Delete(proxyconfig.GroupName) configz.Delete(kubeproxyconfig.GroupName)
} }
} }
...@@ -202,7 +202,7 @@ func TestGetConntrackMax(t *testing.T) { ...@@ -202,7 +202,7 @@ func TestGetConntrackMax(t *testing.T) {
} }
for i, tc := range testCases { for i, tc := range testCases {
cfg := proxyconfig.KubeProxyConntrackConfiguration{ cfg := kubeproxyconfig.KubeProxyConntrackConfiguration{
Min: tc.min, Min: tc.min,
Max: tc.max, Max: tc.max,
MaxPerCore: tc.maxPerCore, MaxPerCore: tc.maxPerCore,
...@@ -223,7 +223,7 @@ func TestGetConntrackMax(t *testing.T) { ...@@ -223,7 +223,7 @@ func TestGetConntrackMax(t *testing.T) {
// TestLoadConfig tests proper operation of loadConfig() // TestLoadConfig tests proper operation of loadConfig()
func TestLoadConfig(t *testing.T) { func TestLoadConfig(t *testing.T) {
yamlTemplate := `apiVersion: kubeproxy.k8s.io/v1alpha1 yamlTemplate := `apiVersion: kubeproxyconfig.k8s.io/v1alpha1
bindAddress: %s bindAddress: %s
clientConnection: clientConnection:
acceptContentTypes: "abc" acceptContentTypes: "abc"
...@@ -332,9 +332,9 @@ udpTimeoutMilliseconds: 123ms ...@@ -332,9 +332,9 @@ udpTimeoutMilliseconds: 123ms
// Surrounding double quotes will get stripped by the yaml parser. // Surrounding double quotes will get stripped by the yaml parser.
expBindAddr = expBindAddr[1 : len(tc.bindAddress)-1] expBindAddr = expBindAddr[1 : len(tc.bindAddress)-1]
} }
expected := &proxyconfig.KubeProxyConfiguration{ expected := &kubeproxyconfig.KubeProxyConfiguration{
BindAddress: expBindAddr, BindAddress: expBindAddr,
ClientConnection: proxyconfig.ClientConnectionConfiguration{ ClientConnection: kubeproxyconfig.ClientConnectionConfiguration{
AcceptContentTypes: "abc", AcceptContentTypes: "abc",
Burst: 100, Burst: 100,
ContentType: "content-type", ContentType: "content-type",
...@@ -343,7 +343,7 @@ udpTimeoutMilliseconds: 123ms ...@@ -343,7 +343,7 @@ udpTimeoutMilliseconds: 123ms
}, },
ClusterCIDR: tc.clusterCIDR, ClusterCIDR: tc.clusterCIDR,
ConfigSyncPeriod: metav1.Duration{Duration: 15 * time.Second}, ConfigSyncPeriod: metav1.Duration{Duration: 15 * time.Second},
Conntrack: proxyconfig.KubeProxyConntrackConfiguration{ Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{
Max: 4, Max: 4,
MaxPerCore: 2, MaxPerCore: 2,
Min: 1, Min: 1,
...@@ -353,18 +353,18 @@ udpTimeoutMilliseconds: 123ms ...@@ -353,18 +353,18 @@ udpTimeoutMilliseconds: 123ms
FeatureGates: "all", FeatureGates: "all",
HealthzBindAddress: tc.healthzBindAddress, HealthzBindAddress: tc.healthzBindAddress,
HostnameOverride: "foo", HostnameOverride: "foo",
IPTables: proxyconfig.KubeProxyIPTablesConfiguration{ IPTables: kubeproxyconfig.KubeProxyIPTablesConfiguration{
MasqueradeAll: true, MasqueradeAll: true,
MasqueradeBit: utilpointer.Int32Ptr(17), MasqueradeBit: utilpointer.Int32Ptr(17),
MinSyncPeriod: metav1.Duration{Duration: 10 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: 10 * time.Second},
SyncPeriod: metav1.Duration{Duration: 60 * time.Second}, SyncPeriod: metav1.Duration{Duration: 60 * time.Second},
}, },
IPVS: proxyconfig.KubeProxyIPVSConfiguration{ IPVS: kubeproxyconfig.KubeProxyIPVSConfiguration{
MinSyncPeriod: metav1.Duration{Duration: 10 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: 10 * time.Second},
SyncPeriod: metav1.Duration{Duration: 60 * time.Second}, SyncPeriod: metav1.Duration{Duration: 60 * time.Second},
}, },
MetricsBindAddress: tc.metricsBindAddress, MetricsBindAddress: tc.metricsBindAddress,
Mode: proxyconfig.ProxyMode(tc.mode), Mode: kubeproxyconfig.ProxyMode(tc.mode),
OOMScoreAdj: utilpointer.Int32Ptr(17), OOMScoreAdj: utilpointer.Int32Ptr(17),
PortRange: "2-7", PortRange: "2-7",
ResourceContainer: "/foo", ResourceContainer: "/foo",
...@@ -407,7 +407,7 @@ func TestLoadConfigFailures(t *testing.T) { ...@@ -407,7 +407,7 @@ func TestLoadConfigFailures(t *testing.T) {
expErr: "mapping values are not allowed in this context", expErr: "mapping values are not allowed in this context",
}, },
} }
version := "apiVersion: kubeproxy.k8s.io/v1alpha1" version := "apiVersion: kubeproxyconfig.k8s.io/v1alpha1"
for _, tc := range testCases { for _, tc := range testCases {
options := NewOptions() options := NewOptions()
config := fmt.Sprintf("%s\n%s", version, tc.config) config := fmt.Sprintf("%s\n%s", version, tc.config)
......
...@@ -32,7 +32,7 @@ import ( ...@@ -32,7 +32,7 @@ import (
utilnet "k8s.io/apimachinery/pkg/util/net" utilnet "k8s.io/apimachinery/pkg/util/net"
"k8s.io/client-go/tools/record" "k8s.io/client-go/tools/record"
"k8s.io/kubernetes/pkg/proxy" "k8s.io/kubernetes/pkg/proxy"
proxyconfigapi "k8s.io/kubernetes/pkg/proxy/apis/proxyconfig" proxyconfigapi "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig"
proxyconfig "k8s.io/kubernetes/pkg/proxy/config" proxyconfig "k8s.io/kubernetes/pkg/proxy/config"
"k8s.io/kubernetes/pkg/proxy/healthcheck" "k8s.io/kubernetes/pkg/proxy/healthcheck"
"k8s.io/kubernetes/pkg/proxy/winkernel" "k8s.io/kubernetes/pkg/proxy/winkernel"
......
...@@ -16,4 +16,4 @@ limitations under the License. ...@@ -16,4 +16,4 @@ limitations under the License.
// +k8s:deepcopy-gen=package,register // +k8s:deepcopy-gen=package,register
package proxyconfig // import "k8s.io/kubernetes/pkg/proxy/apis/proxyconfig" package kubeproxyconfig // import "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig"
...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and ...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
package proxyconfig package kubeproxyconfig
import ( import (
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
...@@ -27,7 +27,7 @@ var ( ...@@ -27,7 +27,7 @@ var (
) )
// GroupName is the group name use in this package // GroupName is the group name use in this package
const GroupName = "kubeproxy.k8s.io" const GroupName = "kubeproxyconfig.k8s.io"
// SchemeGroupVersion is group version used to register these objects // SchemeGroupVersion is group version used to register these objects
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
......
...@@ -21,8 +21,8 @@ import ( ...@@ -21,8 +21,8 @@ import (
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/runtime/serializer" "k8s.io/apimachinery/pkg/runtime/serializer"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig/v1alpha1" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/v1alpha1"
) )
var ( var (
...@@ -41,5 +41,5 @@ func init() { ...@@ -41,5 +41,5 @@ func init() {
// AddToScheme adds the types of this group into the given scheme. // AddToScheme adds the types of this group into the given scheme.
func AddToScheme(scheme *runtime.Scheme) { func AddToScheme(scheme *runtime.Scheme) {
v1alpha1.AddToScheme(scheme) v1alpha1.AddToScheme(scheme)
proxyconfig.AddToScheme(scheme) kubeproxyconfig.AddToScheme(scheme)
} }
...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and ...@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
package proxyconfig package kubeproxyconfig
import ( import (
"fmt" "fmt"
......
...@@ -15,8 +15,8 @@ limitations under the License. ...@@ -15,8 +15,8 @@ limitations under the License.
*/ */
// +k8s:deepcopy-gen=package,register // +k8s:deepcopy-gen=package,register
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/proxy/apis/proxyconfig // +k8s:conversion-gen=k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig
// +k8s:openapi-gen=true // +k8s:openapi-gen=true
// +k8s:defaulter-gen=TypeMeta // +k8s:defaulter-gen=TypeMeta
package v1alpha1 // import "k8s.io/kubernetes/pkg/proxy/apis/proxyconfig/v1alpha1" package v1alpha1 // import "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/v1alpha1"
...@@ -22,7 +22,7 @@ import ( ...@@ -22,7 +22,7 @@ import (
) )
// GroupName is the group name use in this package // GroupName is the group name use in this package
const GroupName = "kubeproxy.k8s.io" const GroupName = "kubeproxyconfig.k8s.io"
// SchemeGroupVersion is group version used to register these objects // SchemeGroupVersion is group version used to register these objects
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
......
...@@ -25,11 +25,11 @@ import ( ...@@ -25,11 +25,11 @@ import (
utilnet "k8s.io/apimachinery/pkg/util/net" utilnet "k8s.io/apimachinery/pkg/util/net"
"k8s.io/apimachinery/pkg/util/validation/field" "k8s.io/apimachinery/pkg/util/validation/field"
apivalidation "k8s.io/kubernetes/pkg/api/validation" apivalidation "k8s.io/kubernetes/pkg/api/validation"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig"
) )
// Validate validates the configuration of kube-proxy // Validate validates the configuration of kube-proxy
func Validate(config *proxyconfig.KubeProxyConfiguration) field.ErrorList { func Validate(config *kubeproxyconfig.KubeProxyConfiguration) field.ErrorList {
allErrs := field.ErrorList{} allErrs := field.ErrorList{}
newPath := field.NewPath("KubeProxyConfiguration") newPath := field.NewPath("KubeProxyConfiguration")
...@@ -38,7 +38,7 @@ func Validate(config *proxyconfig.KubeProxyConfiguration) field.ErrorList { ...@@ -38,7 +38,7 @@ func Validate(config *proxyconfig.KubeProxyConfiguration) field.ErrorList {
allErrs = append(allErrs, validateKubeProxyConntrackConfiguration(config.Conntrack, newPath.Child("KubeProxyConntrackConfiguration"))...) allErrs = append(allErrs, validateKubeProxyConntrackConfiguration(config.Conntrack, newPath.Child("KubeProxyConntrackConfiguration"))...)
allErrs = append(allErrs, validateProxyMode(config.Mode, newPath.Child("Mode"))...) allErrs = append(allErrs, validateProxyMode(config.Mode, newPath.Child("Mode"))...)
allErrs = append(allErrs, validateClientConnectionConfiguration(config.ClientConnection, newPath.Child("ClientConnection"))...) allErrs = append(allErrs, validateClientConnectionConfiguration(config.ClientConnection, newPath.Child("ClientConnection"))...)
allErrs = append(allErrs, validateIPVSSchedulerMethod(proxyconfig.IPVSSchedulerMethod(config.IPVS.Scheduler), newPath.Child("KubeProxyIPVSConfiguration").Child("Scheduler"))...) allErrs = append(allErrs, validateIPVSSchedulerMethod(kubeproxyconfig.IPVSSchedulerMethod(config.IPVS.Scheduler), newPath.Child("KubeProxyIPVSConfiguration").Child("Scheduler"))...)
if config.OOMScoreAdj != nil && (*config.OOMScoreAdj < -1000 || *config.OOMScoreAdj > 1000) { if config.OOMScoreAdj != nil && (*config.OOMScoreAdj < -1000 || *config.OOMScoreAdj > 1000) {
allErrs = append(allErrs, field.Invalid(newPath.Child("OOMScoreAdj"), *config.OOMScoreAdj, "must be within the range [-1000, 1000]")) allErrs = append(allErrs, field.Invalid(newPath.Child("OOMScoreAdj"), *config.OOMScoreAdj, "must be within the range [-1000, 1000]"))
...@@ -72,7 +72,7 @@ func Validate(config *proxyconfig.KubeProxyConfiguration) field.ErrorList { ...@@ -72,7 +72,7 @@ func Validate(config *proxyconfig.KubeProxyConfiguration) field.ErrorList {
return allErrs return allErrs
} }
func validateKubeProxyIPTablesConfiguration(config proxyconfig.KubeProxyIPTablesConfiguration, fldPath *field.Path) field.ErrorList { func validateKubeProxyIPTablesConfiguration(config kubeproxyconfig.KubeProxyIPTablesConfiguration, fldPath *field.Path) field.ErrorList {
allErrs := field.ErrorList{} allErrs := field.ErrorList{}
if config.MasqueradeBit != nil && (*config.MasqueradeBit < 0 || *config.MasqueradeBit > 31) { if config.MasqueradeBit != nil && (*config.MasqueradeBit < 0 || *config.MasqueradeBit > 31) {
...@@ -90,7 +90,7 @@ func validateKubeProxyIPTablesConfiguration(config proxyconfig.KubeProxyIPTables ...@@ -90,7 +90,7 @@ func validateKubeProxyIPTablesConfiguration(config proxyconfig.KubeProxyIPTables
return allErrs return allErrs
} }
func validateKubeProxyConntrackConfiguration(config proxyconfig.KubeProxyConntrackConfiguration, fldPath *field.Path) field.ErrorList { func validateKubeProxyConntrackConfiguration(config kubeproxyconfig.KubeProxyConntrackConfiguration, fldPath *field.Path) field.ErrorList {
allErrs := field.ErrorList{} allErrs := field.ErrorList{}
if config.Max < 0 { if config.Max < 0 {
...@@ -116,22 +116,22 @@ func validateKubeProxyConntrackConfiguration(config proxyconfig.KubeProxyConntra ...@@ -116,22 +116,22 @@ func validateKubeProxyConntrackConfiguration(config proxyconfig.KubeProxyConntra
return allErrs return allErrs
} }
func validateProxyMode(mode proxyconfig.ProxyMode, fldPath *field.Path) field.ErrorList { func validateProxyMode(mode kubeproxyconfig.ProxyMode, fldPath *field.Path) field.ErrorList {
allErrs := field.ErrorList{} allErrs := field.ErrorList{}
switch mode { switch mode {
case proxyconfig.ProxyModeUserspace: case kubeproxyconfig.ProxyModeUserspace:
case proxyconfig.ProxyModeIPTables: case kubeproxyconfig.ProxyModeIPTables:
case proxyconfig.ProxyModeIPVS: case kubeproxyconfig.ProxyModeIPVS:
case "": case "":
default: default:
modes := []string{string(proxyconfig.ProxyModeUserspace), string(proxyconfig.ProxyModeIPTables), string(proxyconfig.ProxyModeIPVS)} modes := []string{string(kubeproxyconfig.ProxyModeUserspace), string(kubeproxyconfig.ProxyModeIPTables), string(kubeproxyconfig.ProxyModeIPVS)}
errMsg := fmt.Sprintf("must be %s or blank (blank means the best-available proxy (currently iptables)", strings.Join(modes, ",")) errMsg := fmt.Sprintf("must be %s or blank (blank means the best-available proxy (currently iptables)", strings.Join(modes, ","))
allErrs = append(allErrs, field.Invalid(fldPath.Child("ProxyMode"), string(mode), errMsg)) allErrs = append(allErrs, field.Invalid(fldPath.Child("ProxyMode"), string(mode), errMsg))
} }
return allErrs return allErrs
} }
func validateClientConnectionConfiguration(config proxyconfig.ClientConnectionConfiguration, fldPath *field.Path) field.ErrorList { func validateClientConnectionConfiguration(config kubeproxyconfig.ClientConnectionConfiguration, fldPath *field.Path) field.ErrorList {
allErrs := field.ErrorList{} allErrs := field.ErrorList{}
allErrs = append(allErrs, apivalidation.ValidateNonnegativeField(int64(config.Burst), fldPath.Child("Burst"))...) allErrs = append(allErrs, apivalidation.ValidateNonnegativeField(int64(config.Burst), fldPath.Child("Burst"))...)
return allErrs return allErrs
...@@ -159,18 +159,18 @@ func validateHostPort(input string, fldPath *field.Path) field.ErrorList { ...@@ -159,18 +159,18 @@ func validateHostPort(input string, fldPath *field.Path) field.ErrorList {
return allErrs return allErrs
} }
func validateIPVSSchedulerMethod(scheduler proxyconfig.IPVSSchedulerMethod, fldPath *field.Path) field.ErrorList { func validateIPVSSchedulerMethod(scheduler kubeproxyconfig.IPVSSchedulerMethod, fldPath *field.Path) field.ErrorList {
supportedMethod := []proxyconfig.IPVSSchedulerMethod{ supportedMethod := []kubeproxyconfig.IPVSSchedulerMethod{
proxyconfig.RoundRobin, kubeproxyconfig.RoundRobin,
proxyconfig.WeightedRoundRobin, kubeproxyconfig.WeightedRoundRobin,
proxyconfig.LeastConnection, kubeproxyconfig.LeastConnection,
proxyconfig.WeightedLeastConnection, kubeproxyconfig.WeightedLeastConnection,
proxyconfig.LocalityBasedLeastConnection, kubeproxyconfig.LocalityBasedLeastConnection,
proxyconfig.LocalityBasedLeastConnectionWithReplication, kubeproxyconfig.LocalityBasedLeastConnectionWithReplication,
proxyconfig.SourceHashing, kubeproxyconfig.SourceHashing,
proxyconfig.DestinationHashing, kubeproxyconfig.DestinationHashing,
proxyconfig.ShortestExpectedDelay, kubeproxyconfig.ShortestExpectedDelay,
proxyconfig.NeverQueue, kubeproxyconfig.NeverQueue,
"", "",
} }
allErrs := field.ErrorList{} allErrs := field.ErrorList{}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment