| /* |
| Copyright 2015 The Kubernetes Authors. |
| |
| 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 v1 |
| |
| import ( |
| metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" |
| "k8s.io/apimachinery/pkg/runtime" |
| "k8s.io/apimachinery/pkg/runtime/schema" |
| ) |
| |
| // GroupName is the group name use in this package |
| const GroupName = "" |
| |
| // SchemeGroupVersion is group version used to register these objects |
| var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"} |
| |
| // Resource takes an unqualified resource and returns a Group qualified GroupResource |
| func Resource(resource string) schema.GroupResource { |
| return SchemeGroupVersion.WithResource(resource).GroupResource() |
| } |
| |
| var ( |
| // We only register manually written functions here. The registration of the |
| // generated functions takes place in the generated files. The separation |
| // makes the code compile even when the generated files are missing. |
| SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) |
| AddToScheme = SchemeBuilder.AddToScheme |
| ) |
| |
| // Adds the list of known types to the given scheme. |
| func addKnownTypes(scheme *runtime.Scheme) error { |
| scheme.AddKnownTypes(SchemeGroupVersion, |
| &Pod{}, |
| &PodList{}, |
| &PodStatusResult{}, |
| &PodTemplate{}, |
| &PodTemplateList{}, |
| &ReplicationController{}, |
| &ReplicationControllerList{}, |
| &Service{}, |
| &ServiceProxyOptions{}, |
| &ServiceList{}, |
| &Endpoints{}, |
| &EndpointsList{}, |
| &Node{}, |
| &NodeList{}, |
| &NodeProxyOptions{}, |
| &Binding{}, |
| &Event{}, |
| &EventList{}, |
| &List{}, |
| &LimitRange{}, |
| &LimitRangeList{}, |
| &ResourceQuota{}, |
| &ResourceQuotaList{}, |
| &Namespace{}, |
| &NamespaceList{}, |
| &Secret{}, |
| &SecretList{}, |
| &ServiceAccount{}, |
| &ServiceAccountList{}, |
| &PersistentVolume{}, |
| &PersistentVolumeList{}, |
| &PersistentVolumeClaim{}, |
| &PersistentVolumeClaimList{}, |
| &PodAttachOptions{}, |
| &PodLogOptions{}, |
| &PodExecOptions{}, |
| &PodPortForwardOptions{}, |
| &PodProxyOptions{}, |
| &ComponentStatus{}, |
| &ComponentStatusList{}, |
| &SerializedReference{}, |
| &RangeAllocation{}, |
| &ConfigMap{}, |
| &ConfigMapList{}, |
| ) |
| |
| // Add common types |
| scheme.AddKnownTypes(SchemeGroupVersion, &metav1.Status{}) |
| |
| // Add the watch version that applies |
| metav1.AddToGroupVersion(scheme, SchemeGroupVersion) |
| return nil |
| } |