aboutsummaryrefslogtreecommitdiff
path: root/vendor/k8s.io/kubernetes/pkg/apis/policy/install/install.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/k8s.io/kubernetes/pkg/apis/policy/install/install.go')
-rw-r--r--vendor/k8s.io/kubernetes/pkg/apis/policy/install/install.go49
1 files changed, 49 insertions, 0 deletions
diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/install/install.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/install/install.go
new file mode 100644
index 000000000..76129575c
--- /dev/null
+++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/install/install.go
@@ -0,0 +1,49 @@
+/*
+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 install installs the experimental API group, making it available as
+// an option to all of the API encoding/decoding machinery.
+package install
+
+import (
+ "k8s.io/apimachinery/pkg/apimachinery/announced"
+ "k8s.io/apimachinery/pkg/apimachinery/registered"
+ "k8s.io/apimachinery/pkg/runtime"
+ "k8s.io/kubernetes/pkg/api"
+ "k8s.io/kubernetes/pkg/apis/policy"
+ "k8s.io/kubernetes/pkg/apis/policy/v1beta1"
+)
+
+func init() {
+ Install(api.GroupFactoryRegistry, api.Registry, api.Scheme)
+}
+
+// Install registers the API group and adds types to a scheme
+func Install(groupFactoryRegistry announced.APIGroupFactoryRegistry, registry *registered.APIRegistrationManager, scheme *runtime.Scheme) {
+ if err := announced.NewGroupMetaFactory(
+ &announced.GroupMetaFactoryArgs{
+ GroupName: policy.GroupName,
+ VersionPreferenceOrder: []string{v1beta1.SchemeGroupVersion.Version},
+ ImportPrefix: "k8s.io/kubernetes/pkg/apis/policy",
+ AddInternalObjectsToScheme: policy.AddToScheme,
+ },
+ announced.VersionToSchemeFunc{
+ v1beta1.SchemeGroupVersion.Version: v1beta1.AddToScheme,
+ },
+ ).Announce(groupFactoryRegistry).RegisterAndEnable(registry, scheme); err != nil {
+ panic(err)
+ }
+}