mirror of https://github.com/k3s-io/k3s
commit
4383e6f95c
|
@ -27,6 +27,8 @@ import (
|
|||
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
_ "k8s.io/kubernetes/pkg/api/v1"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1"
|
||||
_ "k8s.io/kubernetes/pkg/apis/extensions"
|
||||
_ "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||
kruntime "k8s.io/kubernetes/pkg/runtime"
|
||||
|
|
|
@ -27,6 +27,8 @@ import (
|
|||
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
_ "k8s.io/kubernetes/pkg/api/v1"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1"
|
||||
_ "k8s.io/kubernetes/pkg/apis/extensions"
|
||||
_ "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||
kruntime "k8s.io/kubernetes/pkg/runtime"
|
||||
|
|
|
@ -19,5 +19,6 @@ package main
|
|||
// These imports are the API groups the kube-version-change tool will support.
|
||||
import (
|
||||
_ "k8s.io/kubernetes/pkg/api/install"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig/install"
|
||||
_ "k8s.io/kubernetes/pkg/apis/extensions/install"
|
||||
)
|
||||
|
|
|
@ -101,14 +101,14 @@ kube-apiserver
|
|||
--service-node-port-range=: A port range to reserve for services with NodePort visibility. Example: '30000-32767'. Inclusive at both ends of the range.
|
||||
--ssh-keyfile="": If non-empty, use secure SSH proxy to the nodes, using this user keyfile
|
||||
--ssh-user="": If non-empty, use secure SSH proxy to the nodes, using this user name
|
||||
--storage-versions="extensions/v1beta1,v1": The versions to store resources with. Different groups may be stored in different versions. Specified in the format "group1/version1,group2/version2...". This flag expects a complete list of storage versions of ALL groups registered in the server. It defaults to a list of preferred versions of all registered groups, which is derived from the KUBE_API_VERSIONS environment variable.
|
||||
--storage-versions="componentconfig/v1alpha1,extensions/v1beta1,v1": The versions to store resources with. Different groups may be stored in different versions. Specified in the format "group1/version1,group2/version2...". This flag expects a complete list of storage versions of ALL groups registered in the server. It defaults to a list of preferred versions of all registered groups, which is derived from the KUBE_API_VERSIONS environment variable.
|
||||
--tls-cert-file="": File containing x509 Certificate for HTTPS. (CA cert, if any, concatenated after server cert). If HTTPS serving is enabled, and --tls-cert-file and --tls-private-key-file are not provided, a self-signed certificate and key are generated for the public address and saved to /var/run/kubernetes.
|
||||
--tls-private-key-file="": File containing x509 private key matching --tls-cert-file.
|
||||
--token-auth-file="": If set, the file that will be used to secure the secure port of the API server via token authentication.
|
||||
--watch-cache[=true]: Enable watch caching in the apiserver
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 24-Oct-2015
|
||||
###### Auto generated by spf13/cobra on 30-Oct-2015
|
||||
|
||||
|
||||
<!-- BEGIN MUNGE: GENERATED_ANALYTICS -->
|
||||
|
|
|
@ -43,7 +43,7 @@ EOF
|
|||
}
|
||||
|
||||
# TODO(lavalamp): get this list by listing the pkg/apis/ directory?
|
||||
DEFAULT_GROUP_VERSIONS="v1 extensions/v1beta1"
|
||||
DEFAULT_GROUP_VERSIONS="v1 extensions/v1beta1 componentconfig/v1alpha1"
|
||||
VERSIONS=${VERSIONS:-$DEFAULT_GROUP_VERSIONS}
|
||||
for ver in $VERSIONS; do
|
||||
# Ensure that the version being processed is registered by setting
|
||||
|
|
|
@ -57,6 +57,6 @@ function generate_deep_copies() {
|
|||
}
|
||||
|
||||
# v1 is in the group ""
|
||||
DEFAULT_VERSIONS="/ v1 extensions/ extensions/v1beta1"
|
||||
DEFAULT_VERSIONS="/ v1 extensions/ extensions/v1beta1 componentconfig/ componentconfig/v1alpha1"
|
||||
VERSIONS=${VERSIONS:-$DEFAULT_VERSIONS}
|
||||
generate_deep_copies "$VERSIONS"
|
||||
|
|
|
@ -315,7 +315,7 @@ for (( i=0, j=0; ; )); do
|
|||
# KUBE_TEST_API sets the version of each group to be tested. KUBE_API_VERSIONS
|
||||
# register the groups/versions as supported by k8s. So KUBE_API_VERSIONS
|
||||
# needs to be the superset of KUBE_TEST_API.
|
||||
KUBE_TEST_API="${apiVersion}" KUBE_API_VERSIONS="v1,extensions/v1beta1" ETCD_PREFIX=${etcdPrefix} runTests "$@"
|
||||
KUBE_TEST_API="${apiVersion}" KUBE_API_VERSIONS="v1,extensions/v1beta1,componentconfig/v1alpha1" ETCD_PREFIX=${etcdPrefix} runTests "$@"
|
||||
i=${i}+1
|
||||
j=${j}+1
|
||||
if [[ i -eq ${apiVersionsCount} ]] && [[ j -eq ${etcdPrefixesCount} ]]; then
|
||||
|
|
|
@ -32,12 +32,13 @@ var RegisteredVersions []string
|
|||
func init() {
|
||||
// TODO: caesarxuchao: rename this variable to validGroupVersions
|
||||
validAPIVersions := map[string]bool{
|
||||
"v1": true,
|
||||
"extensions/v1beta1": true,
|
||||
"v1": true,
|
||||
"extensions/v1beta1": true,
|
||||
"componentconfig/v1alpha1": true,
|
||||
}
|
||||
|
||||
// The default list of supported api versions, in order of most preferred to the least.
|
||||
defaultSupportedVersions := "v1,extensions/v1beta1"
|
||||
defaultSupportedVersions := "v1,extensions/v1beta1,componentconfig/v1alpha1"
|
||||
// Env var KUBE_API_VERSIONS is a comma separated list of API versions that should be registered in the scheme.
|
||||
// The versions should be in the order of most preferred to the least.
|
||||
supportedVersions := os.Getenv("KUBE_API_VERSIONS")
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
package componentconfig
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
|
||||
"k8s.io/kubernetes/pkg/runtime"
|
||||
)
|
||||
|
||||
func DecodeFromPathInto(obj runtime.Object, c runtime.Codec, filename string) error {
|
||||
b, err := ioutil.ReadFile(filename)
|
||||
c = runtime.YAMLDecoder(c)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return c.DecodeInto(b, obj)
|
||||
}
|
|
@ -0,0 +1,70 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
// DO NOT EDIT. THIS FILE IS AUTO-GENERATED BY $KUBEROOT/hack/update-generated-deep-copies.sh.
|
||||
|
||||
package componentconfig
|
||||
|
||||
import (
|
||||
api "k8s.io/kubernetes/pkg/api"
|
||||
unversioned "k8s.io/kubernetes/pkg/api/unversioned"
|
||||
conversion "k8s.io/kubernetes/pkg/conversion"
|
||||
)
|
||||
|
||||
func deepCopy_unversioned_TypeMeta(in unversioned.TypeMeta, out *unversioned.TypeMeta, c *conversion.Cloner) error {
|
||||
out.Kind = in.Kind
|
||||
out.APIVersion = in.APIVersion
|
||||
return nil
|
||||
}
|
||||
|
||||
func deepCopy_componentconfig_KubeProxyConfiguration(in KubeProxyConfiguration, out *KubeProxyConfiguration, c *conversion.Cloner) error {
|
||||
if err := deepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil {
|
||||
return err
|
||||
}
|
||||
out.BindAddress = in.BindAddress
|
||||
out.CleanupIPTables = in.CleanupIPTables
|
||||
out.HealthzBindAddress = in.HealthzBindAddress
|
||||
out.HealthzPort = in.HealthzPort
|
||||
out.HostnameOverride = in.HostnameOverride
|
||||
out.IPTablesSyncePeriodSeconds = in.IPTablesSyncePeriodSeconds
|
||||
out.KubeAPIBurst = in.KubeAPIBurst
|
||||
out.KubeAPIQPS = in.KubeAPIQPS
|
||||
out.KubeconfigPath = in.KubeconfigPath
|
||||
out.MasqueradeAll = in.MasqueradeAll
|
||||
out.Master = in.Master
|
||||
if in.OOMScoreAdj != nil {
|
||||
out.OOMScoreAdj = new(int)
|
||||
*out.OOMScoreAdj = *in.OOMScoreAdj
|
||||
} else {
|
||||
out.OOMScoreAdj = nil
|
||||
}
|
||||
out.Mode = in.Mode
|
||||
out.PortRange = in.PortRange
|
||||
out.ResourceContainer = in.ResourceContainer
|
||||
out.UDPTimeoutMilliseconds = in.UDPTimeoutMilliseconds
|
||||
return nil
|
||||
}
|
||||
|
||||
func init() {
|
||||
err := api.Scheme.AddGeneratedDeepCopyFuncs(
|
||||
deepCopy_unversioned_TypeMeta,
|
||||
deepCopy_componentconfig_KubeProxyConfiguration,
|
||||
)
|
||||
if err != nil {
|
||||
// if one of the deep copy functions is malformed, detect it immediately.
|
||||
panic(err)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,92 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
// Package install installs the experimental API group, making it available as
|
||||
// an option to all of the API encoding/decoding machinery.
|
||||
package install
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/golang/glog"
|
||||
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/latest"
|
||||
"k8s.io/kubernetes/pkg/api/meta"
|
||||
"k8s.io/kubernetes/pkg/api/registered"
|
||||
apiutil "k8s.io/kubernetes/pkg/api/util"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||
"k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1"
|
||||
"k8s.io/kubernetes/pkg/runtime"
|
||||
"k8s.io/kubernetes/pkg/util/sets"
|
||||
)
|
||||
|
||||
const importPrefix = "k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||
|
||||
var accessor = meta.NewAccessor()
|
||||
|
||||
func init() {
|
||||
groupMeta, err := latest.RegisterGroup("componentconfig")
|
||||
if err != nil {
|
||||
glog.V(4).Infof("%v", err)
|
||||
return
|
||||
}
|
||||
registeredGroupVersions := registered.GroupVersionsForGroup("componentconfig")
|
||||
groupVersion := registeredGroupVersions[0]
|
||||
*groupMeta = latest.GroupMeta{
|
||||
GroupVersion: groupVersion,
|
||||
Group: apiutil.GetGroup(groupVersion),
|
||||
Version: apiutil.GetVersion(groupVersion),
|
||||
Codec: runtime.CodecFor(api.Scheme, groupVersion),
|
||||
}
|
||||
var versions []string
|
||||
var groupVersions []string
|
||||
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
||||
versions = append(versions, apiutil.GetVersion(registeredGroupVersions[i]))
|
||||
groupVersions = append(groupVersions, registeredGroupVersions[i])
|
||||
}
|
||||
groupMeta.Versions = versions
|
||||
groupMeta.GroupVersions = groupVersions
|
||||
|
||||
groupMeta.SelfLinker = runtime.SelfLinker(accessor)
|
||||
|
||||
// the list of kinds that are scoped at the root of the api hierarchy
|
||||
// if a kind is not enumerated here, it is assumed to have a namespace scope
|
||||
rootScoped := sets.NewString()
|
||||
|
||||
ignoredKinds := sets.NewString()
|
||||
|
||||
groupMeta.RESTMapper = api.NewDefaultRESTMapper("componentconfig", groupVersions, interfacesFor, importPrefix, ignoredKinds, rootScoped)
|
||||
api.RegisterRESTMapper(groupMeta.RESTMapper)
|
||||
groupMeta.InterfacesFor = interfacesFor
|
||||
}
|
||||
|
||||
// interfacesFor returns the default Codec and ResourceVersioner for a given version
|
||||
// string, or an error if the version is not known.
|
||||
func interfacesFor(version string) (*meta.VersionInterfaces, error) {
|
||||
switch version {
|
||||
case "componentconfig/v1alpha1":
|
||||
return &meta.VersionInterfaces{
|
||||
Codec: v1alpha1.Codec,
|
||||
ObjectConvertor: api.Scheme,
|
||||
MetadataAccessor: accessor,
|
||||
}, nil
|
||||
default:
|
||||
g, _ := latest.Group("componentconfig")
|
||||
return nil, fmt.Errorf("unsupported storage version: %s (valid: %s)", version, strings.Join(g.Versions, ", "))
|
||||
}
|
||||
}
|
|
@ -0,0 +1,82 @@
|
|||
/*
|
||||
Copyright 2014 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
package install
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"testing"
|
||||
|
||||
"k8s.io/kubernetes/pkg/api/latest"
|
||||
"k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||
)
|
||||
|
||||
func TestCodec(t *testing.T) {
|
||||
daemonSet := componentconfig.KubeProxyConfiguration{}
|
||||
// We do want to use package latest rather than testapi here, because we
|
||||
// want to test if the package install and package latest work as expected.
|
||||
data, err := latest.GroupOrDie("componentconfig").Codec.Encode(&daemonSet)
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
other := componentconfig.KubeProxyConfiguration{}
|
||||
if err := json.Unmarshal(data, &other); err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
if other.APIVersion != latest.GroupOrDie("componentconfig").GroupVersion || other.Kind != "KubeProxyConfiguration" {
|
||||
t.Errorf("unexpected unmarshalled object %#v", other)
|
||||
}
|
||||
}
|
||||
|
||||
func TestInterfacesFor(t *testing.T) {
|
||||
if _, err := latest.GroupOrDie("componentconfig").InterfacesFor(""); err == nil {
|
||||
t.Fatalf("unexpected non-error: %v", err)
|
||||
}
|
||||
for i, groupVersion := range append([]string{latest.GroupOrDie("componentconfig").GroupVersion}, latest.GroupOrDie("componentconfig").GroupVersions...) {
|
||||
if vi, err := latest.GroupOrDie("componentconfig").InterfacesFor(groupVersion); err != nil || vi == nil {
|
||||
t.Fatalf("%d: unexpected result: %v", i, err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestRESTMapper(t *testing.T) {
|
||||
if v, k, err := latest.GroupOrDie("componentconfig").RESTMapper.VersionAndKindForResource("kubeproxyconfiguration"); err != nil || v != "componentconfig/v1alpha1" || k != "KubeProxyConfiguration" {
|
||||
t.Errorf("unexpected version mapping: %s %s %v", v, k, err)
|
||||
}
|
||||
|
||||
if m, err := latest.GroupOrDie("componentconfig").RESTMapper.RESTMapping("KubeProxyConfiguration", ""); err != nil || m.APIVersion != "componentconfig/v1alpha1" || m.Resource != "kubeproxyconfigurations" {
|
||||
t.Errorf("unexpected version mapping: %#v %v", m, err)
|
||||
}
|
||||
|
||||
for _, groupVersion := range latest.GroupOrDie("componentconfig").GroupVersions {
|
||||
mapping, err := latest.GroupOrDie("componentconfig").RESTMapper.RESTMapping("KubeProxyConfiguration", groupVersion)
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
if mapping.Resource != "kubeproxyconfigurations" {
|
||||
t.Errorf("incorrect resource name: %#v", mapping)
|
||||
}
|
||||
if mapping.APIVersion != groupVersion {
|
||||
t.Errorf("incorrect groupVersion: %v", mapping)
|
||||
}
|
||||
|
||||
interfaces, _ := latest.GroupOrDie("componentconfig").InterfacesFor(groupVersion)
|
||||
if mapping.Codec != interfaces.Codec {
|
||||
t.Errorf("unexpected codec: %#v, expected: %#v", mapping, interfaces)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
package componentconfig
|
||||
|
||||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
)
|
||||
|
||||
func init() {
|
||||
addKnownTypes()
|
||||
}
|
||||
|
||||
func addKnownTypes() {
|
||||
api.Scheme.AddKnownTypes("",
|
||||
&KubeProxyConfiguration{},
|
||||
)
|
||||
}
|
||||
|
||||
func (_ *KubeProxyConfiguration) IsAnAPIObject() {}
|
|
@ -0,0 +1,899 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
// ************************************************************
|
||||
// DO NOT EDIT.
|
||||
// THIS FILE IS AUTO-GENERATED BY codecgen.
|
||||
// ************************************************************
|
||||
|
||||
package componentconfig
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
codec1978 "github.com/ugorji/go/codec"
|
||||
pkg1_unversioned "k8s.io/kubernetes/pkg/api/unversioned"
|
||||
"reflect"
|
||||
"runtime"
|
||||
)
|
||||
|
||||
const (
|
||||
codecSelferC_UTF81234 = 1
|
||||
codecSelferC_RAW1234 = 0
|
||||
codecSelferValueTypeArray1234 = 10
|
||||
codecSelferValueTypeMap1234 = 9
|
||||
)
|
||||
|
||||
var (
|
||||
codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits())
|
||||
codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`)
|
||||
)
|
||||
|
||||
type codecSelfer1234 struct{}
|
||||
|
||||
func init() {
|
||||
if codec1978.GenVersion != 4 {
|
||||
_, file, _, _ := runtime.Caller(0)
|
||||
err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v",
|
||||
4, codec1978.GenVersion, file)
|
||||
panic(err)
|
||||
}
|
||||
if false { // reference the types, but skip this branch at build/run time
|
||||
var v0 pkg1_unversioned.TypeMeta
|
||||
_ = v0
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) CodecEncodeSelf(e *codec1978.Encoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperEncoder(e)
|
||||
_, _, _ = h, z, r
|
||||
if x == nil {
|
||||
r.EncodeNil()
|
||||
} else {
|
||||
yym1 := z.EncBinary()
|
||||
_ = yym1
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.EncExt(x) {
|
||||
} else {
|
||||
yysep2 := !z.EncBinary()
|
||||
yy2arr2 := z.EncBasicHandle().StructToArray
|
||||
var yyq2 [18]bool
|
||||
_, _, _ = yysep2, yyq2, yy2arr2
|
||||
const yyr2 bool = false
|
||||
yyq2[0] = x.Kind != ""
|
||||
yyq2[1] = x.APIVersion != ""
|
||||
if yyr2 || yy2arr2 {
|
||||
r.EncodeArrayStart(18)
|
||||
} else {
|
||||
var yynn2 int = 16
|
||||
for _, b := range yyq2 {
|
||||
if b {
|
||||
yynn2++
|
||||
}
|
||||
}
|
||||
r.EncodeMapStart(yynn2)
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
if yyq2[0] {
|
||||
yym4 := z.EncBinary()
|
||||
_ = yym4
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Kind))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, "")
|
||||
}
|
||||
} else {
|
||||
if yyq2[0] {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kind"))
|
||||
yym5 := z.EncBinary()
|
||||
_ = yym5
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Kind))
|
||||
}
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
if yyq2[1] {
|
||||
yym7 := z.EncBinary()
|
||||
_ = yym7
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, "")
|
||||
}
|
||||
} else {
|
||||
if yyq2[1] {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("apiVersion"))
|
||||
yym8 := z.EncBinary()
|
||||
_ = yym8
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion))
|
||||
}
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym10 := z.EncBinary()
|
||||
_ = yym10
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.BindAddress))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("bindAddress"))
|
||||
yym11 := z.EncBinary()
|
||||
_ = yym11
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.BindAddress))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym13 := z.EncBinary()
|
||||
_ = yym13
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.CleanupIPTables))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("cleanupIPTables"))
|
||||
yym14 := z.EncBinary()
|
||||
_ = yym14
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.CleanupIPTables))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym16 := z.EncBinary()
|
||||
_ = yym16
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HealthzBindAddress))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("healthzBindAddress"))
|
||||
yym17 := z.EncBinary()
|
||||
_ = yym17
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HealthzBindAddress))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym19 := z.EncBinary()
|
||||
_ = yym19
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.HealthzPort))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("healthzPort"))
|
||||
yym20 := z.EncBinary()
|
||||
_ = yym20
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.HealthzPort))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym22 := z.EncBinary()
|
||||
_ = yym22
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HostnameOverride))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("hostnameOverride"))
|
||||
yym23 := z.EncBinary()
|
||||
_ = yym23
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HostnameOverride))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym25 := z.EncBinary()
|
||||
_ = yym25
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.IPTablesSyncePeriodSeconds))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("iptablesSyncPeriodSeconds"))
|
||||
yym26 := z.EncBinary()
|
||||
_ = yym26
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.IPTablesSyncePeriodSeconds))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym28 := z.EncBinary()
|
||||
_ = yym28
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIBurst))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kubeAPIBurst"))
|
||||
yym29 := z.EncBinary()
|
||||
_ = yym29
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIBurst))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym31 := z.EncBinary()
|
||||
_ = yym31
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIQPS))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kubeAPIQPS"))
|
||||
yym32 := z.EncBinary()
|
||||
_ = yym32
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIQPS))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym34 := z.EncBinary()
|
||||
_ = yym34
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.KubeconfigPath))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kubeconfigPath"))
|
||||
yym35 := z.EncBinary()
|
||||
_ = yym35
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.KubeconfigPath))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym37 := z.EncBinary()
|
||||
_ = yym37
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.MasqueradeAll))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("masqueradeAll"))
|
||||
yym38 := z.EncBinary()
|
||||
_ = yym38
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.MasqueradeAll))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym40 := z.EncBinary()
|
||||
_ = yym40
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Master))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("master"))
|
||||
yym41 := z.EncBinary()
|
||||
_ = yym41
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Master))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
if x.OOMScoreAdj == nil {
|
||||
r.EncodeNil()
|
||||
} else {
|
||||
yy43 := *x.OOMScoreAdj
|
||||
yym44 := z.EncBinary()
|
||||
_ = yym44
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(yy43))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("oomScoreAdj"))
|
||||
if x.OOMScoreAdj == nil {
|
||||
r.EncodeNil()
|
||||
} else {
|
||||
yy45 := *x.OOMScoreAdj
|
||||
yym46 := z.EncBinary()
|
||||
_ = yym46
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(yy45))
|
||||
}
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
x.Mode.CodecEncodeSelf(e)
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("mode"))
|
||||
x.Mode.CodecEncodeSelf(e)
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym49 := z.EncBinary()
|
||||
_ = yym49
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.PortRange))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("portRange"))
|
||||
yym50 := z.EncBinary()
|
||||
_ = yym50
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.PortRange))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym52 := z.EncBinary()
|
||||
_ = yym52
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.ResourceContainer))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("resourceContainer"))
|
||||
yym53 := z.EncBinary()
|
||||
_ = yym53
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.ResourceContainer))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym55 := z.EncBinary()
|
||||
_ = yym55
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.UDPTimeoutMilliseconds))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("udpTimeoutMilliseconds"))
|
||||
yym56 := z.EncBinary()
|
||||
_ = yym56
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.UDPTimeoutMilliseconds))
|
||||
}
|
||||
}
|
||||
if yysep2 {
|
||||
r.EncodeEnd()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) CodecDecodeSelf(d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
yym57 := z.DecBinary()
|
||||
_ = yym57
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.DecExt(x) {
|
||||
} else {
|
||||
if r.IsContainerType(codecSelferValueTypeMap1234) {
|
||||
yyl58 := r.ReadMapStart()
|
||||
if yyl58 == 0 {
|
||||
r.ReadEnd()
|
||||
} else {
|
||||
x.codecDecodeSelfFromMap(yyl58, d)
|
||||
}
|
||||
} else if r.IsContainerType(codecSelferValueTypeArray1234) {
|
||||
yyl58 := r.ReadArrayStart()
|
||||
if yyl58 == 0 {
|
||||
r.ReadEnd()
|
||||
} else {
|
||||
x.codecDecodeSelfFromArray(yyl58, d)
|
||||
}
|
||||
} else {
|
||||
panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
var yys59Slc = z.DecScratchBuffer() // default slice to decode into
|
||||
_ = yys59Slc
|
||||
var yyhl59 bool = l >= 0
|
||||
for yyj59 := 0; ; yyj59++ {
|
||||
if yyhl59 {
|
||||
if yyj59 >= l {
|
||||
break
|
||||
}
|
||||
} else {
|
||||
if r.CheckBreak() {
|
||||
break
|
||||
}
|
||||
}
|
||||
yys59Slc = r.DecodeBytes(yys59Slc, true, true)
|
||||
yys59 := string(yys59Slc)
|
||||
switch yys59 {
|
||||
case "kind":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Kind = ""
|
||||
} else {
|
||||
x.Kind = string(r.DecodeString())
|
||||
}
|
||||
case "apiVersion":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.APIVersion = ""
|
||||
} else {
|
||||
x.APIVersion = string(r.DecodeString())
|
||||
}
|
||||
case "bindAddress":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.BindAddress = ""
|
||||
} else {
|
||||
x.BindAddress = string(r.DecodeString())
|
||||
}
|
||||
case "cleanupIPTables":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.CleanupIPTables = false
|
||||
} else {
|
||||
x.CleanupIPTables = bool(r.DecodeBool())
|
||||
}
|
||||
case "healthzBindAddress":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzBindAddress = ""
|
||||
} else {
|
||||
x.HealthzBindAddress = string(r.DecodeString())
|
||||
}
|
||||
case "healthzPort":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzPort = 0
|
||||
} else {
|
||||
x.HealthzPort = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "hostnameOverride":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HostnameOverride = ""
|
||||
} else {
|
||||
x.HostnameOverride = string(r.DecodeString())
|
||||
}
|
||||
case "iptablesSyncPeriodSeconds":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.IPTablesSyncePeriodSeconds = 0
|
||||
} else {
|
||||
x.IPTablesSyncePeriodSeconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "kubeAPIBurst":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIBurst = 0
|
||||
} else {
|
||||
x.KubeAPIBurst = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "kubeAPIQPS":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIQPS = 0
|
||||
} else {
|
||||
x.KubeAPIQPS = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "kubeconfigPath":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeconfigPath = ""
|
||||
} else {
|
||||
x.KubeconfigPath = string(r.DecodeString())
|
||||
}
|
||||
case "masqueradeAll":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.MasqueradeAll = false
|
||||
} else {
|
||||
x.MasqueradeAll = bool(r.DecodeBool())
|
||||
}
|
||||
case "master":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Master = ""
|
||||
} else {
|
||||
x.Master = string(r.DecodeString())
|
||||
}
|
||||
case "oomScoreAdj":
|
||||
if r.TryDecodeAsNil() {
|
||||
if x.OOMScoreAdj != nil {
|
||||
x.OOMScoreAdj = nil
|
||||
}
|
||||
} else {
|
||||
if x.OOMScoreAdj == nil {
|
||||
x.OOMScoreAdj = new(int)
|
||||
}
|
||||
yym74 := z.DecBinary()
|
||||
_ = yym74
|
||||
if false {
|
||||
} else {
|
||||
*((*int)(x.OOMScoreAdj)) = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
}
|
||||
case "mode":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Mode = ""
|
||||
} else {
|
||||
x.Mode = ProxyMode(r.DecodeString())
|
||||
}
|
||||
case "portRange":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.PortRange = ""
|
||||
} else {
|
||||
x.PortRange = string(r.DecodeString())
|
||||
}
|
||||
case "resourceContainer":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.ResourceContainer = ""
|
||||
} else {
|
||||
x.ResourceContainer = string(r.DecodeString())
|
||||
}
|
||||
case "udpTimeoutMilliseconds":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.UDPTimeoutMilliseconds = 0
|
||||
} else {
|
||||
x.UDPTimeoutMilliseconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
default:
|
||||
z.DecStructFieldNotFound(-1, yys59)
|
||||
} // end switch yys59
|
||||
} // end for yyj59
|
||||
if !yyhl59 {
|
||||
r.ReadEnd()
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
var yyj79 int
|
||||
var yyb79 bool
|
||||
var yyhl79 bool = l >= 0
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Kind = ""
|
||||
} else {
|
||||
x.Kind = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.APIVersion = ""
|
||||
} else {
|
||||
x.APIVersion = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.BindAddress = ""
|
||||
} else {
|
||||
x.BindAddress = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.CleanupIPTables = false
|
||||
} else {
|
||||
x.CleanupIPTables = bool(r.DecodeBool())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzBindAddress = ""
|
||||
} else {
|
||||
x.HealthzBindAddress = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzPort = 0
|
||||
} else {
|
||||
x.HealthzPort = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HostnameOverride = ""
|
||||
} else {
|
||||
x.HostnameOverride = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.IPTablesSyncePeriodSeconds = 0
|
||||
} else {
|
||||
x.IPTablesSyncePeriodSeconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIBurst = 0
|
||||
} else {
|
||||
x.KubeAPIBurst = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIQPS = 0
|
||||
} else {
|
||||
x.KubeAPIQPS = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeconfigPath = ""
|
||||
} else {
|
||||
x.KubeconfigPath = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.MasqueradeAll = false
|
||||
} else {
|
||||
x.MasqueradeAll = bool(r.DecodeBool())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Master = ""
|
||||
} else {
|
||||
x.Master = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
if x.OOMScoreAdj != nil {
|
||||
x.OOMScoreAdj = nil
|
||||
}
|
||||
} else {
|
||||
if x.OOMScoreAdj == nil {
|
||||
x.OOMScoreAdj = new(int)
|
||||
}
|
||||
yym94 := z.DecBinary()
|
||||
_ = yym94
|
||||
if false {
|
||||
} else {
|
||||
*((*int)(x.OOMScoreAdj)) = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Mode = ""
|
||||
} else {
|
||||
x.Mode = ProxyMode(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.PortRange = ""
|
||||
} else {
|
||||
x.PortRange = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.ResourceContainer = ""
|
||||
} else {
|
||||
x.ResourceContainer = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.UDPTimeoutMilliseconds = 0
|
||||
} else {
|
||||
x.UDPTimeoutMilliseconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
for {
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
break
|
||||
}
|
||||
z.DecStructFieldNotFound(yyj79-1, "")
|
||||
}
|
||||
r.ReadEnd()
|
||||
}
|
||||
|
||||
func (x ProxyMode) CodecEncodeSelf(e *codec1978.Encoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperEncoder(e)
|
||||
_, _, _ = h, z, r
|
||||
yym99 := z.EncBinary()
|
||||
_ = yym99
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.EncExt(x) {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x))
|
||||
}
|
||||
}
|
||||
|
||||
func (x *ProxyMode) CodecDecodeSelf(d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
yym100 := z.DecBinary()
|
||||
_ = yym100
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.DecExt(x) {
|
||||
} else {
|
||||
*((*string)(x)) = r.DecodeString()
|
||||
}
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
package componentconfig
|
||||
|
||||
import "k8s.io/kubernetes/pkg/api/unversioned"
|
||||
|
||||
type KubeProxyConfiguration struct {
|
||||
unversioned.TypeMeta
|
||||
|
||||
// bindAddress is the IP address for the proxy server to serve on (set to 0.0.0.0 for all interfaces)
|
||||
BindAddress string `json:"bindAddress"`
|
||||
// cleanupIPTables
|
||||
CleanupIPTables bool `json:"cleanupIPTables"`
|
||||
// healthzBindAddress is the IP address for the health check server to serve on, defaulting to 127.0.0.1 (set to 0.0.0.0 for all interfaces)
|
||||
HealthzBindAddress string `json:"healthzBindAddress"`
|
||||
// healthzPort is the port to bind the health check server. Use 0 to disable.
|
||||
HealthzPort int `json:"healthzPort"`
|
||||
// hostnameOverride, if non-empty, will be used as the identity instead of the actual hostname.
|
||||
HostnameOverride string `json:"hostnameOverride"`
|
||||
// iptablesSyncPeriodSeconds is the period that iptables rules are refreshed (e.g. '5s', '1m', '2h22m'). Must be greater than 0.
|
||||
IPTablesSyncePeriodSeconds int `json:"iptablesSyncPeriodSeconds"`
|
||||
// kubeAPIBurst is the burst to use while talking with kubernetes apiserver
|
||||
KubeAPIBurst int `json:"kubeAPIBurst"`
|
||||
// kubeAPIQPS is the max QPS to use while talking with kubernetes apiserver
|
||||
KubeAPIQPS int `json:"kubeAPIQPS"`
|
||||
// kubeconfigPath is the path to the kubeconfig file with authorization information (the master location is set by the master flag).
|
||||
KubeconfigPath string `json:"kubeconfigPath"`
|
||||
// masqueradeAll tells kube-proxy to SNAT everything if using the pure iptables proxy mode.
|
||||
MasqueradeAll bool `json:"masqueradeAll"`
|
||||
// master is the address of the Kubernetes API server (overrides any value in kubeconfig)
|
||||
Master string `json:"master"`
|
||||
// oomScoreAdj is the oom-score-adj value for kube-proxy process. Values must be within the range [-1000, 1000]
|
||||
OOMScoreAdj *int `json:"oomScoreAdj"`
|
||||
// mode specifies which proxy mode to use.
|
||||
Mode ProxyMode `json:"mode"`
|
||||
// portRange is the range of host ports (beginPort-endPort, inclusive) that may be consumed in order to proxy service traffic. If unspecified (0-0) then ports will be randomly chosen.
|
||||
PortRange string `json:"portRange"`
|
||||
// resourceContainer is the bsolute name of the resource-only container to create and run the Kube-proxy in (Default: /kube-proxy).
|
||||
ResourceContainer string `json:"resourceContainer"`
|
||||
// udpTimeoutMilliseconds is how long an idle UDP connection will be kept open (e.g. '250ms', '2s'). Must be greater than 0. Only applicable for proxyMode=userspace.
|
||||
UDPTimeoutMilliseconds int `json:"udpTimeoutMilliseconds"`
|
||||
}
|
||||
|
||||
// Currently two modes of proxying are available: 'userspace' (older, stable) or 'iptables' (experimental). If blank, look at the Node object on the Kubernetes API and respect the 'net.experimental.kubernetes.io/proxy-mode' annotation if provided. Otherwise use the best-available proxy (currently userspace, but may change in future versions). If the iptables proxy is selected, regardless of how, but the system's kernel or iptables versions are insufficient, this always falls back to the userspace proxy.
|
||||
type ProxyMode string
|
||||
|
||||
const (
|
||||
ProxyModeUserspace ProxyMode = "userspace"
|
||||
ProxyModeIPTables ProxyMode = "iptables"
|
||||
)
|
|
@ -0,0 +1,108 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
// DO NOT EDIT. THIS FILE IS AUTO-GENERATED BY $KUBEROOT/hack/update-generated-conversions.sh
|
||||
|
||||
package v1alpha1
|
||||
|
||||
import (
|
||||
reflect "reflect"
|
||||
|
||||
api "k8s.io/kubernetes/pkg/api"
|
||||
componentconfig "k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||
conversion "k8s.io/kubernetes/pkg/conversion"
|
||||
)
|
||||
|
||||
func autoconvert_componentconfig_KubeProxyConfiguration_To_v1alpha1_KubeProxyConfiguration(in *componentconfig.KubeProxyConfiguration, out *KubeProxyConfiguration, s conversion.Scope) error {
|
||||
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
||||
defaulting.(func(*componentconfig.KubeProxyConfiguration))(in)
|
||||
}
|
||||
if err := s.Convert(&in.TypeMeta, &out.TypeMeta, 0); err != nil {
|
||||
return err
|
||||
}
|
||||
out.BindAddress = in.BindAddress
|
||||
out.CleanupIPTables = in.CleanupIPTables
|
||||
out.HealthzBindAddress = in.HealthzBindAddress
|
||||
out.HealthzPort = in.HealthzPort
|
||||
out.HostnameOverride = in.HostnameOverride
|
||||
out.IPTablesSyncePeriodSeconds = in.IPTablesSyncePeriodSeconds
|
||||
out.KubeAPIBurst = in.KubeAPIBurst
|
||||
out.KubeAPIQPS = in.KubeAPIQPS
|
||||
out.KubeconfigPath = in.KubeconfigPath
|
||||
out.MasqueradeAll = in.MasqueradeAll
|
||||
out.Master = in.Master
|
||||
if in.OOMScoreAdj != nil {
|
||||
out.OOMScoreAdj = new(int)
|
||||
*out.OOMScoreAdj = *in.OOMScoreAdj
|
||||
} else {
|
||||
out.OOMScoreAdj = nil
|
||||
}
|
||||
out.Mode = ProxyMode(in.Mode)
|
||||
out.PortRange = in.PortRange
|
||||
out.ResourceContainer = in.ResourceContainer
|
||||
out.UDPTimeoutMilliseconds = in.UDPTimeoutMilliseconds
|
||||
return nil
|
||||
}
|
||||
|
||||
func convert_componentconfig_KubeProxyConfiguration_To_v1alpha1_KubeProxyConfiguration(in *componentconfig.KubeProxyConfiguration, out *KubeProxyConfiguration, s conversion.Scope) error {
|
||||
return autoconvert_componentconfig_KubeProxyConfiguration_To_v1alpha1_KubeProxyConfiguration(in, out, s)
|
||||
}
|
||||
|
||||
func autoconvert_v1alpha1_KubeProxyConfiguration_To_componentconfig_KubeProxyConfiguration(in *KubeProxyConfiguration, out *componentconfig.KubeProxyConfiguration, s conversion.Scope) error {
|
||||
if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
|
||||
defaulting.(func(*KubeProxyConfiguration))(in)
|
||||
}
|
||||
if err := s.Convert(&in.TypeMeta, &out.TypeMeta, 0); err != nil {
|
||||
return err
|
||||
}
|
||||
out.BindAddress = in.BindAddress
|
||||
out.CleanupIPTables = in.CleanupIPTables
|
||||
out.HealthzBindAddress = in.HealthzBindAddress
|
||||
out.HealthzPort = in.HealthzPort
|
||||
out.HostnameOverride = in.HostnameOverride
|
||||
out.IPTablesSyncePeriodSeconds = in.IPTablesSyncePeriodSeconds
|
||||
out.KubeAPIBurst = in.KubeAPIBurst
|
||||
out.KubeAPIQPS = in.KubeAPIQPS
|
||||
out.KubeconfigPath = in.KubeconfigPath
|
||||
out.MasqueradeAll = in.MasqueradeAll
|
||||
out.Master = in.Master
|
||||
if in.OOMScoreAdj != nil {
|
||||
out.OOMScoreAdj = new(int)
|
||||
*out.OOMScoreAdj = *in.OOMScoreAdj
|
||||
} else {
|
||||
out.OOMScoreAdj = nil
|
||||
}
|
||||
out.Mode = componentconfig.ProxyMode(in.Mode)
|
||||
out.PortRange = in.PortRange
|
||||
out.ResourceContainer = in.ResourceContainer
|
||||
out.UDPTimeoutMilliseconds = in.UDPTimeoutMilliseconds
|
||||
return nil
|
||||
}
|
||||
|
||||
func convert_v1alpha1_KubeProxyConfiguration_To_componentconfig_KubeProxyConfiguration(in *KubeProxyConfiguration, out *componentconfig.KubeProxyConfiguration, s conversion.Scope) error {
|
||||
return autoconvert_v1alpha1_KubeProxyConfiguration_To_componentconfig_KubeProxyConfiguration(in, out, s)
|
||||
}
|
||||
|
||||
func init() {
|
||||
err := api.Scheme.AddGeneratedConversionFuncs(
|
||||
autoconvert_componentconfig_KubeProxyConfiguration_To_v1alpha1_KubeProxyConfiguration,
|
||||
autoconvert_v1alpha1_KubeProxyConfiguration_To_componentconfig_KubeProxyConfiguration,
|
||||
)
|
||||
if err != nil {
|
||||
// If one of the conversion functions is malformed, detect it immediately.
|
||||
panic(err)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,70 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
// DO NOT EDIT. THIS FILE IS AUTO-GENERATED BY $KUBEROOT/hack/update-generated-deep-copies.sh.
|
||||
|
||||
package v1alpha1
|
||||
|
||||
import (
|
||||
api "k8s.io/kubernetes/pkg/api"
|
||||
unversioned "k8s.io/kubernetes/pkg/api/unversioned"
|
||||
conversion "k8s.io/kubernetes/pkg/conversion"
|
||||
)
|
||||
|
||||
func deepCopy_unversioned_TypeMeta(in unversioned.TypeMeta, out *unversioned.TypeMeta, c *conversion.Cloner) error {
|
||||
out.Kind = in.Kind
|
||||
out.APIVersion = in.APIVersion
|
||||
return nil
|
||||
}
|
||||
|
||||
func deepCopy_v1alpha1_KubeProxyConfiguration(in KubeProxyConfiguration, out *KubeProxyConfiguration, c *conversion.Cloner) error {
|
||||
if err := deepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil {
|
||||
return err
|
||||
}
|
||||
out.BindAddress = in.BindAddress
|
||||
out.CleanupIPTables = in.CleanupIPTables
|
||||
out.HealthzBindAddress = in.HealthzBindAddress
|
||||
out.HealthzPort = in.HealthzPort
|
||||
out.HostnameOverride = in.HostnameOverride
|
||||
out.IPTablesSyncePeriodSeconds = in.IPTablesSyncePeriodSeconds
|
||||
out.KubeAPIBurst = in.KubeAPIBurst
|
||||
out.KubeAPIQPS = in.KubeAPIQPS
|
||||
out.KubeconfigPath = in.KubeconfigPath
|
||||
out.MasqueradeAll = in.MasqueradeAll
|
||||
out.Master = in.Master
|
||||
if in.OOMScoreAdj != nil {
|
||||
out.OOMScoreAdj = new(int)
|
||||
*out.OOMScoreAdj = *in.OOMScoreAdj
|
||||
} else {
|
||||
out.OOMScoreAdj = nil
|
||||
}
|
||||
out.Mode = in.Mode
|
||||
out.PortRange = in.PortRange
|
||||
out.ResourceContainer = in.ResourceContainer
|
||||
out.UDPTimeoutMilliseconds = in.UDPTimeoutMilliseconds
|
||||
return nil
|
||||
}
|
||||
|
||||
func init() {
|
||||
err := api.Scheme.AddGeneratedDeepCopyFuncs(
|
||||
deepCopy_unversioned_TypeMeta,
|
||||
deepCopy_v1alpha1_KubeProxyConfiguration,
|
||||
)
|
||||
if err != nil {
|
||||
// if one of the deep copy functions is malformed, detect it immediately.
|
||||
panic(err)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
package v1alpha1
|
||||
|
||||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/kubelet/qos"
|
||||
)
|
||||
|
||||
func addDefaultingFuncs() {
|
||||
api.Scheme.AddDefaultingFuncs(
|
||||
func(obj *KubeProxyConfiguration) {
|
||||
if obj.BindAddress == "" {
|
||||
obj.BindAddress = "0.0.0.0"
|
||||
}
|
||||
if obj.HealthzPort == 0 {
|
||||
obj.HealthzPort = 10249
|
||||
}
|
||||
if obj.HealthzBindAddress == "" {
|
||||
obj.HealthzBindAddress = "127.0.0.1"
|
||||
}
|
||||
if obj.OOMScoreAdj == nil {
|
||||
temp := qos.KubeProxyOOMScoreAdj
|
||||
obj.OOMScoreAdj = &temp
|
||||
}
|
||||
if obj.ResourceContainer == "" {
|
||||
obj.ResourceContainer = "/kube-proxy"
|
||||
}
|
||||
if obj.IPTablesSyncePeriodSeconds == 0 {
|
||||
obj.IPTablesSyncePeriodSeconds = 5
|
||||
}
|
||||
},
|
||||
)
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
package v1alpha1
|
||||
|
||||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/runtime"
|
||||
)
|
||||
|
||||
var Codec = runtime.CodecFor(api.Scheme, "componentconfig/v1alpha1")
|
||||
|
||||
func init() {
|
||||
addKnownTypes()
|
||||
addDefaultingFuncs()
|
||||
}
|
||||
|
||||
func addKnownTypes() {
|
||||
api.Scheme.AddKnownTypes("componentconfig/v1alpha1",
|
||||
&KubeProxyConfiguration{},
|
||||
)
|
||||
}
|
||||
|
||||
func (_ *KubeProxyConfiguration) IsAnAPIObject() {}
|
|
@ -0,0 +1,899 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
// ************************************************************
|
||||
// DO NOT EDIT.
|
||||
// THIS FILE IS AUTO-GENERATED BY codecgen.
|
||||
// ************************************************************
|
||||
|
||||
package v1alpha1
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
codec1978 "github.com/ugorji/go/codec"
|
||||
pkg1_unversioned "k8s.io/kubernetes/pkg/api/unversioned"
|
||||
"reflect"
|
||||
"runtime"
|
||||
)
|
||||
|
||||
const (
|
||||
codecSelferC_UTF81234 = 1
|
||||
codecSelferC_RAW1234 = 0
|
||||
codecSelferValueTypeArray1234 = 10
|
||||
codecSelferValueTypeMap1234 = 9
|
||||
)
|
||||
|
||||
var (
|
||||
codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits())
|
||||
codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`)
|
||||
)
|
||||
|
||||
type codecSelfer1234 struct{}
|
||||
|
||||
func init() {
|
||||
if codec1978.GenVersion != 4 {
|
||||
_, file, _, _ := runtime.Caller(0)
|
||||
err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v",
|
||||
4, codec1978.GenVersion, file)
|
||||
panic(err)
|
||||
}
|
||||
if false { // reference the types, but skip this branch at build/run time
|
||||
var v0 pkg1_unversioned.TypeMeta
|
||||
_ = v0
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) CodecEncodeSelf(e *codec1978.Encoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperEncoder(e)
|
||||
_, _, _ = h, z, r
|
||||
if x == nil {
|
||||
r.EncodeNil()
|
||||
} else {
|
||||
yym1 := z.EncBinary()
|
||||
_ = yym1
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.EncExt(x) {
|
||||
} else {
|
||||
yysep2 := !z.EncBinary()
|
||||
yy2arr2 := z.EncBasicHandle().StructToArray
|
||||
var yyq2 [18]bool
|
||||
_, _, _ = yysep2, yyq2, yy2arr2
|
||||
const yyr2 bool = false
|
||||
yyq2[0] = x.Kind != ""
|
||||
yyq2[1] = x.APIVersion != ""
|
||||
if yyr2 || yy2arr2 {
|
||||
r.EncodeArrayStart(18)
|
||||
} else {
|
||||
var yynn2 int = 16
|
||||
for _, b := range yyq2 {
|
||||
if b {
|
||||
yynn2++
|
||||
}
|
||||
}
|
||||
r.EncodeMapStart(yynn2)
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
if yyq2[0] {
|
||||
yym4 := z.EncBinary()
|
||||
_ = yym4
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Kind))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, "")
|
||||
}
|
||||
} else {
|
||||
if yyq2[0] {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kind"))
|
||||
yym5 := z.EncBinary()
|
||||
_ = yym5
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Kind))
|
||||
}
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
if yyq2[1] {
|
||||
yym7 := z.EncBinary()
|
||||
_ = yym7
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, "")
|
||||
}
|
||||
} else {
|
||||
if yyq2[1] {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("apiVersion"))
|
||||
yym8 := z.EncBinary()
|
||||
_ = yym8
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion))
|
||||
}
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym10 := z.EncBinary()
|
||||
_ = yym10
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.BindAddress))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("bindAddress"))
|
||||
yym11 := z.EncBinary()
|
||||
_ = yym11
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.BindAddress))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym13 := z.EncBinary()
|
||||
_ = yym13
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.CleanupIPTables))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("cleanupIPTables"))
|
||||
yym14 := z.EncBinary()
|
||||
_ = yym14
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.CleanupIPTables))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym16 := z.EncBinary()
|
||||
_ = yym16
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HealthzBindAddress))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("healthzBindAddress"))
|
||||
yym17 := z.EncBinary()
|
||||
_ = yym17
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HealthzBindAddress))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym19 := z.EncBinary()
|
||||
_ = yym19
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.HealthzPort))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("healthzPort"))
|
||||
yym20 := z.EncBinary()
|
||||
_ = yym20
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.HealthzPort))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym22 := z.EncBinary()
|
||||
_ = yym22
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HostnameOverride))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("hostnameOverride"))
|
||||
yym23 := z.EncBinary()
|
||||
_ = yym23
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.HostnameOverride))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym25 := z.EncBinary()
|
||||
_ = yym25
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.IPTablesSyncePeriodSeconds))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("iptablesSyncPeriodSeconds"))
|
||||
yym26 := z.EncBinary()
|
||||
_ = yym26
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.IPTablesSyncePeriodSeconds))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym28 := z.EncBinary()
|
||||
_ = yym28
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIBurst))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kubeAPIBurst"))
|
||||
yym29 := z.EncBinary()
|
||||
_ = yym29
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIBurst))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym31 := z.EncBinary()
|
||||
_ = yym31
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIQPS))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kubeAPIQPS"))
|
||||
yym32 := z.EncBinary()
|
||||
_ = yym32
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.KubeAPIQPS))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym34 := z.EncBinary()
|
||||
_ = yym34
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.KubeconfigPath))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("kubeconfigPath"))
|
||||
yym35 := z.EncBinary()
|
||||
_ = yym35
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.KubeconfigPath))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym37 := z.EncBinary()
|
||||
_ = yym37
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.MasqueradeAll))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("masqueradeAll"))
|
||||
yym38 := z.EncBinary()
|
||||
_ = yym38
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeBool(bool(x.MasqueradeAll))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym40 := z.EncBinary()
|
||||
_ = yym40
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Master))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("master"))
|
||||
yym41 := z.EncBinary()
|
||||
_ = yym41
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.Master))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
if x.OOMScoreAdj == nil {
|
||||
r.EncodeNil()
|
||||
} else {
|
||||
yy43 := *x.OOMScoreAdj
|
||||
yym44 := z.EncBinary()
|
||||
_ = yym44
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(yy43))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("oomScoreAdj"))
|
||||
if x.OOMScoreAdj == nil {
|
||||
r.EncodeNil()
|
||||
} else {
|
||||
yy45 := *x.OOMScoreAdj
|
||||
yym46 := z.EncBinary()
|
||||
_ = yym46
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(yy45))
|
||||
}
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
x.Mode.CodecEncodeSelf(e)
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("mode"))
|
||||
x.Mode.CodecEncodeSelf(e)
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym49 := z.EncBinary()
|
||||
_ = yym49
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.PortRange))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("portRange"))
|
||||
yym50 := z.EncBinary()
|
||||
_ = yym50
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.PortRange))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym52 := z.EncBinary()
|
||||
_ = yym52
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.ResourceContainer))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("resourceContainer"))
|
||||
yym53 := z.EncBinary()
|
||||
_ = yym53
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x.ResourceContainer))
|
||||
}
|
||||
}
|
||||
if yyr2 || yy2arr2 {
|
||||
yym55 := z.EncBinary()
|
||||
_ = yym55
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.UDPTimeoutMilliseconds))
|
||||
}
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string("udpTimeoutMilliseconds"))
|
||||
yym56 := z.EncBinary()
|
||||
_ = yym56
|
||||
if false {
|
||||
} else {
|
||||
r.EncodeInt(int64(x.UDPTimeoutMilliseconds))
|
||||
}
|
||||
}
|
||||
if yysep2 {
|
||||
r.EncodeEnd()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) CodecDecodeSelf(d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
yym57 := z.DecBinary()
|
||||
_ = yym57
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.DecExt(x) {
|
||||
} else {
|
||||
if r.IsContainerType(codecSelferValueTypeMap1234) {
|
||||
yyl58 := r.ReadMapStart()
|
||||
if yyl58 == 0 {
|
||||
r.ReadEnd()
|
||||
} else {
|
||||
x.codecDecodeSelfFromMap(yyl58, d)
|
||||
}
|
||||
} else if r.IsContainerType(codecSelferValueTypeArray1234) {
|
||||
yyl58 := r.ReadArrayStart()
|
||||
if yyl58 == 0 {
|
||||
r.ReadEnd()
|
||||
} else {
|
||||
x.codecDecodeSelfFromArray(yyl58, d)
|
||||
}
|
||||
} else {
|
||||
panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
var yys59Slc = z.DecScratchBuffer() // default slice to decode into
|
||||
_ = yys59Slc
|
||||
var yyhl59 bool = l >= 0
|
||||
for yyj59 := 0; ; yyj59++ {
|
||||
if yyhl59 {
|
||||
if yyj59 >= l {
|
||||
break
|
||||
}
|
||||
} else {
|
||||
if r.CheckBreak() {
|
||||
break
|
||||
}
|
||||
}
|
||||
yys59Slc = r.DecodeBytes(yys59Slc, true, true)
|
||||
yys59 := string(yys59Slc)
|
||||
switch yys59 {
|
||||
case "kind":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Kind = ""
|
||||
} else {
|
||||
x.Kind = string(r.DecodeString())
|
||||
}
|
||||
case "apiVersion":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.APIVersion = ""
|
||||
} else {
|
||||
x.APIVersion = string(r.DecodeString())
|
||||
}
|
||||
case "bindAddress":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.BindAddress = ""
|
||||
} else {
|
||||
x.BindAddress = string(r.DecodeString())
|
||||
}
|
||||
case "cleanupIPTables":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.CleanupIPTables = false
|
||||
} else {
|
||||
x.CleanupIPTables = bool(r.DecodeBool())
|
||||
}
|
||||
case "healthzBindAddress":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzBindAddress = ""
|
||||
} else {
|
||||
x.HealthzBindAddress = string(r.DecodeString())
|
||||
}
|
||||
case "healthzPort":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzPort = 0
|
||||
} else {
|
||||
x.HealthzPort = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "hostnameOverride":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HostnameOverride = ""
|
||||
} else {
|
||||
x.HostnameOverride = string(r.DecodeString())
|
||||
}
|
||||
case "iptablesSyncPeriodSeconds":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.IPTablesSyncePeriodSeconds = 0
|
||||
} else {
|
||||
x.IPTablesSyncePeriodSeconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "kubeAPIBurst":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIBurst = 0
|
||||
} else {
|
||||
x.KubeAPIBurst = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "kubeAPIQPS":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIQPS = 0
|
||||
} else {
|
||||
x.KubeAPIQPS = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
case "kubeconfigPath":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeconfigPath = ""
|
||||
} else {
|
||||
x.KubeconfigPath = string(r.DecodeString())
|
||||
}
|
||||
case "masqueradeAll":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.MasqueradeAll = false
|
||||
} else {
|
||||
x.MasqueradeAll = bool(r.DecodeBool())
|
||||
}
|
||||
case "master":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Master = ""
|
||||
} else {
|
||||
x.Master = string(r.DecodeString())
|
||||
}
|
||||
case "oomScoreAdj":
|
||||
if r.TryDecodeAsNil() {
|
||||
if x.OOMScoreAdj != nil {
|
||||
x.OOMScoreAdj = nil
|
||||
}
|
||||
} else {
|
||||
if x.OOMScoreAdj == nil {
|
||||
x.OOMScoreAdj = new(int)
|
||||
}
|
||||
yym74 := z.DecBinary()
|
||||
_ = yym74
|
||||
if false {
|
||||
} else {
|
||||
*((*int)(x.OOMScoreAdj)) = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
}
|
||||
case "mode":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Mode = ""
|
||||
} else {
|
||||
x.Mode = ProxyMode(r.DecodeString())
|
||||
}
|
||||
case "portRange":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.PortRange = ""
|
||||
} else {
|
||||
x.PortRange = string(r.DecodeString())
|
||||
}
|
||||
case "resourceContainer":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.ResourceContainer = ""
|
||||
} else {
|
||||
x.ResourceContainer = string(r.DecodeString())
|
||||
}
|
||||
case "udpTimeoutMilliseconds":
|
||||
if r.TryDecodeAsNil() {
|
||||
x.UDPTimeoutMilliseconds = 0
|
||||
} else {
|
||||
x.UDPTimeoutMilliseconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
default:
|
||||
z.DecStructFieldNotFound(-1, yys59)
|
||||
} // end switch yys59
|
||||
} // end for yyj59
|
||||
if !yyhl59 {
|
||||
r.ReadEnd()
|
||||
}
|
||||
}
|
||||
|
||||
func (x *KubeProxyConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
var yyj79 int
|
||||
var yyb79 bool
|
||||
var yyhl79 bool = l >= 0
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Kind = ""
|
||||
} else {
|
||||
x.Kind = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.APIVersion = ""
|
||||
} else {
|
||||
x.APIVersion = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.BindAddress = ""
|
||||
} else {
|
||||
x.BindAddress = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.CleanupIPTables = false
|
||||
} else {
|
||||
x.CleanupIPTables = bool(r.DecodeBool())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzBindAddress = ""
|
||||
} else {
|
||||
x.HealthzBindAddress = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HealthzPort = 0
|
||||
} else {
|
||||
x.HealthzPort = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.HostnameOverride = ""
|
||||
} else {
|
||||
x.HostnameOverride = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.IPTablesSyncePeriodSeconds = 0
|
||||
} else {
|
||||
x.IPTablesSyncePeriodSeconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIBurst = 0
|
||||
} else {
|
||||
x.KubeAPIBurst = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeAPIQPS = 0
|
||||
} else {
|
||||
x.KubeAPIQPS = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.KubeconfigPath = ""
|
||||
} else {
|
||||
x.KubeconfigPath = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.MasqueradeAll = false
|
||||
} else {
|
||||
x.MasqueradeAll = bool(r.DecodeBool())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Master = ""
|
||||
} else {
|
||||
x.Master = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
if x.OOMScoreAdj != nil {
|
||||
x.OOMScoreAdj = nil
|
||||
}
|
||||
} else {
|
||||
if x.OOMScoreAdj == nil {
|
||||
x.OOMScoreAdj = new(int)
|
||||
}
|
||||
yym94 := z.DecBinary()
|
||||
_ = yym94
|
||||
if false {
|
||||
} else {
|
||||
*((*int)(x.OOMScoreAdj)) = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.Mode = ""
|
||||
} else {
|
||||
x.Mode = ProxyMode(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.PortRange = ""
|
||||
} else {
|
||||
x.PortRange = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.ResourceContainer = ""
|
||||
} else {
|
||||
x.ResourceContainer = string(r.DecodeString())
|
||||
}
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
r.ReadEnd()
|
||||
return
|
||||
}
|
||||
if r.TryDecodeAsNil() {
|
||||
x.UDPTimeoutMilliseconds = 0
|
||||
} else {
|
||||
x.UDPTimeoutMilliseconds = int(r.DecodeInt(codecSelferBitsize1234))
|
||||
}
|
||||
for {
|
||||
yyj79++
|
||||
if yyhl79 {
|
||||
yyb79 = yyj79 > l
|
||||
} else {
|
||||
yyb79 = r.CheckBreak()
|
||||
}
|
||||
if yyb79 {
|
||||
break
|
||||
}
|
||||
z.DecStructFieldNotFound(yyj79-1, "")
|
||||
}
|
||||
r.ReadEnd()
|
||||
}
|
||||
|
||||
func (x ProxyMode) CodecEncodeSelf(e *codec1978.Encoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperEncoder(e)
|
||||
_, _, _ = h, z, r
|
||||
yym99 := z.EncBinary()
|
||||
_ = yym99
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.EncExt(x) {
|
||||
} else {
|
||||
r.EncodeString(codecSelferC_UTF81234, string(x))
|
||||
}
|
||||
}
|
||||
|
||||
func (x *ProxyMode) CodecDecodeSelf(d *codec1978.Decoder) {
|
||||
var h codecSelfer1234
|
||||
z, r := codec1978.GenHelperDecoder(d)
|
||||
_, _, _ = h, z, r
|
||||
yym100 := z.DecBinary()
|
||||
_ = yym100
|
||||
if false {
|
||||
} else if z.HasExtensions() && z.DecExt(x) {
|
||||
} else {
|
||||
*((*string)(x)) = r.DecodeString()
|
||||
}
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
Copyright 2015 The Kubernetes Authors All rights reserved.
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
package v1alpha1
|
||||
|
||||
import "k8s.io/kubernetes/pkg/api/unversioned"
|
||||
|
||||
type KubeProxyConfiguration struct {
|
||||
unversioned.TypeMeta
|
||||
|
||||
// bindAddress is the IP address for the proxy server to serve on (set to 0.0.0.0 for all interfaces)
|
||||
BindAddress string `json:"bindAddress"`
|
||||
// cleanupIPTables
|
||||
CleanupIPTables bool `json:"cleanupIPTables"`
|
||||
// healthzBindAddress is the IP address for the health check server to serve on, defaulting to 127.0.0.1 (set to 0.0.0.0 for all interfaces)
|
||||
HealthzBindAddress string `json:"healthzBindAddress"`
|
||||
// healthzPort is the port to bind the health check server. Use 0 to disable.
|
||||
HealthzPort int `json:"healthzPort"`
|
||||
// hostnameOverride, if non-empty, will be used as the identity instead of the actual hostname.
|
||||
HostnameOverride string `json:"hostnameOverride"`
|
||||
// iptablesSyncPeriodSeconds is the period that iptables rules are refreshed (e.g. '5s', '1m', '2h22m'). Must be greater than 0.
|
||||
IPTablesSyncePeriodSeconds int `json:"iptablesSyncPeriodSeconds"`
|
||||
// kubeAPIBurst is the burst to use while talking with kubernetes apiserver
|
||||
KubeAPIBurst int `json:"kubeAPIBurst"`
|
||||
// kubeAPIQPS is the max QPS to use while talking with kubernetes apiserver
|
||||
KubeAPIQPS int `json:"kubeAPIQPS"`
|
||||
// kubeconfigPath is the path to the kubeconfig file with authorization information (the master location is set by the master flag).
|
||||
KubeconfigPath string `json:"kubeconfigPath"`
|
||||
// masqueradeAll tells kube-proxy to SNAT everything if using the pure iptables proxy mode.
|
||||
MasqueradeAll bool `json:"masqueradeAll"`
|
||||
// master is the address of the Kubernetes API server (overrides any value in kubeconfig)
|
||||
Master string `json:"master"`
|
||||
// oomScoreAdj is the oom-score-adj value for kube-proxy process. Values must be within the range [-1000, 1000]
|
||||
OOMScoreAdj *int `json:"oomScoreAdj"`
|
||||
// mode specifies which proxy mode to use.
|
||||
Mode ProxyMode `json:"mode"`
|
||||
// portRange is the range of host ports (beginPort-endPort, inclusive) that may be consumed in order to proxy service traffic. If unspecified (0-0) then ports will be randomly chosen.
|
||||
PortRange string `json:"portRange"`
|
||||
// resourceContainer is the bsolute name of the resource-only container to create and run the Kube-proxy in (Default: /kube-proxy).
|
||||
ResourceContainer string `json:"resourceContainer"`
|
||||
// udpTimeoutMilliseconds is how long an idle UDP connection will be kept open (e.g. '250ms', '2s'). Must be greater than 0. Only applicable for proxyMode=userspace.
|
||||
UDPTimeoutMilliseconds int `json:"udpTimeoutMilliseconds"`
|
||||
}
|
||||
|
||||
// Currently two modes of proxying are available: 'userspace' (older, stable) or 'iptables' (experimental). If blank, look at the Node object on the Kubernetes API and respect the 'net.experimental.kubernetes.io/proxy-mode' annotation if provided. Otherwise use the best-available proxy (currently userspace, but may change in future versions). If the iptables proxy is selected, regardless of how, but the system's kernel or iptables versions are insufficient, this always falls back to the userspace proxy.
|
||||
type ProxyMode string
|
||||
|
||||
const (
|
||||
ProxyModeUserspace ProxyMode = "userspace"
|
||||
ProxyModeIPTables ProxyMode = "iptables"
|
||||
)
|
|
@ -19,5 +19,6 @@ package unversioned
|
|||
// These imports are the API groups the client will support.
|
||||
import (
|
||||
_ "k8s.io/kubernetes/pkg/api/install"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig/install"
|
||||
_ "k8s.io/kubernetes/pkg/apis/extensions/install"
|
||||
)
|
||||
|
|
|
@ -19,5 +19,6 @@ package master
|
|||
// These imports are the API groups the API server will support.
|
||||
import (
|
||||
_ "k8s.io/kubernetes/pkg/api/install"
|
||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig/install"
|
||||
_ "k8s.io/kubernetes/pkg/apis/extensions/install"
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue