Documentation ¶
Index ¶
- func IsGroupDiscoveryFailedError(err error) bool
- func NewRESTMapper(groupResources []*APIGroupResources, ...) meta.RESTMapper
- type APIGroupResources
- type DeferredDiscoveryRESTMapper
- func (d *DeferredDiscoveryRESTMapper) AliasesForResource(resource string) ([]string, bool)
- func (d *DeferredDiscoveryRESTMapper) KindFor(resource unversioned.GroupVersionResource) (unversioned.GroupVersionKind, error)
- func (d *DeferredDiscoveryRESTMapper) KindsFor(resource unversioned.GroupVersionResource) ([]unversioned.GroupVersionKind, error)
- func (d *DeferredDiscoveryRESTMapper) RESTMapping(gk unversioned.GroupKind, versions ...string) (*meta.RESTMapping, error)
- func (d *DeferredDiscoveryRESTMapper) RESTMappings(gk unversioned.GroupKind) ([]*meta.RESTMapping, error)
- func (d *DeferredDiscoveryRESTMapper) Reset()
- func (d *DeferredDiscoveryRESTMapper) ResourceFor(input unversioned.GroupVersionResource) (unversioned.GroupVersionResource, error)
- func (d *DeferredDiscoveryRESTMapper) ResourceSingularizer(resource string) (singular string, err error)
- func (d *DeferredDiscoveryRESTMapper) ResourcesFor(input unversioned.GroupVersionResource) ([]unversioned.GroupVersionResource, error)
- type DiscoveryClient
- func (d *DiscoveryClient) ServerGroups() (apiGroupList *unversioned.APIGroupList, err error)
- func (d *DiscoveryClient) ServerPreferredNamespacedResources() ([]unversioned.GroupVersionResource, error)
- func (d *DiscoveryClient) ServerPreferredResources() ([]unversioned.GroupVersionResource, error)
- func (d *DiscoveryClient) ServerResources() (map[string]*unversioned.APIResourceList, error)
- func (d *DiscoveryClient) ServerResourcesForGroupVersion(groupVersion string) (resources *unversioned.APIResourceList, err error)
- func (d *DiscoveryClient) ServerVersion() (*version.Info, error)
- func (d *DiscoveryClient) SwaggerSchema(version unversioned.GroupVersion) (*swagger.ApiDeclaration, error)
- type DiscoveryInterface
- type ErrGroupDiscoveryFailed
- type ServerGroupsInterface
- type ServerResourcesInterface
- type ServerVersionInterface
- type SwaggerSchemaInterface
- type UnstructuredObjectTyper
- func (d *UnstructuredObjectTyper) IsUnversioned(obj runtime.Object) (unversioned bool, ok bool)
- func (d *UnstructuredObjectTyper) ObjectKind(obj runtime.Object) (unversioned.GroupVersionKind, error)
- func (d *UnstructuredObjectTyper) ObjectKinds(obj runtime.Object) (gvks []unversioned.GroupVersionKind, unversionedType bool, err error)
- func (d *UnstructuredObjectTyper) Recognizes(gvk unversioned.GroupVersionKind) bool
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsGroupDiscoveryFailedError ¶ added in v1.4.0
IsGroupDiscoveryFailedError returns true if the provided error indicates the server was unable to discover a complete list of APIs for the client to use.
func NewRESTMapper ¶ added in v1.4.0
func NewRESTMapper(groupResources []*APIGroupResources, versionInterfaces meta.VersionInterfacesFunc) meta.RESTMapper
NewRESTMapper returns a PriorityRESTMapper based on the discovered groups and resourced passed in.
Types ¶
type APIGroupResources ¶ added in v1.4.0
type APIGroupResources struct { Group unversioned.APIGroup // A mapping of version string to a slice of APIResources for // that version. VersionedResources map[string][]unversioned.APIResource }
APIGroupResources is an API group with a mapping of versions to resources.
func GetAPIGroupResources ¶ added in v1.4.0
func GetAPIGroupResources(cl DiscoveryInterface) ([]*APIGroupResources, error)
GetAPIGroupResources uses the provided discovery client to gather discovery information and populate a slice of APIGroupResources.
type DeferredDiscoveryRESTMapper ¶ added in v1.4.0
type DeferredDiscoveryRESTMapper struct {
// contains filtered or unexported fields
}
DeferredDiscoveryRESTMapper is a RESTMapper that will defer initialization of the RESTMapper until the first mapping is requested.
func NewDeferredDiscoveryRESTMapper ¶ added in v1.4.0
func NewDeferredDiscoveryRESTMapper(cl DiscoveryInterface, versionInterface meta.VersionInterfacesFunc) *DeferredDiscoveryRESTMapper
NewDeferredDiscoveryRESTMapper returns a DeferredDiscoveryRESTMapper that will lazily query the provided client for discovery information to do REST mappings.
func (*DeferredDiscoveryRESTMapper) AliasesForResource ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) AliasesForResource(resource string) ([]string, bool)
AliasesForResource returns whether a resource has an alias or not.
func (*DeferredDiscoveryRESTMapper) KindFor ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) KindFor(resource unversioned.GroupVersionResource) (unversioned.GroupVersionKind, error)
KindFor takes a partial resource and returns back the single match. It returns an error if there are multiple matches.
func (*DeferredDiscoveryRESTMapper) KindsFor ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) KindsFor(resource unversioned.GroupVersionResource) ([]unversioned.GroupVersionKind, error)
KindsFor takes a partial resource and returns back the list of potential kinds in priority order.
func (*DeferredDiscoveryRESTMapper) RESTMapping ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) RESTMapping(gk unversioned.GroupKind, versions ...string) (*meta.RESTMapping, error)
RESTMapping identifies a preferred resource mapping for the provided group kind.
func (*DeferredDiscoveryRESTMapper) RESTMappings ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) RESTMappings(gk unversioned.GroupKind) ([]*meta.RESTMapping, error)
RESTMappings returns the RESTMappings for the provided group kind in a rough internal preferred order. If no kind is found, it will return a NoResourceMatchError.
func (*DeferredDiscoveryRESTMapper) Reset ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) Reset()
Reset resets the internally cached Discovery information and will cause the next mapping request to re-discover.
func (*DeferredDiscoveryRESTMapper) ResourceFor ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) ResourceFor(input unversioned.GroupVersionResource) (unversioned.GroupVersionResource, error)
ResourceFor takes a partial resource and returns back the single match. It returns an error if there are multiple matches.
func (*DeferredDiscoveryRESTMapper) ResourceSingularizer ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) ResourceSingularizer(resource string) (singular string, err error)
ResourceSingularizer converts a resource name from plural to singular (e.g., from pods to pod).
func (*DeferredDiscoveryRESTMapper) ResourcesFor ¶ added in v1.4.0
func (d *DeferredDiscoveryRESTMapper) ResourcesFor(input unversioned.GroupVersionResource) ([]unversioned.GroupVersionResource, error)
ResourcesFor takes a partial resource and returns back the list of potential resource in priority order.
type DiscoveryClient ¶
type DiscoveryClient struct { *restclient.RESTClient LegacyPrefix string }
DiscoveryClient implements the functions that discover server-supported API groups, versions and resources.
func NewDiscoveryClient ¶
func NewDiscoveryClient(c *restclient.RESTClient) *DiscoveryClient
New creates a new DiscoveryClient for the given RESTClient.
func NewDiscoveryClientForConfig ¶
func NewDiscoveryClientForConfig(c *restclient.Config) (*DiscoveryClient, error)
NewDiscoveryClientForConfig creates a new DiscoveryClient for the given config. This client can be used to discover supported resources in the API server.
func NewDiscoveryClientForConfigOrDie ¶
func NewDiscoveryClientForConfigOrDie(c *restclient.Config) *DiscoveryClient
NewDiscoveryClientForConfig creates a new DiscoveryClient for the given config. If there is an error, it panics.
func (*DiscoveryClient) ServerGroups ¶
func (d *DiscoveryClient) ServerGroups() (apiGroupList *unversioned.APIGroupList, err error)
ServerGroups returns the supported groups, with information like supported versions and the preferred version.
func (*DiscoveryClient) ServerPreferredNamespacedResources ¶ added in v1.3.0
func (d *DiscoveryClient) ServerPreferredNamespacedResources() ([]unversioned.GroupVersionResource, error)
ServerPreferredNamespacedResources returns the supported namespaced resources with the version preferred by the server.
func (*DiscoveryClient) ServerPreferredResources ¶ added in v1.3.0
func (d *DiscoveryClient) ServerPreferredResources() ([]unversioned.GroupVersionResource, error)
ServerPreferredResources returns the supported resources with the version preferred by the server.
func (*DiscoveryClient) ServerResources ¶
func (d *DiscoveryClient) ServerResources() (map[string]*unversioned.APIResourceList, error)
ServerResources returns the supported resources for all groups and versions.
func (*DiscoveryClient) ServerResourcesForGroupVersion ¶
func (d *DiscoveryClient) ServerResourcesForGroupVersion(groupVersion string) (resources *unversioned.APIResourceList, err error)
ServerResourcesForGroupVersion returns the supported resources for a group and version.
func (*DiscoveryClient) ServerVersion ¶
func (d *DiscoveryClient) ServerVersion() (*version.Info, error)
ServerVersion retrieves and parses the server's version (git version).
func (*DiscoveryClient) SwaggerSchema ¶
func (d *DiscoveryClient) SwaggerSchema(version unversioned.GroupVersion) (*swagger.ApiDeclaration, error)
SwaggerSchema retrieves and parses the swagger API schema the server supports.
type DiscoveryInterface ¶
type DiscoveryInterface interface { ServerGroupsInterface ServerResourcesInterface ServerVersionInterface SwaggerSchemaInterface }
DiscoveryInterface holds the methods that discover server-supported API groups, versions and resources.
type ErrGroupDiscoveryFailed ¶ added in v1.4.0
type ErrGroupDiscoveryFailed struct { // Groups is a list of the groups that failed to load and the error cause Groups map[unversioned.GroupVersion]error }
ErrGroupDiscoveryFailed is returned if one or more API groups fail to load.
func (*ErrGroupDiscoveryFailed) Error ¶ added in v1.4.0
func (e *ErrGroupDiscoveryFailed) Error() string
Error implements the error interface
type ServerGroupsInterface ¶
type ServerGroupsInterface interface { // ServerGroups returns the supported groups, with information like supported versions and the // preferred version. ServerGroups() (*unversioned.APIGroupList, error) }
ServerGroupsInterface has methods for obtaining supported groups on the API server
type ServerResourcesInterface ¶
type ServerResourcesInterface interface { // ServerResourcesForGroupVersion returns the supported resources for a group and version. ServerResourcesForGroupVersion(groupVersion string) (*unversioned.APIResourceList, error) // ServerResources returns the supported resources for all groups and versions. ServerResources() (map[string]*unversioned.APIResourceList, error) // ServerPreferredResources returns the supported resources with the version preferred by the // server. ServerPreferredResources() ([]unversioned.GroupVersionResource, error) // ServerPreferredNamespacedResources returns the supported namespaced resources with the // version preferred by the server. ServerPreferredNamespacedResources() ([]unversioned.GroupVersionResource, error) }
ServerResourcesInterface has methods for obtaining supported resources on the API server
type ServerVersionInterface ¶
type ServerVersionInterface interface { // ServerVersion retrieves and parses the server's version (git version). ServerVersion() (*version.Info, error) }
ServerVersionInterface has a method for retrieving the server's version.
type SwaggerSchemaInterface ¶
type SwaggerSchemaInterface interface { // SwaggerSchema retrieves and parses the swagger API schema the server supports. SwaggerSchema(version unversioned.GroupVersion) (*swagger.ApiDeclaration, error) }
SwaggerSchemaInterface has a method to retrieve the swagger schema.
type UnstructuredObjectTyper ¶ added in v1.4.0
type UnstructuredObjectTyper struct {
// contains filtered or unexported fields
}
UnstructuredObjectTyper provides a runtime.ObjectTyper implmentation for runtime.Unstructured object based on discovery information.
func NewUnstructuredObjectTyper ¶ added in v1.4.0
func NewUnstructuredObjectTyper(groupResources []*APIGroupResources) *UnstructuredObjectTyper
NewUnstructuredObjectTyper returns a runtime.ObjectTyper for unstructred objects based on discovery information.
func (*UnstructuredObjectTyper) IsUnversioned ¶ added in v1.4.0
func (d *UnstructuredObjectTyper) IsUnversioned(obj runtime.Object) (unversioned bool, ok bool)
IsUnversioned returns false always because *runtime.Unstructured objects should always have group,version,kind information set. ok will be true if the object's group,version,kind is registered.
func (*UnstructuredObjectTyper) ObjectKind ¶ added in v1.4.0
func (d *UnstructuredObjectTyper) ObjectKind(obj runtime.Object) (unversioned.GroupVersionKind, error)
ObjectKind returns the group,version,kind of the provided object, or an error if the object in not *runtime.Unstructured or has no group,version,kind information.
func (*UnstructuredObjectTyper) ObjectKinds ¶ added in v1.4.0
func (d *UnstructuredObjectTyper) ObjectKinds(obj runtime.Object) (gvks []unversioned.GroupVersionKind, unversionedType bool, err error)
ObjectKinds returns a slice of one element with the group,version,kind of the provided object, or an error if the object is not *runtime.Unstructured or has no group,version,kind information. unversionedType will always be false because runtime.Unstructured object should always have group,version,kind information set.
func (*UnstructuredObjectTyper) Recognizes ¶ added in v1.4.0
func (d *UnstructuredObjectTyper) Recognizes(gvk unversioned.GroupVersionKind) bool
Recognizes returns true if the provided group,version,kind was in the discovery information.