Browse code

Switch to new SchemeBuilder registration

Clayton Coleman authored on 2016/09/02 12:12:36
Showing 62 changed files
... ...
@@ -21,13 +21,13 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&Role{},
33 33
 		&RoleBinding{},
... ...
@@ -56,4 +56,5 @@ func addKnownTypes(scheme *runtime.Scheme) {
56 56
 		&ClusterRoleBindingList{},
57 57
 		&ClusterRoleList{},
58 58
 	)
59
+	return nil
59 60
 }
... ...
@@ -340,7 +340,7 @@ func Convert_api_ClusterRoleBindingsByName_To_v1_NamedClusterRoleBindings(in *ne
340 340
 	return nil
341 341
 }
342 342
 
343
-func addConversionFuncs(scheme *runtime.Scheme) {
343
+func addConversionFuncs(scheme *runtime.Scheme) error {
344 344
 	err := scheme.AddConversionFuncs(
345 345
 		Convert_v1_SubjectAccessReview_To_api_SubjectAccessReview,
346 346
 		Convert_api_SubjectAccessReview_To_v1_SubjectAccessReview,
... ...
@@ -369,44 +369,45 @@ func addConversionFuncs(scheme *runtime.Scheme) {
369 369
 	)
370 370
 	if err != nil {
371 371
 		// If one of the conversion functions is malformed, detect it immediately.
372
-		panic(err)
372
+		return err
373 373
 	}
374 374
 
375 375
 	if err := scheme.AddFieldLabelConversionFunc("v1", "ClusterPolicy",
376 376
 		oapi.GetFieldLabelConversionFunc(newer.ClusterPolicyToSelectableFields(&newer.ClusterPolicy{}), nil),
377 377
 	); err != nil {
378
-		panic(err)
378
+		return err
379 379
 	}
380 380
 
381 381
 	if err := scheme.AddFieldLabelConversionFunc("v1", "ClusterPolicyBinding",
382 382
 		oapi.GetFieldLabelConversionFunc(newer.ClusterPolicyBindingToSelectableFields(&newer.ClusterPolicyBinding{}), nil),
383 383
 	); err != nil {
384
-		panic(err)
384
+		return err
385 385
 	}
386 386
 
387 387
 	if err := scheme.AddFieldLabelConversionFunc("v1", "Policy",
388 388
 		oapi.GetFieldLabelConversionFunc(newer.PolicyToSelectableFields(&newer.Policy{}), nil),
389 389
 	); err != nil {
390
-		panic(err)
390
+		return err
391 391
 	}
392 392
 
393 393
 	if err := scheme.AddFieldLabelConversionFunc("v1", "PolicyBinding",
394 394
 		oapi.GetFieldLabelConversionFunc(newer.PolicyBindingToSelectableFields(&newer.PolicyBinding{}), nil),
395 395
 	); err != nil {
396
-		panic(err)
396
+		return err
397 397
 	}
398 398
 
399 399
 	if err := scheme.AddFieldLabelConversionFunc("v1", "Role",
400 400
 		oapi.GetFieldLabelConversionFunc(newer.RoleToSelectableFields(&newer.Role{}), nil),
401 401
 	); err != nil {
402
-		panic(err)
402
+		return err
403 403
 	}
404 404
 
405 405
 	if err := scheme.AddFieldLabelConversionFunc("v1", "RoleBinding",
406 406
 		oapi.GetFieldLabelConversionFunc(newer.RoleBindingToSelectableFields(&newer.RoleBinding{}), nil),
407 407
 	); err != nil {
408
-		panic(err)
408
+		return err
409 409
 	}
410
+	return nil
410 411
 }
411 412
 
412 413
 var _ runtime.NestedObjectDecoder = &PolicyRule{}
... ...
@@ -26,11 +26,8 @@ func SetDefaults_PolicyRule(obj *PolicyRule) {
26 26
 	}
27 27
 }
28 28
 
29
-func addDefaultingFuncs(scheme *runtime.Scheme) {
30
-	err := scheme.AddDefaultingFuncs(
29
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
30
+	return scheme.AddDefaultingFuncs(
31 31
 		SetDefaults_PolicyRule,
32 32
 	)
33
-	if err != nil {
34
-		panic(err)
35
-	}
36 33
 }
... ...
@@ -10,14 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addConversionFuncs(scheme)
16
-	addDefaultingFuncs(scheme)
17
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs, addDefaultingFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
18 17
 
19 18
 // Adds the list of known types to api.Scheme.
20
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
21 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
22 21
 		&Role{},
23 22
 		&RoleBinding{},
... ...
@@ -46,4 +45,5 @@ func addKnownTypes(scheme *runtime.Scheme) {
46 46
 		&ClusterRoleBindingList{},
47 47
 		&ClusterRoleList{},
48 48
 	)
49
+	return nil
49 50
 }
... ...
@@ -18,15 +18,17 @@ func Resource(resource string) unversioned.GroupResource {
18 18
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
19 19
 }
20 20
 
21
-func AddToScheme(scheme *runtime.Scheme) {
22
-	addKnownTypes(scheme)
23
-}
21
+var (
22
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
23
+	AddToScheme   = SchemeBuilder.AddToScheme
24
+)
24 25
 
25 26
 // Adds the list of known types to api.Scheme.
26
-func addKnownTypes(scheme *runtime.Scheme) {
27
+func addKnownTypes(scheme *runtime.Scheme) error {
27 28
 	scheme.AddKnownTypes(SchemeGroupVersion,
28 29
 		&BuildDefaultsConfig{},
29 30
 	)
31
+	return nil
30 32
 }
31 33
 
32 34
 func (obj *BuildDefaultsConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -8,15 +8,17 @@ import (
8 8
 // SchemeGroupVersion is group version used to register these objects
9 9
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: "v1"}
10 10
 
11
-func AddToScheme(scheme *runtime.Scheme) {
12
-	addKnownTypes(scheme)
13
-}
11
+var (
12
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
13
+	AddToScheme   = SchemeBuilder.AddToScheme
14
+)
14 15
 
15 16
 // Adds the list of known types to api.Scheme.
16
-func addKnownTypes(scheme *runtime.Scheme) {
17
+func addKnownTypes(scheme *runtime.Scheme) error {
17 18
 	scheme.AddKnownTypes(SchemeGroupVersion,
18 19
 		&BuildDefaultsConfig{},
19 20
 	)
21
+	return nil
20 22
 }
21 23
 
22 24
 func (obj *BuildDefaultsConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -18,15 +18,17 @@ func Resource(resource string) unversioned.GroupResource {
18 18
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
19 19
 }
20 20
 
21
-func AddToScheme(scheme *runtime.Scheme) {
22
-	addKnownTypes(scheme)
23
-}
21
+var (
22
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
23
+	AddToScheme   = SchemeBuilder.AddToScheme
24
+)
24 25
 
25 26
 // Adds the list of known types to api.Scheme.
26
-func addKnownTypes(scheme *runtime.Scheme) {
27
+func addKnownTypes(scheme *runtime.Scheme) error {
27 28
 	scheme.AddKnownTypes(SchemeGroupVersion,
28 29
 		&BuildOverridesConfig{},
29 30
 	)
31
+	return nil
30 32
 }
31 33
 
32 34
 func (obj *BuildOverridesConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -8,15 +8,17 @@ import (
8 8
 // SchemeGroupVersion is group version used to register these objects
9 9
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: "v1"}
10 10
 
11
-func AddToScheme(scheme *runtime.Scheme) {
12
-	addKnownTypes(scheme)
13
-}
11
+var (
12
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
13
+	AddToScheme   = SchemeBuilder.AddToScheme
14
+)
14 15
 
15 16
 // Adds the list of known types to api.Scheme.
16
-func addKnownTypes(scheme *runtime.Scheme) {
17
+func addKnownTypes(scheme *runtime.Scheme) error {
17 18
 	scheme.AddKnownTypes(SchemeGroupVersion,
18 19
 		&BuildOverridesConfig{},
19 20
 	)
21
+	return nil
20 22
 }
21 23
 
22 24
 func (obj *BuildOverridesConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -21,13 +21,13 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&Build{},
33 33
 		&BuildList{},
... ...
@@ -38,6 +38,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
38 38
 		&BuildLogOptions{},
39 39
 		&BinaryBuildRequestOptions{},
40 40
 	)
41
+	return nil
41 42
 }
42 43
 
43 44
 func (obj *Build) GetObjectKind() unversioned.ObjectKind                     { return &obj.TypeMeta }
... ...
@@ -150,8 +150,8 @@ func Convert_api_BuildStrategy_To_v1_BuildStrategy(in *newer.BuildStrategy, out
150 150
 	return nil
151 151
 }
152 152
 
153
-func addConversionFuncs(scheme *runtime.Scheme) {
154
-	scheme.AddConversionFuncs(
153
+func addConversionFuncs(scheme *runtime.Scheme) error {
154
+	if err := scheme.AddConversionFuncs(
155 155
 		Convert_v1_BuildConfig_To_api_BuildConfig,
156 156
 		Convert_api_BuildConfig_To_v1_BuildConfig,
157 157
 		Convert_v1_SourceBuildStrategy_To_api_SourceBuildStrategy,
... ...
@@ -170,17 +170,20 @@ func addConversionFuncs(scheme *runtime.Scheme) {
170 170
 		Convert_api_BuildSource_To_v1_BuildSource,
171 171
 		Convert_v1_BuildStrategy_To_api_BuildStrategy,
172 172
 		Convert_api_BuildStrategy_To_v1_BuildStrategy,
173
-	)
173
+	); err != nil {
174
+		return err
175
+	}
174 176
 
175 177
 	if err := scheme.AddFieldLabelConversionFunc("v1", "Build",
176 178
 		oapi.GetFieldLabelConversionFunc(newer.BuildToSelectableFields(&newer.Build{}), map[string]string{"name": "metadata.name"}),
177 179
 	); err != nil {
178
-		panic(err)
180
+		return err
179 181
 	}
180 182
 
181 183
 	if err := scheme.AddFieldLabelConversionFunc("v1", "BuildConfig",
182 184
 		oapi.GetFieldLabelConversionFunc(newer.BuildConfigToSelectableFields(&newer.BuildConfig{}), map[string]string{"name": "metadata.name"}),
183 185
 	); err != nil {
184
-		panic(err)
186
+		return err
185 187
 	}
188
+	return nil
186 189
 }
... ...
@@ -44,8 +44,8 @@ func SetDefaults_BuildTriggerPolicy(obj *BuildTriggerPolicy) {
44 44
 	}
45 45
 }
46 46
 
47
-func addDefaultingFuncs(scheme *runtime.Scheme) {
48
-	err := scheme.AddDefaultingFuncs(
47
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
48
+	return scheme.AddDefaultingFuncs(
49 49
 		SetDefaults_BuildConfigSpec,
50 50
 		SetDefaults_BuildSource,
51 51
 		SetDefaults_BuildStrategy,
... ...
@@ -54,7 +54,4 @@ func addDefaultingFuncs(scheme *runtime.Scheme) {
54 54
 		SetDefaults_CustomBuildStrategy,
55 55
 		SetDefaults_BuildTriggerPolicy,
56 56
 	)
57
-	if err != nil {
58
-		panic(err)
59
-	}
60 57
 }
... ...
@@ -10,14 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addDefaultingFuncs(scheme)
16
-	addConversionFuncs(scheme)
17
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs, addDefaultingFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
18 17
 
19 18
 // Adds the list of known types to api.Scheme.
20
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
21 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
22 21
 		&Build{},
23 22
 		&BuildList{},
... ...
@@ -28,6 +27,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
28 28
 		&BuildLogOptions{},
29 29
 		&BinaryBuildRequestOptions{},
30 30
 	)
31
+	return nil
31 32
 }
32 33
 
33 34
 func (obj *Build) GetObjectKind() unversioned.ObjectKind                     { return &obj.TypeMeta }
... ...
@@ -25,15 +25,15 @@ func Resource(resource string) unversioned.GroupResource {
25 25
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
26 26
 }
27 27
 
28
-func AddToScheme(scheme *runtime.Scheme) {
29
-	// Add the API to Scheme.
30
-	addKnownTypes(scheme)
31
-}
28
+var (
29
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
30
+	AddToScheme   = SchemeBuilder.AddToScheme
31
+)
32 32
 
33 33
 // Adds the list of known types to api.Scheme.
34
-func addKnownTypes(scheme *runtime.Scheme) {
34
+func addKnownTypes(scheme *runtime.Scheme) error {
35 35
 	if err := scheme.AddIgnoredConversionType(&unversioned.TypeMeta{}, &unversioned.TypeMeta{}); err != nil {
36
-		panic(err)
36
+		return err
37 37
 	}
38 38
 	scheme.AddKnownTypes(SchemeGroupVersion,
39 39
 		&MasterConfig{},
... ...
@@ -56,4 +56,5 @@ func addKnownTypes(scheme *runtime.Scheme) {
56 56
 
57 57
 		&DefaultAdmissionConfig{},
58 58
 	)
59
+	return nil
59 60
 }
... ...
@@ -11,8 +11,8 @@ import (
11 11
 	"github.com/openshift/origin/pkg/cmd/server/bootstrappolicy"
12 12
 )
13 13
 
14
-func addDefaultingFuncs(scheme *runtime.Scheme) {
15
-	err := scheme.AddDefaultingFuncs(
14
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
15
+	return scheme.AddDefaultingFuncs(
16 16
 		func(obj *MasterConfig) {
17 17
 			if len(obj.APILevels) == 0 {
18 18
 				obj.APILevels = internal.DefaultOpenShiftAPILevels
... ...
@@ -212,14 +212,10 @@ func addDefaultingFuncs(scheme *runtime.Scheme) {
212 212
 			}
213 213
 		},
214 214
 	)
215
-	if err != nil {
216
-		// If one of the conversion functions is malformed, detect it immediately.
217
-		panic(err)
218
-	}
219 215
 }
220 216
 
221
-func addConversionFuncs(scheme *runtime.Scheme) {
222
-	err := scheme.AddConversionFuncs(
217
+func addConversionFuncs(scheme *runtime.Scheme) error {
218
+	return scheme.AddConversionFuncs(
223 219
 		convert_runtime_Object_To_runtime_RawExtension,
224 220
 		convert_runtime_RawExtension_To_runtime_Object,
225 221
 
... ...
@@ -336,10 +332,6 @@ func addConversionFuncs(scheme *runtime.Scheme) {
336 336
 		api.Convert_bool_To_Pointer_bool,
337 337
 		api.Convert_Pointer_bool_To_bool,
338 338
 	)
339
-	if err != nil {
340
-		// If one of the conversion functions is malformed, detect it immediately.
341
-		panic(err)
342
-	}
343 339
 }
344 340
 
345 341
 // convert_runtime_Object_To_runtime_RawExtension attempts to convert runtime.Objects to the appropriate target.
... ...
@@ -10,14 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addDefaultingFuncs(scheme)
16
-	addConversionFuncs(scheme)
17
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs, addDefaultingFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
18 17
 
19 18
 // Adds the list of known types to api.Scheme.
20
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
21 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
22 21
 		&MasterConfig{},
23 22
 		&NodeConfig{},
... ...
@@ -39,4 +38,5 @@ func addKnownTypes(scheme *runtime.Scheme) {
39 39
 
40 40
 		&DefaultAdmissionConfig{},
41 41
 	)
42
+	return nil
42 43
 }
... ...
@@ -21,13 +21,13 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&DeploymentConfig{},
33 33
 		&DeploymentConfigList{},
... ...
@@ -35,6 +35,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
35 35
 		&DeploymentLog{},
36 36
 		&DeploymentLogOptions{},
37 37
 	)
38
+	return nil
38 39
 }
39 40
 
40 41
 func (obj *DeploymentConfig) GetObjectKind() unversioned.ObjectKind         { return &obj.TypeMeta }
... ...
@@ -132,7 +132,7 @@ func Convert_api_RollingDeploymentStrategyParams_To_v1_RollingDeploymentStrategy
132 132
 	return nil
133 133
 }
134 134
 
135
-func addConversionFuncs(scheme *runtime.Scheme) {
135
+func addConversionFuncs(scheme *runtime.Scheme) error {
136 136
 	err := scheme.AddConversionFuncs(
137 137
 		Convert_v1_DeploymentTriggerImageChangeParams_To_api_DeploymentTriggerImageChangeParams,
138 138
 		Convert_api_DeploymentTriggerImageChangeParams_To_v1_DeploymentTriggerImageChangeParams,
... ...
@@ -141,12 +141,13 @@ func addConversionFuncs(scheme *runtime.Scheme) {
141 141
 		Convert_api_RollingDeploymentStrategyParams_To_v1_RollingDeploymentStrategyParams,
142 142
 	)
143 143
 	if err != nil {
144
-		panic(err)
144
+		return err
145 145
 	}
146 146
 
147 147
 	if err := scheme.AddFieldLabelConversionFunc("v1", "DeploymentConfig",
148 148
 		oapi.GetFieldLabelConversionFunc(newer.DeploymentConfigToSelectableFields(&newer.DeploymentConfig{}), nil),
149 149
 	); err != nil {
150
-		panic(err)
150
+		return err
151 151
 	}
152
+	return nil
152 153
 }
... ...
@@ -114,15 +114,12 @@ func mkintp(i int64) *int64 {
114 114
 	return &i
115 115
 }
116 116
 
117
-func addDefaultingFuncs(scheme *runtime.Scheme) {
118
-	err := scheme.AddDefaultingFuncs(
117
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
118
+	return scheme.AddDefaultingFuncs(
119 119
 		SetDefaults_DeploymentConfigSpec,
120 120
 		SetDefaults_DeploymentStrategy,
121 121
 		SetDefaults_RecreateDeploymentStrategyParams,
122 122
 		SetDefaults_RollingDeploymentStrategyParams,
123 123
 		SetDefaults_DeploymentConfig,
124 124
 	)
125
-	if err != nil {
126
-		panic(err)
127
-	}
128 125
 }
... ...
@@ -10,14 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addDefaultingFuncs(scheme)
16
-	addConversionFuncs(scheme)
17
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs, addDefaultingFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
18 17
 
19 18
 // Adds the list of known types to api.Scheme.
20
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
21 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
22 21
 		&DeploymentConfig{},
23 22
 		&DeploymentConfigList{},
... ...
@@ -25,6 +24,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
25 25
 		&DeploymentLog{},
26 26
 		&DeploymentLogOptions{},
27 27
 	)
28
+	return nil
28 29
 }
29 30
 
30 31
 func (obj *DeploymentConfig) GetObjectKind() unversioned.ObjectKind         { return &obj.TypeMeta }
... ...
@@ -7,11 +7,16 @@ import (
7 7
 
8 8
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: runtime.APIVersionInternal}
9 9
 
10
-// Adds the list of known types to api.Scheme.
11
-func AddToScheme(scheme *runtime.Scheme) {
10
+var (
11
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
12
+	AddToScheme   = SchemeBuilder.AddToScheme
13
+)
14
+
15
+func addKnownTypes(scheme *runtime.Scheme) error {
12 16
 	scheme.AddKnownTypes(SchemeGroupVersion,
13 17
 		&ImagePolicyConfig{},
14 18
 	)
19
+	return nil
15 20
 }
16 21
 
17 22
 func (obj *ImagePolicyConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -22,11 +22,8 @@ func SetDefaults_ImagePolicyConfig(obj *ImagePolicyConfig) {
22 22
 
23 23
 }
24 24
 
25
-func addDefaultingFuncs(scheme *runtime.Scheme) {
26
-	err := scheme.AddDefaultingFuncs(
25
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
26
+	return scheme.AddDefaultingFuncs(
27 27
 		SetDefaults_ImagePolicyConfig,
28 28
 	)
29
-	if err != nil {
30
-		panic(err)
31
-	}
32 29
 }
... ...
@@ -11,13 +11,21 @@ import (
11 11
 // SchemeGroupVersion is group version used to register these objects
12 12
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: "v1"}
13 13
 
14
+var (
15
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs, addDefaultingFuncs)
16
+	AddToScheme   = SchemeBuilder.AddToScheme
17
+)
18
+
14 19
 // Adds the list of known types to api.Scheme.
15
-func AddToScheme(scheme *runtime.Scheme) {
20
+func addKnownTypes(scheme *runtime.Scheme) error {
16 21
 	scheme.AddKnownTypes(SchemeGroupVersion,
17 22
 		&ImagePolicyConfig{},
18 23
 	)
19
-	addDefaultingFuncs(scheme)
20
-	scheme.AddConversionFuncs(
24
+	return nil
25
+}
26
+
27
+func addConversionFuncs(scheme *runtime.Scheme) error {
28
+	return scheme.AddConversionFuncs(
21 29
 		// TODO: remove when MatchSignatures is implemented
22 30
 		func(in *ImageCondition, out *api.ImageCondition, s conversion.Scope) error {
23 31
 			return s.DefaultConvert(in, out, conversion.IgnoreMissingFields)
... ...
@@ -10,15 +10,17 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "1.0"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
16 17
 
17 18
 // Adds the list of known types to api.Scheme.
18
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
19 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
20 21
 		&DockerImage{},
21 22
 	)
23
+	return nil
22 24
 }
23 25
 
24 26
 func (obj *DockerImage) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -48,13 +48,9 @@ func Convert_api_DockerImage_to_dockerpre012_ImagePre_012(in *newer.DockerImage,
48 48
 	return nil
49 49
 }
50 50
 
51
-func addConversionFuncs(scheme *runtime.Scheme) {
52
-	err := scheme.AddConversionFuncs(
51
+func addConversionFuncs(scheme *runtime.Scheme) error {
52
+	return scheme.AddConversionFuncs(
53 53
 		Convert_dockerpre012_ImagePre_012_to_api_DockerImage,
54 54
 		Convert_api_DockerImage_to_dockerpre012_ImagePre_012,
55 55
 	)
56
-	if err != nil {
57
-		// If one of the conversion functions is malformed, detect it immediately.
58
-		panic(err)
59
-	}
60 56
 }
... ...
@@ -10,16 +10,17 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "pre012"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addConversionFuncs(scheme)
16
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
17 17
 
18 18
 // Adds the list of known types to api.Scheme.
19
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
20 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
21 21
 		&DockerImage{},
22 22
 	)
23
+	return nil
23 24
 }
24 25
 
25 26
 func (obj *DockerImage) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -21,13 +21,13 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&Image{},
33 33
 		&ImageList{},
... ...
@@ -41,6 +41,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
41 41
 		&ImageStreamImage{},
42 42
 		&ImageStreamImport{},
43 43
 	)
44
+	return nil
44 45
 }
45 46
 
46 47
 func (obj *Image) GetObjectKind() unversioned.ObjectKind              { return &obj.TypeMeta }
... ...
@@ -255,7 +255,7 @@ func Convert_api_TagReferenceMap_to_v1_TagReferenceArray(in *map[string]newer.Ta
255 255
 	return nil
256 256
 }
257 257
 
258
-func addConversionFuncs(scheme *runtime.Scheme) {
258
+func addConversionFuncs(scheme *runtime.Scheme) error {
259 259
 	err := scheme.AddConversionFuncs(
260 260
 		Convert_v1_NamedTagEventListArray_to_api_TagEventListArray,
261 261
 		Convert_api_TagEventListArray_to_v1_NamedTagEventListArray,
... ...
@@ -273,18 +273,19 @@ func addConversionFuncs(scheme *runtime.Scheme) {
273 273
 	)
274 274
 	if err != nil {
275 275
 		// If one of the conversion functions is malformed, detect it immediately.
276
-		panic(err)
276
+		return err
277 277
 	}
278 278
 
279 279
 	if err := scheme.AddFieldLabelConversionFunc("v1", "Image",
280 280
 		oapi.GetFieldLabelConversionFunc(newer.ImageToSelectableFields(&newer.Image{}), nil),
281 281
 	); err != nil {
282
-		panic(err)
282
+		return err
283 283
 	}
284 284
 
285 285
 	if err := scheme.AddFieldLabelConversionFunc("v1", "ImageStream",
286 286
 		oapi.GetFieldLabelConversionFunc(newer.ImageStreamToSelectableFields(&newer.ImageStream{}), map[string]string{"name": "metadata.name"}),
287 287
 	); err != nil {
288
-		panic(err)
288
+		return err
289 289
 	}
290
+	return nil
290 291
 }
... ...
@@ -16,11 +16,8 @@ func SetDefaults_ImageImportSpec(obj *ImageImportSpec) {
16 16
 	}
17 17
 }
18 18
 
19
-func addDefaultingFuncs(scheme *runtime.Scheme) {
20
-	err := scheme.AddDefaultingFuncs(
19
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
20
+	return scheme.AddDefaultingFuncs(
21 21
 		SetDefaults_ImageImportSpec,
22 22
 	)
23
-	if err != nil {
24
-		panic(err)
25
-	}
26 23
 }
... ...
@@ -13,16 +13,13 @@ const GroupName = ""
13 13
 // SchemeGroupVersion is group version used to register these objects
14 14
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
15 15
 
16
-func AddToScheme(scheme *runtime.Scheme) {
17
-	docker10.AddToScheme(scheme)
18
-	dockerpre012.AddToScheme(scheme)
19
-	addKnownTypes(scheme)
20
-	addDefaultingFuncs(scheme)
21
-	addConversionFuncs(scheme)
22
-}
16
+var (
17
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs, addDefaultingFuncs, docker10.AddToScheme, dockerpre012.AddToScheme)
18
+	AddToScheme   = SchemeBuilder.AddToScheme
19
+)
23 20
 
24 21
 // Adds the list of known types to api.Scheme.
25
-func addKnownTypes(scheme *runtime.Scheme) {
22
+func addKnownTypes(scheme *runtime.Scheme) error {
26 23
 	scheme.AddKnownTypes(SchemeGroupVersion,
27 24
 		&Image{},
28 25
 		&ImageList{},
... ...
@@ -35,6 +32,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
35 35
 		&ImageStreamImage{},
36 36
 		&ImageStreamImport{},
37 37
 	)
38
+	return nil
38 39
 }
39 40
 
40 41
 func (obj *Image) GetObjectKind() unversioned.ObjectKind              { return &obj.TypeMeta }
... ...
@@ -21,13 +21,13 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&OAuthAccessToken{},
33 33
 		&OAuthAccessTokenList{},
... ...
@@ -38,6 +38,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
38 38
 		&OAuthClientAuthorization{},
39 39
 		&OAuthClientAuthorizationList{},
40 40
 	)
41
+	return nil
41 42
 }
42 43
 
43 44
 func (obj *OAuthClientAuthorizationList) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -7,28 +7,29 @@ import (
7 7
 	"github.com/openshift/origin/pkg/oauth/api"
8 8
 )
9 9
 
10
-func addConversionFuncs(scheme *runtime.Scheme) {
10
+func addConversionFuncs(scheme *runtime.Scheme) error {
11 11
 	if err := scheme.AddFieldLabelConversionFunc("v1", "OAuthAccessToken",
12 12
 		oapi.GetFieldLabelConversionFunc(api.OAuthAccessTokenToSelectableFields(&api.OAuthAccessToken{}), nil),
13 13
 	); err != nil {
14
-		panic(err)
14
+		return err
15 15
 	}
16 16
 
17 17
 	if err := scheme.AddFieldLabelConversionFunc("v1", "OAuthAuthorizeToken",
18 18
 		oapi.GetFieldLabelConversionFunc(api.OAuthAuthorizeTokenToSelectableFields(&api.OAuthAuthorizeToken{}), nil),
19 19
 	); err != nil {
20
-		panic(err)
20
+		return err
21 21
 	}
22 22
 
23 23
 	if err := scheme.AddFieldLabelConversionFunc("v1", "OAuthClient",
24 24
 		oapi.GetFieldLabelConversionFunc(api.OAuthClientToSelectableFields(&api.OAuthClient{}), nil),
25 25
 	); err != nil {
26
-		panic(err)
26
+		return err
27 27
 	}
28 28
 
29 29
 	if err := scheme.AddFieldLabelConversionFunc("v1", "OAuthClientAuthorization",
30 30
 		oapi.GetFieldLabelConversionFunc(api.OAuthClientAuthorizationToSelectableFields(&api.OAuthClientAuthorization{}), nil),
31 31
 	); err != nil {
32
-		panic(err)
32
+		return err
33 33
 	}
34
+	return nil
34 35
 }
... ...
@@ -10,13 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addConversionFuncs(scheme)
16
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
17 17
 
18 18
 // Adds the list of known types to api.Scheme.
19
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
20 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
21 21
 		&OAuthAccessToken{},
22 22
 		&OAuthAccessTokenList{},
... ...
@@ -27,6 +27,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
27 27
 		&OAuthClientAuthorization{},
28 28
 		&OAuthClientAuthorizationList{},
29 29
 	)
30
+	return nil
30 31
 }
31 32
 
32 33
 func (obj *OAuthClientAuthorizationList) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -20,15 +20,17 @@ func Resource(resource string) unversioned.GroupResource {
20 20
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
21 21
 }
22 22
 
23
-func AddToScheme(scheme *runtime.Scheme) {
24
-	addKnownTypes(scheme)
25
-}
23
+var (
24
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
25
+	AddToScheme   = SchemeBuilder.AddToScheme
26
+)
26 27
 
27 28
 // Adds the list of known types to api.Scheme.
28
-func addKnownTypes(scheme *runtime.Scheme) {
29
+func addKnownTypes(scheme *runtime.Scheme) error {
29 30
 	scheme.AddKnownTypes(SchemeGroupVersion,
30 31
 		&ProjectRequestLimitConfig{},
31 32
 	)
33
+	return nil
32 34
 }
33 35
 
34 36
 func (obj *ProjectRequestLimitConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -10,15 +10,17 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
16 17
 
17 18
 // Adds the list of known types to api.Scheme.
18
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
19 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
20 21
 		&ProjectRequestLimitConfig{},
21 22
 	)
23
+	return nil
22 24
 }
23 25
 
24 26
 func (obj *ProjectRequestLimitConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -21,18 +21,19 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&Project{},
33 33
 		&ProjectList{},
34 34
 		&ProjectRequest{},
35 35
 	)
36
+	return nil
36 37
 }
37 38
 
38 39
 func (obj *ProjectRequest) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -8,10 +8,8 @@ import (
8 8
 	oapi "github.com/openshift/origin/pkg/api"
9 9
 )
10 10
 
11
-func addConversionFuncs(scheme *runtime.Scheme) {
12
-	if err := scheme.AddFieldLabelConversionFunc("v1", "Project",
11
+func addConversionFuncs(scheme *runtime.Scheme) error {
12
+	return scheme.AddFieldLabelConversionFunc("v1", "Project",
13 13
 		oapi.GetFieldLabelConversionFunc(namespace.NamespaceToSelectableFields(&kapi.Namespace{}), nil),
14
-	); err != nil {
15
-		panic(err)
16
-	}
14
+	)
17 15
 }
... ...
@@ -10,18 +10,19 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addConversionFuncs(scheme)
16
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
17 17
 
18 18
 // Adds the list of known types to api.Scheme.
19
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
20 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
21 21
 		&Project{},
22 22
 		&ProjectList{},
23 23
 		&ProjectRequest{},
24 24
 	)
25
+	return nil
25 26
 }
26 27
 
27 28
 func (obj *ProjectRequest) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -7,11 +7,17 @@ import (
7 7
 
8 8
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: runtime.APIVersionInternal}
9 9
 
10
+var (
11
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
12
+	AddToScheme   = SchemeBuilder.AddToScheme
13
+)
14
+
10 15
 // Adds the list of known types to api.Scheme.
11
-func AddToScheme(scheme *runtime.Scheme) {
16
+func addKnownTypes(scheme *runtime.Scheme) error {
12 17
 	scheme.AddKnownTypes(SchemeGroupVersion,
13 18
 		&ClusterResourceOverrideConfig{},
14 19
 	)
20
+	return nil
15 21
 }
16 22
 
17 23
 func (obj *ClusterResourceOverrideConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -8,11 +8,17 @@ import (
8 8
 // SchemeGroupVersion is group version used to register these objects
9 9
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: "v1"}
10 10
 
11
+var (
12
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
13
+	AddToScheme   = SchemeBuilder.AddToScheme
14
+)
15
+
11 16
 // Adds the list of known types to api.Scheme.
12
-func AddToScheme(scheme *runtime.Scheme) {
17
+func addKnownTypes(scheme *runtime.Scheme) error {
13 18
 	scheme.AddKnownTypes(SchemeGroupVersion,
14 19
 		&ClusterResourceOverrideConfig{},
15 20
 	)
21
+	return nil
16 22
 }
17 23
 
18 24
 func (obj *ClusterResourceOverrideConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -18,16 +18,17 @@ func Resource(resource string) unversioned.GroupResource {
18 18
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
19 19
 }
20 20
 
21
-// AddToScheme adds known types to the given scheme
22
-func AddToScheme(scheme *runtime.Scheme) {
23
-	addKnownTypes(scheme)
24
-}
21
+var (
22
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
23
+	AddToScheme   = SchemeBuilder.AddToScheme
24
+)
25 25
 
26 26
 // Adds the list of known types to api.Scheme.
27
-func addKnownTypes(scheme *runtime.Scheme) {
27
+func addKnownTypes(scheme *runtime.Scheme) error {
28 28
 	scheme.AddKnownTypes(SchemeGroupVersion,
29 29
 		&RunOnceDurationConfig{},
30 30
 	)
31
+	return nil
31 32
 }
32 33
 
33 34
 func (obj *RunOnceDurationConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -7,8 +7,8 @@ import (
7 7
 	internal "github.com/openshift/origin/pkg/quota/admission/runonceduration/api"
8 8
 )
9 9
 
10
-func addConversionFuncs(scheme *runtime.Scheme) {
11
-	err := scheme.AddConversionFuncs(
10
+func addConversionFuncs(scheme *runtime.Scheme) error {
11
+	return scheme.AddConversionFuncs(
12 12
 		func(in *RunOnceDurationConfig, out *internal.RunOnceDurationConfig, s conversion.Scope) error {
13 13
 			out.ActiveDeadlineSecondsLimit = in.ActiveDeadlineSecondsOverride
14 14
 			return nil
... ...
@@ -18,8 +18,4 @@ func addConversionFuncs(scheme *runtime.Scheme) {
18 18
 			return nil
19 19
 		},
20 20
 	)
21
-	if err != nil {
22
-		// If one of the conversion functions is malformed, detect it immediately.
23
-		panic(err)
24
-	}
25 21
 }
... ...
@@ -8,16 +8,17 @@ import (
8 8
 // SchemeGroupVersion is group version used to register these objects
9 9
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: "v1"}
10 10
 
11
-func AddToScheme(scheme *runtime.Scheme) {
12
-	addKnownTypes(scheme)
13
-	addConversionFuncs(scheme)
14
-}
11
+var (
12
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs)
13
+	AddToScheme   = SchemeBuilder.AddToScheme
14
+)
15 15
 
16 16
 // Adds the list of known types to api.Scheme.
17
-func addKnownTypes(scheme *runtime.Scheme) {
17
+func addKnownTypes(scheme *runtime.Scheme) error {
18 18
 	scheme.AddKnownTypes(SchemeGroupVersion,
19 19
 		&RunOnceDurationConfig{},
20 20
 	)
21
+	return nil
21 22
 }
22 23
 
23 24
 func (obj *RunOnceDurationConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -20,18 +20,20 @@ func Resource(resource string) unversioned.GroupResource {
20 20
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
21 21
 }
22 22
 
23
-func AddToScheme(scheme *runtime.Scheme) {
24
-	addKnownTypes(scheme)
25
-}
23
+var (
24
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
25
+	AddToScheme   = SchemeBuilder.AddToScheme
26
+)
26 27
 
27 28
 // Adds the list of known types to api.Scheme.
28
-func addKnownTypes(scheme *runtime.Scheme) {
29
+func addKnownTypes(scheme *runtime.Scheme) error {
29 30
 	scheme.AddKnownTypes(SchemeGroupVersion,
30 31
 		&ClusterResourceQuota{},
31 32
 		&ClusterResourceQuotaList{},
32 33
 		&AppliedClusterResourceQuota{},
33 34
 		&AppliedClusterResourceQuotaList{},
34 35
 	)
36
+	return nil
35 37
 }
36 38
 
37 39
 func (obj *AppliedClusterResourceQuotaList) GetObjectKind() unversioned.ObjectKind {
... ...
@@ -19,18 +19,20 @@ func Resource(resource string) unversioned.GroupResource {
19 19
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
20 20
 }
21 21
 
22
-func AddToScheme(scheme *runtime.Scheme) {
23
-	addKnownTypes(scheme)
24
-}
22
+var (
23
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
24
+	AddToScheme   = SchemeBuilder.AddToScheme
25
+)
25 26
 
26 27
 // Adds the list of known types to api.Scheme.
27
-func addKnownTypes(scheme *runtime.Scheme) {
28
+func addKnownTypes(scheme *runtime.Scheme) error {
28 29
 	scheme.AddKnownTypes(SchemeGroupVersion,
29 30
 		&ClusterResourceQuota{},
30 31
 		&ClusterResourceQuotaList{},
31 32
 		&AppliedClusterResourceQuota{},
32 33
 		&AppliedClusterResourceQuotaList{},
33 34
 	)
35
+	return nil
34 36
 }
35 37
 
36 38
 func (obj *AppliedClusterResourceQuotaList) GetObjectKind() unversioned.ObjectKind {
... ...
@@ -21,17 +21,18 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&Route{},
33 33
 		&RouteList{},
34 34
 	)
35
+	return nil
35 36
 }
36 37
 
37 38
 func (obj *Route) GetObjectKind() unversioned.ObjectKind     { return &obj.TypeMeta }
... ...
@@ -7,14 +7,8 @@ import (
7 7
 	routeapi "github.com/openshift/origin/pkg/route/api"
8 8
 )
9 9
 
10
-func addConversionFuncs(scheme *runtime.Scheme) {
11
-	if err := scheme.AddConversionFuncs(); err != nil {
12
-		panic(err)
13
-	}
14
-
15
-	if err := scheme.AddFieldLabelConversionFunc("v1", "Route",
10
+func addConversionFuncs(scheme *runtime.Scheme) error {
11
+	return scheme.AddFieldLabelConversionFunc("v1", "Route",
16 12
 		oapi.GetFieldLabelConversionFunc(routeapi.RouteToSelectableFields(&routeapi.Route{}), nil),
17
-	); err != nil {
18
-		panic(err)
19
-	}
13
+	)
20 14
 }
... ...
@@ -26,12 +26,9 @@ func SetDefaults_TLSConfig(obj *TLSConfig) {
26 26
 	}
27 27
 }
28 28
 
29
-func addDefaultingFuncs(scheme *runtime.Scheme) {
30
-	err := scheme.AddDefaultingFuncs(
29
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
30
+	return scheme.AddDefaultingFuncs(
31 31
 		SetDefaults_RouteTargetReference,
32 32
 		SetDefaults_TLSConfig,
33 33
 	)
34
-	if err != nil {
35
-		panic(err)
36
-	}
37 34
 }
... ...
@@ -10,18 +10,18 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addDefaultingFuncs(scheme)
16
-	addConversionFuncs(scheme)
17
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs, addDefaultingFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
18 17
 
19 18
 // Adds the list of known types to api.Scheme.
20
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
21 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
22 21
 		&Route{},
23 22
 		&RouteList{},
24 23
 	)
24
+	return nil
25 25
 }
26 26
 
27 27
 func (obj *Route) GetObjectKind() unversioned.ObjectKind     { return &obj.TypeMeta }
... ...
@@ -18,15 +18,16 @@ func Resource(resource string) unversioned.GroupResource {
18 18
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
19 19
 }
20 20
 
21
-func AddToScheme(scheme *runtime.Scheme) {
22
-	addKnownTypes(scheme)
23
-}
21
+var (
22
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
23
+	AddToScheme   = SchemeBuilder.AddToScheme
24
+)
24 25
 
25
-func addKnownTypes(scheme *runtime.Scheme) {
26
+func addKnownTypes(scheme *runtime.Scheme) error {
26 27
 	scheme.AddKnownTypes(SchemeGroupVersion,
27 28
 		&PodNodeConstraintsConfig{},
28 29
 	)
29
-
30
+	return nil
30 31
 }
31 32
 
32 33
 func (obj *PodNodeConstraintsConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -12,11 +12,8 @@ func SetDefaults_PodNodeConstraintsConfig(obj *PodNodeConstraintsConfig) {
12 12
 		}
13 13
 	}
14 14
 }
15
-func addDefaultingFuncs(scheme *runtime.Scheme) {
16
-	err := scheme.AddDefaultingFuncs(
15
+func addDefaultingFuncs(scheme *runtime.Scheme) error {
16
+	return scheme.AddDefaultingFuncs(
17 17
 		SetDefaults_PodNodeConstraintsConfig,
18 18
 	)
19
-	if err != nil {
20
-		panic(err)
21
-	}
22 19
 }
... ...
@@ -8,15 +8,16 @@ import (
8 8
 // SchemeGroupVersion is group version used to register these objects
9 9
 var SchemeGroupVersion = unversioned.GroupVersion{Group: "", Version: "v1"}
10 10
 
11
-func AddToScheme(scheme *runtime.Scheme) {
12
-	addKnownTypes(scheme)
13
-	addDefaultingFuncs(scheme)
14
-}
11
+var (
12
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs)
13
+	AddToScheme   = SchemeBuilder.AddToScheme
14
+)
15 15
 
16
-func addKnownTypes(scheme *runtime.Scheme) {
16
+func addKnownTypes(scheme *runtime.Scheme) error {
17 17
 	scheme.AddKnownTypes(SchemeGroupVersion,
18 18
 		&PodNodeConstraintsConfig{},
19 19
 	)
20
+	return nil
20 21
 }
21 22
 
22 23
 func (obj *PodNodeConstraintsConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }
... ...
@@ -21,13 +21,13 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&ClusterNetwork{},
33 33
 		&ClusterNetworkList{},
... ...
@@ -38,6 +38,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
38 38
 		&EgressNetworkPolicy{},
39 39
 		&EgressNetworkPolicyList{},
40 40
 	)
41
+	return nil
41 42
 }
42 43
 
43 44
 func (obj *ClusterNetwork) GetObjectKind() unversioned.ObjectKind          { return &obj.TypeMeta }
... ...
@@ -7,28 +7,29 @@ import (
7 7
 	"github.com/openshift/origin/pkg/sdn/api"
8 8
 )
9 9
 
10
-func addConversionFuncs(scheme *runtime.Scheme) {
10
+func addConversionFuncs(scheme *runtime.Scheme) error {
11 11
 	if err := scheme.AddFieldLabelConversionFunc("v1", "ClusterNetwork",
12 12
 		oapi.GetFieldLabelConversionFunc(api.ClusterNetworkToSelectableFields(&api.ClusterNetwork{}), nil),
13 13
 	); err != nil {
14
-		panic(err)
14
+		return err
15 15
 	}
16 16
 
17 17
 	if err := scheme.AddFieldLabelConversionFunc("v1", "HostSubnet",
18 18
 		oapi.GetFieldLabelConversionFunc(api.HostSubnetToSelectableFields(&api.HostSubnet{}), nil),
19 19
 	); err != nil {
20
-		panic(err)
20
+		return err
21 21
 	}
22 22
 
23 23
 	if err := scheme.AddFieldLabelConversionFunc("v1", "NetNamespace",
24 24
 		oapi.GetFieldLabelConversionFunc(api.NetNamespaceToSelectableFields(&api.NetNamespace{}), nil),
25 25
 	); err != nil {
26
-		panic(err)
26
+		return err
27 27
 	}
28 28
 
29 29
 	if err := scheme.AddFieldLabelConversionFunc("v1", "EgressNetworkPolicy",
30 30
 		oapi.GetFieldLabelConversionFunc(api.EgressNetworkPolicyToSelectableFields(&api.EgressNetworkPolicy{}), nil),
31 31
 	); err != nil {
32
-		panic(err)
32
+		return err
33 33
 	}
34
+	return nil
34 35
 }
... ...
@@ -10,13 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addConversionFuncs(scheme)
16
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
17 17
 
18 18
 // Adds the list of known types to api.Scheme.
19
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
20 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
21 21
 		&ClusterNetwork{},
22 22
 		&ClusterNetworkList{},
... ...
@@ -27,6 +27,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
27 27
 		&EgressNetworkPolicy{},
28 28
 		&EgressNetworkPolicyList{},
29 29
 	)
30
+	return nil
30 31
 }
31 32
 
32 33
 func (obj *ClusterNetwork) GetObjectKind() unversioned.ObjectKind          { return &obj.TypeMeta }
... ...
@@ -23,18 +23,19 @@ func Resource(resource string) unversioned.GroupResource {
23 23
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
24 24
 }
25 25
 
26
-func AddToScheme(scheme *runtime.Scheme) {
27
-	// Add the API to Scheme.
28
-	addKnownTypes(scheme)
29
-}
26
+var (
27
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
28
+	AddToScheme   = SchemeBuilder.AddToScheme
29
+)
30 30
 
31 31
 // Adds the list of known types to api.Scheme.
32
-func addKnownTypes(scheme *runtime.Scheme) {
32
+func addKnownTypes(scheme *runtime.Scheme) error {
33 33
 	scheme.AddKnownTypes(SchemeGroupVersion,
34 34
 		&PodSecurityPolicySubjectReview{},
35 35
 		&PodSecurityPolicySelfSubjectReview{},
36 36
 		&PodSecurityPolicyReview{},
37 37
 	)
38
+	return nil
38 39
 }
39 40
 
40 41
 func (obj *PodSecurityPolicySubjectReview) GetObjectKind() unversioned.ObjectKind {
... ...
@@ -20,18 +20,19 @@ func Resource(resource string) unversioned.GroupResource {
20 20
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
21 21
 }
22 22
 
23
-func AddToScheme(scheme *runtime.Scheme) {
24
-	// Add the API to Scheme.
25
-	addKnownTypes(scheme)
26
-}
23
+var (
24
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
25
+	AddToScheme   = SchemeBuilder.AddToScheme
26
+)
27 27
 
28 28
 // Adds the list of known types to api.Scheme.
29
-func addKnownTypes(scheme *runtime.Scheme) {
29
+func addKnownTypes(scheme *runtime.Scheme) error {
30 30
 	scheme.AddKnownTypes(SchemeGroupVersion,
31 31
 		&PodSecurityPolicySubjectReview{},
32 32
 		&PodSecurityPolicySelfSubjectReview{},
33 33
 		&PodSecurityPolicyReview{},
34 34
 	)
35
+	return nil
35 36
 }
36 37
 
37 38
 func (obj *PodSecurityPolicySubjectReview) GetObjectKind() unversioned.ObjectKind {
... ...
@@ -21,17 +21,18 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&Template{},
33 33
 		&TemplateList{},
34 34
 	)
35
+	return nil
35 36
 }
36 37
 
37 38
 func (obj *Template) GetObjectKind() unversioned.ObjectKind     { return &obj.TypeMeta }
... ...
@@ -8,12 +8,10 @@ import (
8 8
 	"github.com/openshift/origin/pkg/template/api"
9 9
 )
10 10
 
11
-func addConversionFuncs(scheme *runtime.Scheme) {
12
-	if err := scheme.AddFieldLabelConversionFunc("v1", "Template",
11
+func addConversionFuncs(scheme *runtime.Scheme) error {
12
+	return scheme.AddFieldLabelConversionFunc("v1", "Template",
13 13
 		oapi.GetFieldLabelConversionFunc(api.TemplateToSelectableFields(&api.Template{}), nil),
14
-	); err != nil {
15
-		panic(err)
16
-	}
14
+	)
17 15
 }
18 16
 
19 17
 var _ runtime.NestedObjectDecoder = &Template{}
... ...
@@ -10,13 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addConversionFuncs(scheme)
16
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
17 17
 
18 18
 // Adds the list of known types to api.Scheme.
19
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
20 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
21 21
 		&Template{},
22 22
 		&TemplateList{},
... ...
@@ -24,6 +24,8 @@ func addKnownTypes(scheme *runtime.Scheme) {
24 24
 
25 25
 	scheme.AddKnownTypeWithName(SchemeGroupVersion.WithKind("TemplateConfig"), &Template{})
26 26
 	scheme.AddKnownTypeWithName(SchemeGroupVersion.WithKind("ProcessedTemplate"), &Template{})
27
+
28
+	return nil
27 29
 }
28 30
 
29 31
 func (obj *Template) GetObjectKind() unversioned.ObjectKind     { return &obj.TypeMeta }
... ...
@@ -21,13 +21,13 @@ func Resource(resource string) unversioned.GroupResource {
21 21
 	return SchemeGroupVersion.WithResource(resource).GroupResource()
22 22
 }
23 23
 
24
-func AddToScheme(scheme *runtime.Scheme) {
25
-	// Add the API to Scheme.
26
-	addKnownTypes(scheme)
27
-}
24
+var (
25
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
26
+	AddToScheme   = SchemeBuilder.AddToScheme
27
+)
28 28
 
29 29
 // Adds the list of known types to api.Scheme.
30
-func addKnownTypes(scheme *runtime.Scheme) {
30
+func addKnownTypes(scheme *runtime.Scheme) error {
31 31
 	scheme.AddKnownTypes(SchemeGroupVersion,
32 32
 		&User{},
33 33
 		&UserList{},
... ...
@@ -37,6 +37,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
37 37
 		&Group{},
38 38
 		&GroupList{},
39 39
 	)
40
+	return nil
40 41
 }
41 42
 
42 43
 func (obj *GroupList) GetObjectKind() unversioned.ObjectKind           { return &obj.TypeMeta }
... ...
@@ -7,22 +7,23 @@ import (
7 7
 	"github.com/openshift/origin/pkg/user/api"
8 8
 )
9 9
 
10
-func addConversionFuncs(scheme *runtime.Scheme) {
10
+func addConversionFuncs(scheme *runtime.Scheme) error {
11 11
 	if err := scheme.AddFieldLabelConversionFunc("v1", "Group",
12 12
 		oapi.GetFieldLabelConversionFunc(api.GroupToSelectableFields(&api.Group{}), nil),
13 13
 	); err != nil {
14
-		panic(err)
14
+		return err
15 15
 	}
16 16
 
17 17
 	if err := scheme.AddFieldLabelConversionFunc("v1", "Identity",
18 18
 		oapi.GetFieldLabelConversionFunc(api.IdentityToSelectableFields(&api.Identity{}), nil),
19 19
 	); err != nil {
20
-		panic(err)
20
+		return err
21 21
 	}
22 22
 
23 23
 	if err := scheme.AddFieldLabelConversionFunc("v1", "User",
24 24
 		oapi.GetFieldLabelConversionFunc(api.UserToSelectableFields(&api.User{}), nil),
25 25
 	); err != nil {
26
-		panic(err)
26
+		return err
27 27
 	}
28
+	return nil
28 29
 }
... ...
@@ -10,13 +10,13 @@ const GroupName = ""
10 10
 // SchemeGroupVersion is group version used to register these objects
11 11
 var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: "v1"}
12 12
 
13
-func AddToScheme(scheme *runtime.Scheme) {
14
-	addKnownTypes(scheme)
15
-	addConversionFuncs(scheme)
16
-}
13
+var (
14
+	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addConversionFuncs)
15
+	AddToScheme   = SchemeBuilder.AddToScheme
16
+)
17 17
 
18 18
 // Adds the list of known types to api.Scheme.
19
-func addKnownTypes(scheme *runtime.Scheme) {
19
+func addKnownTypes(scheme *runtime.Scheme) error {
20 20
 	scheme.AddKnownTypes(SchemeGroupVersion,
21 21
 		&User{},
22 22
 		&UserList{},
... ...
@@ -26,6 +26,7 @@ func addKnownTypes(scheme *runtime.Scheme) {
26 26
 		&Group{},
27 27
 		&GroupList{},
28 28
 	)
29
+	return nil
29 30
 }
30 31
 
31 32
 func (obj *GroupList) GetObjectKind() unversioned.ObjectKind           { return &obj.TypeMeta }