pass runtime.Scheme as parameter to AddToScheme

This commit is contained in:
Chao Xu
2015-12-23 22:55:06 -08:00
parent 2b5b708b70
commit ad484c79f7
20 changed files with 82 additions and 78 deletions

View File

@@ -97,12 +97,12 @@ func interfacesFor(version unversioned.GroupVersion) (*meta.VersionInterfaces, e
func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) { func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
// add the internal version to Scheme // add the internal version to Scheme
testgroup.AddToScheme() testgroup.AddToScheme(api.Scheme)
// add the enabled external versions to Scheme // add the enabled external versions to Scheme
for _, v := range externalVersions { for _, v := range externalVersions {
switch v { switch v {
case v1.SchemeGroupVersion: case v1.SchemeGroupVersion:
v1.AddToScheme() v1.AddToScheme(api.Scheme)
} }
} }
} }

View File

@@ -19,23 +19,24 @@ package testgroup
import ( import (
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/runtime"
) )
var SchemeGroupVersion = unversioned.GroupVersion{Group: "testgroup", Version: ""} var SchemeGroupVersion = unversioned.GroupVersion{Group: "testgroup", Version: ""}
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
// Add the API to Scheme. // Add the API to Scheme.
addKnownTypes() addKnownTypes(scheme)
} }
// Adds the list of known types to api.Scheme. // Adds the list of known types to api.Scheme.
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&TestType{}, &TestType{},
&TestTypeList{}, &TestTypeList{},
) )
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&api.ListOptions{}) &api.ListOptions{})
} }

View File

@@ -27,19 +27,19 @@ var SchemeGroupVersion = unversioned.GroupVersion{Group: "testgroup", Version: "
var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion) var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion)
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
// Add the API to Scheme. // Add the API to Scheme.
addKnownTypes() addKnownTypes(scheme)
} }
// Adds the list of known types to api.Scheme. // Adds the list of known types to api.Scheme.
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&TestType{}, &TestType{},
&TestTypeList{}, &TestTypeList{},
) )
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&v1.ListOptions{}) &v1.ListOptions{})
} }

View File

@@ -142,7 +142,7 @@ func interfacesFor(version unversioned.GroupVersion) (*meta.VersionInterfaces, e
func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) { func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
// add the internal version to Scheme // add the internal version to Scheme
api.AddToScheme() api.AddToScheme(api.Scheme)
// add the enabled external versions to Scheme // add the enabled external versions to Scheme
for _, v := range externalVersions { for _, v := range externalVersions {
if !registered.IsEnabledVersion(v) { if !registered.IsEnabledVersion(v) {
@@ -151,7 +151,7 @@ func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
} }
switch v { switch v {
case v1.SchemeGroupVersion: case v1.SchemeGroupVersion:
v1.AddToScheme() v1.AddToScheme(api.Scheme)
} }
} }
} }

View File

@@ -41,8 +41,8 @@ func Resource(resource string) unversioned.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource() return SchemeGroupVersion.WithResource(resource).GroupResource()
} }
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&Pod{}, &Pod{},
&PodList{}, &PodList{},
&PodStatusResult{}, &PodStatusResult{},
@@ -86,14 +86,14 @@ func AddToScheme() {
&RangeAllocation{}, &RangeAllocation{},
) )
// Add the Unversioned types to Scheme. // Add the Unversioned types to scheme.
// TODO this should not be done here // TODO this should not be done here
Scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.ExportOptions{}) scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.ExportOptions{})
Scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.Status{}) scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.Status{})
Scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIVersions{}) scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIVersions{})
Scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIGroupList{}) scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIGroupList{})
Scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIGroup{}) scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIGroup{})
Scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIResourceList{}) scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.APIResourceList{})
} }
func (obj *Pod) GetObjectMeta() meta.Object { return &obj.ObjectMeta } func (obj *Pod) GetObjectMeta() meta.Object { return &obj.ObjectMeta }

View File

