Documentation ¶
Overview ¶
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.
Index ¶
- func AddToProtobufScheme(addToScheme func(*runtime.Scheme) error) error
- func GVKForObject(obj runtime.Object, scheme *runtime.Scheme) (schema.GroupVersionKind, error)
- func IsGVKNamespaced(gvk schema.GroupVersionKind, restmapper meta.RESTMapper) (bool, error)
- func IsObjectNamespaced(obj runtime.Object, scheme *runtime.Scheme, restmapper meta.RESTMapper) (bool, error)
- func NewDiscoveryRESTMapper(c *rest.Config, httpClient *http.Client) (meta.RESTMapper, error)
- func NewDynamicRESTMapper(cfg *rest.Config, httpClient *http.Client) (meta.RESTMapper, error)
- func RESTClientForGVK(gvk schema.GroupVersionKind, isUnstructured bool, baseConfig *rest.Config, ...) (rest.Interface, error)
- type ErrResourceDiscoveryFailed
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AddToProtobufScheme ¶ added in v0.7.0
AddToProtobufScheme add the given SchemeBuilder into protobufScheme, which should be additional types that do support protobuf.
func GVKForObject ¶
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 ¶
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
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.
Types ¶
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
func (e *ErrResourceDiscoveryFailed) Error() string
Error implements the error interface.
func (*ErrResourceDiscoveryFailed) Unwrap ¶ added in v0.16.2
func (e *ErrResourceDiscoveryFailed) Unwrap() []error