v0.16.3 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Oct 18, 2023 License: Apache-2.0 Imports: 18 Imported by: 909



Package apiutil contains utilities for working with raw Kubernetes API machinery, such as creating RESTMappers and raw REST clients, and extracting the GVK of an object.



This section is empty.


This section is empty.


func AddToProtobufScheme added in v0.7.0

func AddToProtobufScheme(addToScheme func(*runtime.Scheme) error) error

AddToProtobufScheme add the given SchemeBuilder into protobufScheme, which should be additional types that do support protobuf.

func GVKForObject

func GVKForObject(obj runtime.Object, scheme *runtime.Scheme) (schema.GroupVersionKind, error)

GVKForObject finds the GroupVersionKind associated with the given object, if there is only a single such GVK.

func IsGVKNamespaced added in v0.15.0

func IsGVKNamespaced(gvk schema.GroupVersionKind, restmapper meta.RESTMapper) (bool, error)

IsGVKNamespaced returns true if the object having the provided GVK is namespace scoped.

func IsObjectNamespaced added in v0.15.0

func IsObjectNamespaced(obj runtime.Object, scheme *runtime.Scheme, restmapper meta.RESTMapper) (bool, error)

IsObjectNamespaced returns true if the object is namespace scoped. For unstructured objects the gvk is found from the object itself.

func NewDiscoveryRESTMapper

func NewDiscoveryRESTMapper(c *rest.Config, httpClient *http.Client) (meta.RESTMapper, error)

NewDiscoveryRESTMapper constructs a new RESTMapper based on discovery information fetched by a new client with the given config.

func NewDynamicRESTMapper added in v0.3.0

func NewDynamicRESTMapper(cfg *rest.Config, httpClient *http.Client) (meta.RESTMapper, error)

NewDynamicRESTMapper returns a dynamic RESTMapper for cfg. The dynamic RESTMapper dynamically discovers resource types at runtime.

func RESTClientForGVK

func RESTClientForGVK(gvk schema.GroupVersionKind, isUnstructured bool, baseConfig *rest.Config, codecs serializer.CodecFactory, httpClient *http.Client) (rest.Interface, error)

RESTClientForGVK constructs a new rest.Interface capable of accessing the resource associated with the given GroupVersionKind. The REST client will be configured to use the negotiated serializer from baseConfig, if set, otherwise a default serializer will be set.


type ErrResourceDiscoveryFailed added in v0.16.2

type ErrResourceDiscoveryFailed map[schema.GroupVersion]error

ErrResourceDiscoveryFailed is returned if the RESTMapper cannot discover supported resources for some GroupVersions. It wraps the errors encountered, except "NotFound" errors are replaced with meta.NoResourceMatchError, for backwards compatibility with code that uses meta.IsNoMatchError() to check for unsupported APIs.

func (*ErrResourceDiscoveryFailed) Error added in v0.16.2

Error implements the error interface.

func (*ErrResourceDiscoveryFailed) Unwrap added in v0.16.2

func (e *ErrResourceDiscoveryFailed) Unwrap() []error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL