diff --git a/pkg/apis/propagationstrategy/register.go b/pkg/apis/propagationstrategy/register.go new file mode 100644 index 000000000..3aae898bb --- /dev/null +++ b/pkg/apis/propagationstrategy/register.go @@ -0,0 +1,6 @@ +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 new file mode 100644 index 000000000..1e7336e5d --- /dev/null +++ b/pkg/apis/propagationstrategy/v1alpha1/doc.go @@ -0,0 +1,5 @@ +// +k8s:deepcopy-gen=package +// +groupName=propagationstrategy.karmada.io + +// Package v1alpha1 is the v1alpha1 version of the API. +package v1alpha1 diff --git a/pkg/apis/propagationstrategy/v1alpha1/register.go b/pkg/apis/propagationstrategy/v1alpha1/register.go new file mode 100644 index 000000000..eb9f6b129 --- /dev/null +++ b/pkg/apis/propagationstrategy/v1alpha1/register.go @@ -0,0 +1,43 @@ +package v1alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + + "github.com/huawei-cloudnative/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{}, + ) + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +}