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