@@ -22,6 +22,7 @@ import (
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/conversion" "k8s.io/kubernetes/pkg/conversion"
"k8s.io/kubernetes/pkg/runtime"
) )
const ( const (
@@ -32,9 +33,9 @@ const (
mirrorAnnotationValue_1_0 = "mirror" mirrorAnnotationValue_1_0 = "mirror"
) )
func addConversionFuncs() { func addConversionFuncs(scheme *runtime.Scheme) {
// Add non-generated conversion functions // Add non-generated conversion functions
err := api.Scheme.AddConversionFuncs( err := scheme.AddConversionFuncs(
convert_api_Pod_To_v1_Pod, convert_api_Pod_To_v1_Pod,
convert_api_PodSpec_To_v1_PodSpec, convert_api_PodSpec_To_v1_PodSpec,
convert_api_ReplicationControllerSpec_To_v1_ReplicationControllerSpec, convert_api_ReplicationControllerSpec_To_v1_ReplicationControllerSpec,

View File

@@ -17,14 +17,14 @@ limitations under the License.
package v1 package v1
import ( import (
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/util" "k8s.io/kubernetes/pkg/util"
"k8s.io/kubernetes/pkg/util/intstr" "k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/kubernetes/pkg/util/parsers" "k8s.io/kubernetes/pkg/util/parsers"
) )
func addDefaultingFuncs() { func addDefaultingFuncs(scheme *runtime.Scheme) {
api.Scheme.AddDefaultingFuncs( scheme.AddDefaultingFuncs(
func(obj *PodExecOptions) { func(obj *PodExecOptions) {
obj.Stdout = true obj.Stdout = true
obj.Stderr = true obj.Stderr = true

View File

@@ -31,16 +31,16 @@ var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1
// Codec encodes internal objects to the v1 scheme // Codec encodes internal objects to the v1 scheme
var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion) var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion)
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
// Add the API to Scheme. // Add the API to Scheme.
addKnownTypes() addKnownTypes(scheme)
addConversionFuncs() addConversionFuncs(scheme)
addDefaultingFuncs() addDefaultingFuncs(scheme)
} }
// Adds the list of known types to api.Scheme. // Adds the list of known types to api.Scheme.
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&Pod{}, &Pod{},
&PodList{}, &PodList{},
&PodStatusResult{}, &PodStatusResult{},
@@ -86,7 +86,7 @@ func addKnownTypes() {
) )
// Add common types // Add common types
api.Scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.Status{}) scheme.AddKnownTypes(SchemeGroupVersion, &unversioned.Status{})
} }
func (obj *Pod) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta } func (obj *Pod) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }

View File

@@ -119,7 +119,7 @@ func interfacesFor(version unversioned.GroupVersion) (*meta.VersionInterfaces, e
func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) { func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
// add the internal version to Scheme // add the internal version to Scheme
componentconfig.AddToScheme() componentconfig.AddToScheme(api.Scheme)
// add the enabled external versions to Scheme // add the enabled external versions to Scheme
for _, v := range externalVersions { for _, v := range externalVersions {
if !registered.IsEnabledVersion(v) { if !registered.IsEnabledVersion(v) {
@@ -128,7 +128,7 @@ func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
} }
switch v { switch v {
case v1alpha1.SchemeGroupVersion: case v1alpha1.SchemeGroupVersion:
v1alpha1.AddToScheme() v1alpha1.AddToScheme(api.Scheme)
} }
} }
} }

View File

@@ -17,12 +17,12 @@ limitations under the License.
package componentconfig package componentconfig
import ( import (
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/runtime"
) )
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
addKnownTypes() addKnownTypes(scheme)
} }
// GroupName is the group name use in this package // GroupName is the group name use in this package
@@ -41,9 +41,9 @@ func Resource(resource string) unversioned.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource() return SchemeGroupVersion.WithResource(resource).GroupResource()
} }
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
// TODO this will get cleaned up with the scheme types are fixed // TODO this will get cleaned up with the scheme types are fixed
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&KubeProxyConfiguration{}, &KubeProxyConfiguration{},
) )
} }

View File

@@ -17,12 +17,12 @@ limitations under the License.
package v1alpha1 package v1alpha1
import ( import (
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/kubelet/qos" "k8s.io/kubernetes/pkg/kubelet/qos"
"k8s.io/kubernetes/pkg/runtime"
) )
func addDefaultingFuncs() { func addDefaultingFuncs(scheme *runtime.Scheme) {
api.Scheme.AddDefaultingFuncs( scheme.AddDefaultingFuncs(
func(obj *KubeProxyConfiguration) { func(obj *KubeProxyConfiguration) {
if obj.BindAddress == "" { if obj.BindAddress == "" {
obj.BindAddress = "0.0.0.0" obj.BindAddress = "0.0.0.0"

View File

@@ -30,13 +30,13 @@ var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1
var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion) var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion)
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
addKnownTypes() addKnownTypes(scheme)
addDefaultingFuncs() addDefaultingFuncs(scheme)
} }
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&KubeProxyConfiguration{}, &KubeProxyConfiguration{},
) )
} }

View File

@@ -119,7 +119,7 @@ func interfacesFor(version unversioned.GroupVersion) (*meta.VersionInterfaces, e
func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) { func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
// add the internal version to Scheme // add the internal version to Scheme
extensions.AddToScheme() extensions.AddToScheme(api.Scheme)
// add the enabled external versions to Scheme // add the enabled external versions to Scheme
for _, v := range externalVersions { for _, v := range externalVersions {
if !registered.IsEnabledVersion(v) { if !registered.IsEnabledVersion(v) {
@@ -128,7 +128,7 @@ func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
} }
switch v { switch v {
case v1beta1.SchemeGroupVersion: case v1beta1.SchemeGroupVersion:
v1beta1.AddToScheme() v1beta1.AddToScheme(api.Scheme)
} }
} }
} }

View File

