Skip to content

Commit

Permalink
create install functions based on new runtime.Scheme
Browse files Browse the repository at this point in the history
  • Loading branch information
deads2k committed Jul 6, 2018
1 parent d905f56 commit 2f6f4d8
Show file tree
Hide file tree
Showing 49 changed files with 1,097 additions and 451 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
language: go

go:
- 1.8
- "1.10"

install:
- wget https://github.com/google/protobuf/releases/download/v3.0.2/protoc-3.0.2-linux-x86_64.zip
Expand Down
17 changes: 1 addition & 16 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,7 @@ all: build
.PHONY: all

build:
go build github.com/openshift/api/authorization/...
go build github.com/openshift/api/apps/...
go build github.com/openshift/api/build/...
go build github.com/openshift/api/config/...
go build github.com/openshift/api/image/...
go build github.com/openshift/api/network/...
go build github.com/openshift/api/oauth/...
go build github.com/openshift/api/operator/...
go build github.com/openshift/api/project/...
go build github.com/openshift/api/quota/...
go build github.com/openshift/api/route/...
go build github.com/openshift/api/security/...
go build github.com/openshift/api/servicecertsigner/...
go build github.com/openshift/api/template/...
go build github.com/openshift/api/user/...
go build github.com/openshift/api/webconsole/...
go build github.com/openshift/api/...
.PHONY: build

test:
Expand Down
26 changes: 26 additions & 0 deletions apps/install.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package apps

import (
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"

appsv1 "github.com/openshift/api/apps/v1"
)

const (
GroupName = "apps.openshift.io"
)

var (
schemeBuilder = runtime.NewSchemeBuilder(appsv1.Install)
// Install is a function which adds every version of this group to a scheme
Install = schemeBuilder.AddToScheme
)

func Resource(resource string) schema.GroupResource {
return schema.GroupResource{Group: GroupName, Resource: resource}
}

func Kind(kind string) schema.GroupKind {
return schema.GroupKind{Group: GroupName, Kind: kind}
}
28 changes: 28 additions & 0 deletions apps/v1/legacy.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package v1

import (
corev1 "k8s.io/api/core/v1"
extensionsv1beta1 "k8s.io/api/extensions/v1beta1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)

var (
legacyGroupVersion = schema.GroupVersion{Group: "", Version: "v1"}
legacySchemeBuilder = runtime.NewSchemeBuilder(addLegacyKnownTypes, corev1.AddToScheme, extensionsv1beta1.AddToScheme)
DeprecatedInstallWithoutGroup = legacySchemeBuilder.AddToScheme
)

func addLegacyKnownTypes(scheme *runtime.Scheme) error {
types := []runtime.Object{
&DeploymentConfig{},
&DeploymentConfigList{},
&DeploymentConfigRollback{},
&DeploymentRequest{},
&DeploymentLog{},
&DeploymentLogOptions{},
&extensionsv1beta1.Scale{},
}
scheme.AddKnownTypes(legacyGroupVersion, types...)
return nil
}
49 changes: 18 additions & 31 deletions apps/v1/register.go
Original file line number Diff line number Diff line change
@@ -1,50 +1,37 @@
package v1

import (
corev1 "k8s.io/api/core/v1"
extensionsv1beta1 "k8s.io/api/extensions/v1beta1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)

const (
LegacyGroupName = ""
GroupName = "apps.openshift.io"
)

var (
SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
LegacySchemeGroupVersion = schema.GroupVersion{Group: LegacyGroupName, Version: "v1"}

LegacySchemeBuilder = runtime.NewSchemeBuilder(addLegacyKnownTypes)
AddToSchemeInCoreGroup = LegacySchemeBuilder.AddToScheme

SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
AddToScheme = SchemeBuilder.AddToScheme
GroupName = "apps.openshift.io"
GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
schemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, corev1.AddToScheme, extensionsv1beta1.AddToScheme)
// Install is a function which adds this version to a scheme
Install = schemeBuilder.AddToScheme

// SchemeGroupVersion generated code relies on this name
// Deprecated
SchemeGroupVersion = GroupVersion
// AddToScheme exists solely to keep the old generators creating valid code
// DEPRECATED
AddToScheme = schemeBuilder.AddToScheme
)

// Resource generated code relies on this being here, but it logically belongs to the group
// DEPRECATED
func Resource(resource string) schema.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource()
}

