github.com/ironcore-dev/gardener-extension-provider-ironcore@v0.3.2-0.20240314231816-8336447fb9a0/pkg/apis/config/register.go (about)

     1  // SPDX-FileCopyrightText: 2022 SAP SE or an SAP affiliate company and IronCore contributors
     2  // SPDX-License-Identifier: Apache-2.0
     3  
     4  package config
     5  
     6  import (
     7  	"k8s.io/apimachinery/pkg/runtime"
     8  	"k8s.io/apimachinery/pkg/runtime/schema"
     9  )
    10  
    11  // GroupName is the group name use in this package
    12  const GroupName = "ironcore.provider.extensions.config.gardener.cloud"
    13  
    14  // SchemeGroupVersion is group version used to register these objects
    15  var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
    16  
    17  // Kind takes an unqualified kind and returns a Group qualified GroupKind
    18  func Kind(kind string) schema.GroupKind {
    19  	return SchemeGroupVersion.WithKind(kind).GroupKind()
    20  }
    21  
    22  // Resource takes an unqualified resource and returns a Group qualified GroupResource
    23  func Resource(resource string) schema.GroupResource {
    24  	return SchemeGroupVersion.WithResource(resource).GroupResource()
    25  }
    26  
    27  var (
    28  	// SchemeBuilder used to register the Shoot resource.
    29  	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
    30  	// AddToScheme is a pointer to SchemeBuilder.AddToScheme.
    31  	AddToScheme = SchemeBuilder.AddToScheme
    32  )
    33  
    34  // Adds the list of known types to api.Scheme.
    35  func addKnownTypes(scheme *runtime.Scheme) error {
    36  	scheme.AddKnownTypes(SchemeGroupVersion,
    37  		&ControllerConfiguration{},
    38  	)
    39  	return nil
    40  }