Commit 1d589600 authored by xiangpengzhao's avatar xiangpengzhao

Use global Scheme for API group.

parent 2b938b98
...@@ -164,16 +164,11 @@ func AddFlags(options *Options, fs *pflag.FlagSet) { ...@@ -164,16 +164,11 @@ func AddFlags(options *Options, fs *pflag.FlagSet) {
} }
func NewOptions() (*Options, error) { func NewOptions() (*Options, error) {
scheme, codecs, err := scheme.NewSchemeAndCodecs()
if err != nil {
return nil, err
}
o := &Options{ o := &Options{
config: new(proxyconfig.KubeProxyConfiguration), config: new(proxyconfig.KubeProxyConfiguration),
healthzPort: ports.ProxyHealthzPort, healthzPort: ports.ProxyHealthzPort,
scheme: scheme, scheme: scheme.Scheme,
codecs: *codecs, codecs: scheme.Codecs,
} }
return o, nil return o, nil
......
...@@ -17,24 +17,29 @@ limitations under the License. ...@@ -17,24 +17,29 @@ limitations under the License.
package scheme package scheme
import ( import (
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
"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/proxyconfig"
"k8s.io/kubernetes/pkg/proxy/apis/proxyconfig/v1alpha1" "k8s.io/kubernetes/pkg/proxy/apis/proxyconfig/v1alpha1"
) )
// Utility functions for the Kube-proxy's "kubeproxy.k8s.io" API group var (
// Scheme defines methods for serializing and deserializing API objects.
// NewSchemeAndCodecs is a utility funciton that returns a Scheme and CodecFactory Scheme = runtime.NewScheme()
// that understand the types in the "kubeproxy.k8s.io" API group. // Codecs provides methods for retrieving codecs and serializers for specific
func NewSchemeAndCodecs() (*runtime.Scheme, *serializer.CodecFactory, error) { // versions and content types.
scheme := runtime.NewScheme() Codecs = serializer.NewCodecFactory(Scheme)
if err := proxyconfig.AddToScheme(scheme); err != nil { )
return nil, nil, err
} func init() {
if err := v1alpha1.AddToScheme(scheme); err != nil { v1.AddToGroupVersion(Scheme, schema.GroupVersion{Version: "v1"})
return nil, nil, err AddToScheme(Scheme)
} }
codecs := serializer.NewCodecFactory(scheme)
return scheme, &codecs, nil // AddToScheme adds the types of this group into the given scheme.
func AddToScheme(scheme *runtime.Scheme) {
v1alpha1.AddToScheme(scheme)
proxyconfig.AddToScheme(scheme)
} }
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