// Adds the list of known types to api.Scheme.
func addLegacyKnownTypes(scheme *runtime.Scheme) error {
types := []runtime.Object{
&DeploymentConfig{},
&DeploymentConfigList{},
&DeploymentConfigRollback{},
&DeploymentRequest{},
&DeploymentLog{},
&DeploymentLogOptions{},
&extensionsv1beta1.Scale{},
}
scheme.AddKnownTypes(LegacySchemeGroupVersion, types...)
return nil
return schema.GroupResource{Group: GroupName, Resource: resource}
}

// Adds the list of known types to api.Scheme.
func addKnownTypes(scheme *runtime.Scheme) error {
scheme.AddKnownTypes(SchemeGroupVersion,
scheme.AddKnownTypes(GroupVersion,
&DeploymentConfig{},
&DeploymentConfigList{},
&DeploymentConfigRollback{},
Expand All @@ -53,6 +40,6 @@ func addKnownTypes(scheme *runtime.Scheme) error {
&DeploymentLogOptions{},
&extensionsv1beta1.Scale{},
)
metav1.AddToGroupVersion(scheme, SchemeGroupVersion)
metav1.AddToGroupVersion(scheme, GroupVersion)
return nil
}
26 changes: 26 additions & 0 deletions authorization/install.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package apps

import (
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"

authorizationv1 "github.com/openshift/api/authorization/v1"
)

const (
GroupName = "authorization.openshift.io"
)

var (
schemeBuilder = runtime.NewSchemeBuilder(authorizationv1.Install)
// Install is a function which adds every version of this group to a scheme
Install = schemeBuilder.AddToScheme
)

func Resource(resource string) schema.GroupResource {
return schema.GroupResource{Group: GroupName, Resource: resource}
}

func Kind(kind string) schema.GroupKind {
return schema.GroupKind{Group: GroupName, Kind: kind}
}
43 changes: 43 additions & 0 deletions authorization/v1/legacy.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package v1

import (
corev1 "k8s.io/api/core/v1"
rbacv1 "k8s.io/api/rbac/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)

var (
legacyGroupVersion = schema.GroupVersion{Group: "", Version: "v1"}
legacySchemeBuilder = runtime.NewSchemeBuilder(addLegacyKnownTypes, corev1.AddToScheme, rbacv1.AddToScheme)
DeprecatedInstallWithoutGroup = legacySchemeBuilder.AddToScheme
)

func addLegacyKnownTypes(scheme *runtime.Scheme) error {
types := []runtime.Object{
&Role{},
&RoleBinding{},
&RoleBindingList{},
&RoleList{},

&SelfSubjectRulesReview{},
&SubjectRulesReview{},
&ResourceAccessReview{},
&SubjectAccessReview{},
&LocalResourceAccessReview{},
&LocalSubjectAccessReview{},
&ResourceAccessReviewResponse{},
&SubjectAccessReviewResponse{},
&IsPersonalSubjectAccessReview{},

&ClusterRole{},
&ClusterRoleBinding{},
&ClusterRoleBindingList{},
&ClusterRoleList{},

&RoleBindingRestriction{},
&RoleBindingRestrictionList{},
}
scheme.AddKnownTypes(legacyGroupVersion, types...)
return nil
}
64 changes: 19 additions & 45 deletions authorization/v1/register.go
Original file line number Diff line number Diff line change
@@ -1,34 +1,37 @@
package v1

import (
corev1 "k8s.io/api/core/v1"
rbacv1 "k8s.io/api/rbac/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)

const (
GroupName = "authorization.openshift.io"
LegacyGroupName = ""
)

var (
SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
LegacySchemeGroupVersion = schema.GroupVersion{Group: LegacyGroupName, Version: "v1"}

LegacySchemeBuilder = runtime.NewSchemeBuilder(addLegacyKnownTypes)
AddToSchemeInCoreGroup = LegacySchemeBuilder.AddToScheme

SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
AddToScheme = SchemeBuilder.AddToScheme
GroupName = "authorization.openshift.io"
GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
schemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, corev1.AddToScheme, rbacv1.AddToScheme)
// Install is a function which adds this version to a scheme
Install = schemeBuilder.AddToScheme

// SchemeGroupVersion generated code relies on this name
// Deprecated
SchemeGroupVersion = GroupVersion
// AddToScheme exists solely to keep the old generators creating valid code
// DEPRECATED
AddToScheme = schemeBuilder.AddToScheme
)

// Resource generated code relies on this being here, but it logically belongs to the group
// DEPRECATED
func Resource(resource string) schema.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource()
return schema.GroupResource{Group: GroupName, Resource: resource}
}

// Adds the list of known types to api.Scheme.
func addKnownTypes(scheme *runtime.Scheme) error {
scheme.AddKnownTypes(SchemeGroupVersion,
scheme.AddKnownTypes(GroupVersion,
&Role{},
&RoleBinding{},
&RoleBindingList{},
Expand All @@ -52,35 +55,6 @@ func addKnownTypes(scheme *runtime.Scheme) error {
&RoleBindingRestriction{},
&RoleBindingRestrictionList{},
)
metav1.AddToGroupVersion(scheme, SchemeGroupVersion)
return nil
}

func addLegacyKnownTypes(scheme *runtime.Scheme) error {
types := []runtime.Object{
&Role{},
&RoleBinding{},
&RoleBindingList{},
&RoleList{},

&SelfSubjectRulesReview{},
&SubjectRulesReview{},
&ResourceAccessReview{},
&SubjectAccessReview{},
&LocalResourceAccessReview{},
&LocalSubjectAccessReview{},
&ResourceAccessReviewResponse{},
&SubjectAccessReviewResponse{},
&IsPersonalSubjectAccessReview{},

&ClusterRole{},
&ClusterRoleBinding{},
&ClusterRoleBindingList{},
&ClusterRoleList{},

&RoleBindingRestriction{},
&RoleBindingRestrictionList{},
}
scheme.AddKnownTypes(LegacySchemeGroupVersion, types...)
metav1.AddToGroupVersion(scheme, GroupVersion)
return nil
}
26 changes: 26 additions & 0 deletions build/install.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package build

import (
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"

buildv1 "github.com/openshift/api/build/v1"
)

const (
GroupName = "build.openshift.io"
)

var (
schemeBuilder = runtime.NewSchemeBuilder(buildv1.Install)
// Install is a function which adds every version of this group to a scheme
Install = schemeBuilder.AddToScheme
)

func Resource(resource string) schema.GroupResource {
return schema.GroupResource{Group: GroupName, Resource: resource}
}

func Kind(kind string) schema.GroupKind {
return schema.GroupKind{Group: GroupName, Kind: kind}
}
28 changes: 28 additions & 0 deletions build/v1/legacy.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package v1

import (
corev1 "k8s.io/api/core/v1"
runtime "k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)

var (
legacyGroupVersion = schema.GroupVersion{Group: "", Version: "v1"}
legacySchemeBuilder = runtime.NewSchemeBuilder(addLegacyKnownTypes, corev1.AddToScheme)
DeprecatedInstallWithoutGroup = legacySchemeBuilder.AddToScheme
)

func addLegacyKnownTypes(scheme *runtime.Scheme) error {
types := []runtime.Object{
&Build{},
&BuildList{},
&BuildConfig{},
&BuildConfigList{},
&BuildLog{},
&BuildRequest{},
&BuildLogOptions{},
&BinaryBuildRequestOptions{},
}
scheme.AddKnownTypes(legacyGroupVersion, types...)
return nil
}

0 comments on commit 2f6f4d8

Please sign in to comment.