Documentation ¶
Index ¶
- func ParseKindArg(arg string) (*GroupVersionKind, GroupKind)
- func ParseResourceArg(arg string) (*GroupVersionResource, GroupResource)
- type GroupKind
- type GroupResource
- type GroupVersion
- func (gv GroupVersion) Empty() bool
- func (gv GroupVersion) Identifier() string
- func (gv GroupVersion) KindForGroupVersionKinds(kinds []GroupVersionKind) (target GroupVersionKind, ok bool)
- func (gv GroupVersion) String() string
- func (gv GroupVersion) WithKind(kind string) GroupVersionKind
- func (gv GroupVersion) WithResource(resource string) GroupVersionResource
- type GroupVersionKind
- type GroupVersionResource
- type GroupVersions
- type ObjectKind
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseKindArg ¶
func ParseKindArg(arg string) (*GroupVersionKind, GroupKind)
ParseKindArg takes the common style of string which may be either `Kind.group.com` or `Kind.version.group.com` and parses it out into both possibilities. This code takes no responsibility for knowing which representation was intended but with a knowledge of all GroupKinds, calling code can take a very good guess. If there are only two segments, then `*GroupVersionResource` is nil. `Kind.group.com` -> `group=com, version=group, kind=Kind` and `group=group.com, kind=Kind`
func ParseResourceArg ¶
func ParseResourceArg(arg string) (*GroupVersionResource, GroupResource)
ParseResourceArg takes the common style of string which may be either `resource.group.com` or `resource.version.group.com` and parses it out into both possibilities. This code takes no responsibility for knowing which representation was intended but with a knowledge of all GroupVersions, calling code can take a very good guess. If there are only two segments, then `*GroupVersionResource` is nil. `resource.group.com` -> `group=com, version=group, resource=resource` and `group=group.com, resource=resource`
Types ¶
type GroupKind ¶
GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
func ParseGroupKind ¶
func (GroupKind) WithVersion ¶
func (gk GroupKind) WithVersion(version string) GroupVersionKind
type GroupResource ¶
GroupResource specifies a Group and a Resource, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
func ParseGroupResource ¶
func ParseGroupResource(gr string) GroupResource
ParseGroupResource turns "resource.group" string into a GroupResource struct. Empty strings are allowed for each field.
func (GroupResource) Empty ¶
func (gr GroupResource) Empty() bool
func (GroupResource) String ¶
func (gr GroupResource) String() string
func (GroupResource) WithVersion ¶
func (gr GroupResource) WithVersion(version string) GroupVersionResource
type GroupVersion ¶
GroupVersion contains the "group" and the "version", which uniquely identifies the API.
func ParseGroupVersion ¶
func ParseGroupVersion(gv string) (GroupVersion, error)
ParseGroupVersion turns "group/version" string into a GroupVersion struct. It reports error if it cannot parse the string.
func (GroupVersion) Empty ¶
func (gv GroupVersion) Empty() bool
Empty returns true if group and version are empty
func (GroupVersion) Identifier ¶
func (gv GroupVersion) Identifier() string
Identifier implements runtime.GroupVersioner interface.
func (GroupVersion) KindForGroupVersionKinds ¶
func (gv GroupVersion) KindForGroupVersionKinds(kinds []GroupVersionKind) (target GroupVersionKind, ok bool)
KindForGroupVersionKinds identifies the preferred GroupVersionKind out of a list. It returns ok false if none of the options match the group. It prefers a match to group and version over just group. TODO: Move GroupVersion to a package under pkg/runtime, since it's used by scheme. TODO: Introduce an adapter type between GroupVersion and runtime.GroupVersioner, and use LegacyCodec(GroupVersion) in fewer places.
func (GroupVersion) String ¶
func (gv GroupVersion) String() string
String puts "group" and "version" into a single "group/version" string. For the legacy v1 it returns "v1".
func (GroupVersion) WithKind ¶
func (gv GroupVersion) WithKind(kind string) GroupVersionKind
WithKind creates a GroupVersionKind based on the method receiver's GroupVersion and the passed Kind.
func (GroupVersion) WithResource ¶
func (gv GroupVersion) WithResource(resource string) GroupVersionResource
WithResource creates a GroupVersionResource based on the method receiver's GroupVersion and the passed Resource.
type GroupVersionKind ¶
GroupVersionKind unambiguously identifies a kind. It doesn't anonymously include GroupVersion to avoid automatic coercion. It doesn't use a GroupVersion to avoid custom marshalling
func FromAPIVersionAndKind ¶
func FromAPIVersionAndKind(apiVersion, kind string) GroupVersionKind
FromAPIVersionAndKind returns a GVK representing the provided fields for types that do not use TypeMeta. This method exists to support test types and legacy serializations that have a distinct group and kind. TODO: further reduce usage of this method.
func (GroupVersionKind) Empty ¶
func (gvk GroupVersionKind) Empty() bool
Empty returns true if group, version, and kind are empty
func (GroupVersionKind) GroupKind ¶
func (gvk GroupVersionKind) GroupKind() GroupKind
func (GroupVersionKind) GroupVersion ¶
func (gvk GroupVersionKind) GroupVersion() GroupVersion
func (GroupVersionKind) String ¶
func (gvk GroupVersionKind) String() string
func (GroupVersionKind) ToAPIVersionAndKind ¶
func (gvk GroupVersionKind) ToAPIVersionAndKind() (string, string)
ToAPIVersionAndKind is a convenience method for satisfying runtime.Object on types that do not use TypeMeta.
type GroupVersionResource ¶
GroupVersionResource unambiguously identifies a resource. It doesn't anonymously include GroupVersion to avoid automatic coercion. It doesn't use a GroupVersion to avoid custom marshalling
func (GroupVersionResource) Empty ¶
func (gvr GroupVersionResource) Empty() bool
func (GroupVersionResource) GroupResource ¶
func (gvr GroupVersionResource) GroupResource() GroupResource
func (GroupVersionResource) GroupVersion ¶
func (gvr GroupVersionResource) GroupVersion() GroupVersion
func (GroupVersionResource) String ¶
func (gvr GroupVersionResource) String() string
type GroupVersions ¶
type GroupVersions []GroupVersion
GroupVersions can be used to represent a set of desired group versions. TODO: Move GroupVersions to a package under pkg/runtime, since it's used by scheme. TODO: Introduce an adapter type between GroupVersions and runtime.GroupVersioner, and use LegacyCodec(GroupVersion) in fewer places.
func (GroupVersions) Identifier ¶
func (gvs GroupVersions) Identifier() string
Identifier implements runtime.GroupVersioner interface.
func (GroupVersions) KindForGroupVersionKinds ¶
func (gvs GroupVersions) KindForGroupVersionKinds(kinds []GroupVersionKind) (GroupVersionKind, bool)
KindForGroupVersionKinds identifies the preferred GroupVersionKind out of a list. It returns ok false if none of the options match the group.
type ObjectKind ¶
type ObjectKind interface { // GroupVersionKind returns the stored group, version, and kind of object, or an empty struct // if the object does not expose or provide these fields. GroupVersionKind() GroupVersionKind }