@@ -19,6 +19,7 @@ package extensions
import ( import (
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/runtime"
) )
// GroupName is the group name use in this package // GroupName is the group name use in this package
@@ -37,15 +38,15 @@ func Resource(resource string) unversioned.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource() return SchemeGroupVersion.WithResource(resource).GroupResource()
} }
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
// Add the API to Scheme. // Add the API to Scheme.
addKnownTypes() addKnownTypes(scheme)
} }
// Adds the list of known types to api.Scheme. // Adds the list of known types to api.Scheme.
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
// TODO this gets cleaned up when the types are fixed // TODO this gets cleaned up when the types are fixed
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&ClusterAutoscaler{}, &ClusterAutoscaler{},
&ClusterAutoscalerList{}, &ClusterAutoscalerList{},
&Deployment{}, &Deployment{},

View File

@@ -23,12 +23,13 @@ import (
v1 "k8s.io/kubernetes/pkg/api/v1" v1 "k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/conversion" "k8s.io/kubernetes/pkg/conversion"
"k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/util/intstr" "k8s.io/kubernetes/pkg/util/intstr"
) )
func addConversionFuncs() { func addConversionFuncs(scheme *runtime.Scheme) {
// Add non-generated conversion functions // Add non-generated conversion functions
err := api.Scheme.AddConversionFuncs( err := scheme.AddConversionFuncs(
convert_api_PodSpec_To_v1_PodSpec, convert_api_PodSpec_To_v1_PodSpec,
convert_v1_PodSpec_To_api_PodSpec, convert_v1_PodSpec_To_api_PodSpec,
convert_extensions_DeploymentSpec_To_v1beta1_DeploymentSpec, convert_extensions_DeploymentSpec_To_v1beta1_DeploymentSpec,

View File

@@ -17,12 +17,12 @@ limitations under the License.
package v1beta1 package v1beta1
import ( import (
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/util/intstr" "k8s.io/kubernetes/pkg/util/intstr"
) )
func addDefaultingFuncs() { func addDefaultingFuncs(scheme *runtime.Scheme) {
api.Scheme.AddDefaultingFuncs( scheme.AddDefaultingFuncs(
func(obj *APIVersion) { func(obj *APIVersion) {
if len(obj.APIGroup) == 0 { if len(obj.APIGroup) == 0 {
obj.APIGroup = GroupName obj.APIGroup = GroupName

View File

@@ -31,15 +31,15 @@ var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1
var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion) var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion)
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
addKnownTypes() addKnownTypes(scheme)
addDefaultingFuncs() addDefaultingFuncs(scheme)
addConversionFuncs() addConversionFuncs(scheme)
} }
// Adds the list of known types to api.Scheme. // Adds the list of known types to api.Scheme.
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&ClusterAutoscaler{}, &ClusterAutoscaler{},
&ClusterAutoscalerList{}, &ClusterAutoscalerList{},
&Deployment{}, &Deployment{},

View File

@@ -119,7 +119,7 @@ func interfacesFor(version unversioned.GroupVersion) (*meta.VersionInterfaces, e
func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) { func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
// add the internal version to Scheme // add the internal version to Scheme
metrics.AddToScheme() metrics.AddToScheme(api.Scheme)
// add the enabled external versions to Scheme // add the enabled external versions to Scheme
for _, v := range externalVersions { for _, v := range externalVersions {
if !registered.IsEnabledVersion(v) { if !registered.IsEnabledVersion(v) {
@@ -128,7 +128,7 @@ func addVersionsToScheme(externalVersions ...unversioned.GroupVersion) {
} }
switch v { switch v {
case v1alpha1.SchemeGroupVersion: case v1alpha1.SchemeGroupVersion:
v1alpha1.AddToScheme() v1alpha1.AddToScheme(api.Scheme)
} }
} }
} }

View File

@@ -17,13 +17,13 @@ limitations under the License.
package metrics package metrics
import ( import (
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/runtime"
) )
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
// Add the API to Scheme. // Add the API to Scheme.
addKnownTypes() addKnownTypes(scheme)
} }
// GroupName is the group name use in this package // GroupName is the group name use in this package
@@ -43,9 +43,9 @@ func Resource(resource string) unversioned.GroupResource {
} }
// Adds the list of known types to api.Scheme. // Adds the list of known types to api.Scheme.
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
// TODO this will get cleaned up with the scheme types are fixed // TODO this will get cleaned up with the scheme types are fixed
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&RawNode{}, &RawNode{},
&RawPod{}, &RawPod{},
) )

View File

@@ -31,14 +31,14 @@ var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1
var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion) var Codec = runtime.CodecFor(api.Scheme, SchemeGroupVersion)
func AddToScheme() { func AddToScheme(scheme *runtime.Scheme) {
// Add the API to Scheme. // Add the API to Scheme.
addKnownTypes() addKnownTypes(scheme)
} }
// Adds the list of known types to api.Scheme. // Adds the list of known types to api.Scheme.
func addKnownTypes() { func addKnownTypes(scheme *runtime.Scheme) {
api.Scheme.AddKnownTypes(SchemeGroupVersion, scheme.AddKnownTypes(SchemeGroupVersion,
&RawNode{}, &RawNode{},
&RawPod{}, &RawPod{},
&v1.DeleteOptions{}, &v1.DeleteOptions{},