diff --git a/hack/update-codegen.sh b/hack/update-codegen.sh index 516a5d920..ce763a55d 100755 --- a/hack/update-codegen.sh +++ b/hack/update-codegen.sh @@ -12,3 +12,14 @@ bash "${CODEGEN_PKG}"/generate-groups.sh "deepcopy,client,informer,lister" \ "propagationstrategy:v1alpha1 membercluster:v1alpha1" \ --output-base "$(dirname "${BASH_SOURCE[0]}")/../../../.." \ --go-header-file "${SCRIPT_ROOT}"/hack/boilerplate/boilerplate.go.txt + +echo "Generating with register-gen" +GO111MODULE=on go install k8s.io/code-generator/cmd/register-gen +register-gen \ + --go-header-file hack/boilerplate/boilerplate.go.txt \ + --input-dirs=github.com/karmada-io/karmada/pkg/apis/membercluster/v1alpha1 \ + --output-package=github.com/karmada-io/karmada/pkg/apis/membercluster/v1alpha1 +register-gen \ + --go-header-file hack/boilerplate/boilerplate.go.txt \ + --input-dirs=github.com/karmada-io/karmada/pkg/apis/propagationstrategy/v1alpha1 \ + --output-package=github.com/karmada-io/karmada/pkg/apis/propagationstrategy/v1alpha1 diff --git a/pkg/apis/membercluster/register.go b/pkg/apis/membercluster/register.go deleted file mode 100644 index 5bb27de93..000000000 --- a/pkg/apis/membercluster/register.go +++ /dev/null @@ -1,6 +0,0 @@ -package membercluster - -// GroupName is the group name used in this package -const ( - GroupName = "membercluster.karmada.io" -) diff --git a/pkg/apis/membercluster/v1alpha1/doc.go b/pkg/apis/membercluster/v1alpha1/doc.go index b9af1a187..a59f8a8aa 100644 --- a/pkg/apis/membercluster/v1alpha1/doc.go +++ b/pkg/apis/membercluster/v1alpha1/doc.go @@ -1,5 +1,4 @@ -// +k8s:deepcopy-gen=package -// +groupName=membercluster.karmada.io - // Package v1alpha1 is the v1alpha1 version of the API. +// +k8s:deepcopy-gen=package,register +// +groupName=membercluster.karmada.io package v1alpha1 diff --git a/pkg/apis/membercluster/v1alpha1/register.go b/pkg/apis/membercluster/v1alpha1/register.go deleted file mode 100644 index c07b00355..000000000 --- a/pkg/apis/membercluster/v1alpha1/register.go +++ /dev/null @@ -1,39 +0,0 @@ -package v1alpha1 - -import ( - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/runtime/schema" - - "github.com/karmada-io/karmada/pkg/apis/membercluster" -) - -// SchemeGroupVersion is group version used to register these objects -var SchemeGroupVersion = schema.GroupVersion{Group: membercluster.GroupName, Version: "v1alpha1"} - -// Kind takes an unqualified kind and returns back a Group qualified GroupKind -func Kind(kind string) schema.GroupKind { - return SchemeGroupVersion.WithKind(kind).GroupKind() -} - -// Resource takes an unqualified resource and returns a Group qualified GroupResource -func Resource(resource string) schema.GroupResource { - return SchemeGroupVersion.WithResource(resource).GroupResource() -} - -var ( - // SchemeBuilder initializes a scheme builder - SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) - // AddToScheme is a global function that registers this API group & version to a scheme - AddToScheme = SchemeBuilder.AddToScheme -) - -// Adds the list of known types to Scheme. -func addKnownTypes(scheme *runtime.Scheme) error { - scheme.AddKnownTypes(SchemeGroupVersion, - &MemberCluster{}, - &MemberClusterList{}, - ) - metav1.AddToGroupVersion(scheme, SchemeGroupVersion) - return nil -} diff --git a/pkg/apis/membercluster/v1alpha1/zz_generated.register.go b/pkg/apis/membercluster/v1alpha1/zz_generated.register.go new file mode 100644 index 000000000..8a87c58ce --- /dev/null +++ b/pkg/apis/membercluster/v1alpha1/zz_generated.register.go @@ -0,0 +1,51 @@ +// Code generated by register-gen. DO NOT EDIT. + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName specifies the group name used to register the objects. +const GroupName = "membercluster.karmada.io" + +// GroupVersion specifies the group and the version used to register the objects. +var GroupVersion = v1.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +// SchemeGroupVersion is group version used to register these objects +// Deprecated: use GroupVersion instead. +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. + SchemeBuilder runtime.SchemeBuilder + localSchemeBuilder = &SchemeBuilder + // Depreciated: use Install instead + AddToScheme = localSchemeBuilder.AddToScheme + Install = localSchemeBuilder.AddToScheme +) + +func init() { + // 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. + localSchemeBuilder.Register(addKnownTypes) +} + +// Adds the list of known types to Scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &MemberCluster{}, + &MemberClusterList{}, + ) + // AddToGroupVersion allows the serialization of client types like ListOptions. + v1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} diff --git a/pkg/apis/propagationstrategy/register.go b/pkg/apis/propagationstrategy/register.go deleted file mode 100644 index 3aae898bb..000000000 --- a/pkg/apis/propagationstrategy/register.go +++ /dev/null @@ -1,6 +0,0 @@ -package propagationstrategy - -// GroupName is the group name used in this package -const ( - GroupName = "propagationstrategy.karmada.io" -) diff --git a/pkg/apis/propagationstrategy/v1alpha1/doc.go b/pkg/apis/propagationstrategy/v1alpha1/doc.go index 1e7336e5d..03985ed48 100644 --- a/pkg/apis/propagationstrategy/v1alpha1/doc.go +++ b/pkg/apis/propagationstrategy/v1alpha1/doc.go @@ -1,5 +1,4 @@ -// +k8s:deepcopy-gen=package -// +groupName=propagationstrategy.karmada.io - // Package v1alpha1 is the v1alpha1 version of the API. +// +k8s:deepcopy-gen=package,register +// +groupName=propagationstrategy.karmada.io package v1alpha1 diff --git a/pkg/apis/propagationstrategy/v1alpha1/register.go b/pkg/apis/propagationstrategy/v1alpha1/register.go deleted file mode 100644 index ef04b4334..000000000 --- a/pkg/apis/propagationstrategy/v1alpha1/register.go +++ /dev/null @@ -1,45 +0,0 @@ -package v1alpha1 - -import ( - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/runtime/schema" - - "github.com/karmada-io/karmada/pkg/apis/propagationstrategy" -) - -// SchemeGroupVersion is group version used to register these objects -var SchemeGroupVersion = schema.GroupVersion{Group: propagationstrategy.GroupName, Version: "v1alpha1"} - -// Kind takes an unqualified kind and returns back a Group qualified GroupKind -func Kind(kind string) schema.GroupKind { - return SchemeGroupVersion.WithKind(kind).GroupKind() -} - -// Resource takes an unqualified resource and returns a Group qualified GroupResource -func Resource(resource string) schema.GroupResource { - return SchemeGroupVersion.WithResource(resource).GroupResource() -} - -var ( - // SchemeBuilder initializes a scheme builder - SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) - // AddToScheme is a global function that registers this API group & version to a scheme - AddToScheme = SchemeBuilder.AddToScheme -) - -// Adds the list of known types to Scheme. -func addKnownTypes(scheme *runtime.Scheme) error { - scheme.AddKnownTypes(SchemeGroupVersion, - &PropagationPolicy{}, - &PropagationPolicyList{}, - &PropagationBinding{}, - &PropagationBindingList{}, - &PropagationWork{}, - &PropagationWorkList{}, - &OverridePolicy{}, - &OverridePolicyList{}, - ) - metav1.AddToGroupVersion(scheme, SchemeGroupVersion) - return nil -} diff --git a/pkg/apis/propagationstrategy/v1alpha1/zz_generated.register.go b/pkg/apis/propagationstrategy/v1alpha1/zz_generated.register.go new file mode 100644 index 000000000..55638541c --- /dev/null +++ b/pkg/apis/propagationstrategy/v1alpha1/zz_generated.register.go @@ -0,0 +1,57 @@ +// Code generated by register-gen. DO NOT EDIT. + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName specifies the group name used to register the objects. +const GroupName = "propagationstrategy.karmada.io" + +// GroupVersion specifies the group and the version used to register the objects. +var GroupVersion = v1.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +// SchemeGroupVersion is group version used to register these objects +// Deprecated: use GroupVersion instead. +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. + SchemeBuilder runtime.SchemeBuilder + localSchemeBuilder = &SchemeBuilder + // Depreciated: use Install instead + AddToScheme = localSchemeBuilder.AddToScheme + Install = localSchemeBuilder.AddToScheme +) + +func init() { + // 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. + localSchemeBuilder.Register(addKnownTypes) +} + +// Adds the list of known types to Scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &OverridePolicy{}, + &OverridePolicyList{}, + &PropagationBinding{}, + &PropagationBindingList{}, + &PropagationPolicy{}, + &PropagationPolicyList{}, + &PropagationWork{}, + &PropagationWorkList{}, + ) + // AddToGroupVersion allows the serialization of client types like ListOptions. + v1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +}