Documentation ¶
Overview ¶
Package unversioned contains API types that are common to all versions.
Index ¶
- Constants
- Variables
- func FieldSelectorQueryParam(version string) string
- func LabelSelectorQueryParam(version string) string
- type APIGroup
- type APIGroupList
- type APIResource
- type APIResourceList
- type APIVersions
- type CauseType
- type Duration
- type ExportOptions
- type GroupKind
- type GroupResource
- type GroupVersion
- func (gv GroupVersion) IsEmpty() bool
- func (gv GroupVersion) MarshalJSON() ([]byte, error)
- func (gv GroupVersion) String() string
- func (gv *GroupVersion) UnmarshalJSON(value []byte) error
- func (gv *GroupVersion) UnmarshalText(value []byte) error
- func (gv GroupVersion) WithKind(kind string) GroupVersionKind
- func (gv GroupVersion) WithResource(resource string) GroupVersionResource
- type GroupVersionForDiscovery
- type GroupVersionKind
- type GroupVersionResource
- type ListMeta
- type ObjectKind
- type Patch
- type RootPaths
- type Status
- type StatusCause
- type StatusDetails
- type StatusReason
- type Time
- type TypeMeta
Constants ¶
const ( StatusSuccess = "Success" StatusFailure = "Failure" )
Values of Status.Status
const LabelZoneFailureDomain = "failure-domain.alpha.kubernetes.io/zone"
const LabelZoneRegion = "failure-domain.alpha.kubernetes.io/region"
Variables ¶
var EmptyObjectKind = emptyObjectKind{}
EmptyObjectKind implements the ObjectKind interface as a noop TODO: this belongs in pkg/runtime, move unversioned.GVK into runtime.
var SchemeGroupVersion = GroupVersion{Group: "", Version: ""}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func FieldSelectorQueryParam ¶ added in v1.2.0
TODO: remove me when watch is refactored
func LabelSelectorQueryParam ¶ added in v1.2.0
TODO: remove me when watch is refactored
Types ¶
type APIGroup ¶ added in v1.2.0
type APIGroup struct { TypeMeta `json:",inline"` // name is the name of the group. Name string `json:"name"` // versions are the versions supported in this group. Versions []GroupVersionForDiscovery `json:"versions"` // preferredVersion is the version preferred by the API server, which // probably is the storage version. PreferredVersion GroupVersionForDiscovery `json:"preferredVersion,omitempty"` }
APIGroup contains the name, the supported versions, and the preferred version of a group.
func (*APIGroup) GetObjectKind ¶ added in v1.2.0
func (obj *APIGroup) GetObjectKind() ObjectKind
func (APIGroup) SwaggerDoc ¶ added in v1.2.0
type APIGroupList ¶ added in v1.2.0
type APIGroupList struct { TypeMeta `json:",inline"` // groups is a list of APIGroup. Groups []APIGroup `json:"groups"` }
APIGroupList is a list of APIGroup, to allow clients to discover the API at /apis.
func (*APIGroupList) GetObjectKind ¶ added in v1.2.0
func (obj *APIGroupList) GetObjectKind() ObjectKind
func (APIGroupList) SwaggerDoc ¶ added in v1.2.0
func (APIGroupList) SwaggerDoc() map[string]string
type APIResource ¶ added in v1.2.0
type APIResource struct { // name is the name of the resource. Name string `json:"name"` // namespaced indicates if a resource is namespaced or not. Namespaced bool `json:"namespaced"` }
APIResource specifies the name of a resource and whether it is namespaced.
func (APIResource) SwaggerDoc ¶ added in v1.2.0
func (APIResource) SwaggerDoc() map[string]string
type APIResourceList ¶ added in v1.2.0
type APIResourceList struct { TypeMeta `json:",inline"` // groupVersion is the group and version this APIResourceList is for. GroupVersion string `json:"groupVersion"` // resources contains the name of the resources and if they are namespaced. APIResources []APIResource `json:"resources"` }
APIResourceList is a list of APIResource, it is used to expose the name of the resources supported in a specific group and version, and if the resource is namespaced.
func (*APIResourceList) GetObjectKind ¶ added in v1.2.0
func (obj *APIResourceList) GetObjectKind() ObjectKind
func (APIResourceList) SwaggerDoc ¶ added in v1.2.0
func (APIResourceList) SwaggerDoc() map[string]string
type APIVersions ¶ added in v1.2.0
type APIVersions struct { TypeMeta `json:",inline"` // versions are the api versions that are available. Versions []string `json:"versions"` }
APIVersions lists the versions that are available, to allow clients to discover the API at /api, which is the root path of the legacy v1 API.
+protobuf.options.(gogoproto.goproto_stringer)=false
func (*APIVersions) GetObjectKind ¶ added in v1.2.0
func (obj *APIVersions) GetObjectKind() ObjectKind
func (APIVersions) GoString ¶ added in v1.2.0
func (apiVersions APIVersions) GoString() string
func (APIVersions) String ¶ added in v1.2.0
func (apiVersions APIVersions) String() string
String returns available api versions as a human-friendly version string.
func (APIVersions) SwaggerDoc ¶ added in v1.2.0
func (APIVersions) SwaggerDoc() map[string]string
type CauseType ¶
type CauseType string
CauseType is a machine readable value providing more detail about what occurred in a status response. An operation may have multiple causes for a status (whether Failure or Success).
const ( // CauseTypeFieldValueNotFound is used to report failure to find a requested value // (e.g. looking up an ID). CauseTypeFieldValueNotFound CauseType = "FieldValueNotFound" // CauseTypeFieldValueRequired is used to report required values that are not // provided (e.g. empty strings, null values, or empty arrays). CauseTypeFieldValueRequired CauseType = "FieldValueRequired" // CauseTypeFieldValueDuplicate is used to report collisions of values that must be // unique (e.g. unique IDs). CauseTypeFieldValueDuplicate CauseType = "FieldValueDuplicate" // CauseTypeFieldValueInvalid is used to report malformed values (e.g. failed regex // match). CauseTypeFieldValueInvalid CauseType = "FieldValueInvalid" // CauseTypeFieldValueNotSupported is used to report valid (as per formatting rules) // values that can not be handled (e.g. an enumerated string). CauseTypeFieldValueNotSupported CauseType = "FieldValueNotSupported" // CauseTypeUnexpectedServerResponse is used to report when the server responded to the client // without the expected return type. The presence of this cause indicates the error may be // due to an intervening proxy or the server software malfunctioning. CauseTypeUnexpectedServerResponse CauseType = "UnexpectedServerResponse" )
type Duration ¶
Duration is a wrapper around time.Duration which supports correct marshaling to YAML and JSON. In particular, it marshals into strings, which can be used as map keys in json.
func (Duration) MarshalJSON ¶
MarshalJSON implements the json.Marshaler interface.
func (*Duration) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaller interface.
type ExportOptions ¶ added in v1.2.0
type ExportOptions struct { TypeMeta `json:",inline"` // Should this value be exported. Export strips fields that a user can not specify.` Export bool `json:"export"` // Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace' Exact bool `json:"exact"` }
ExportOptions is the query options to the standard REST get call.
func (*ExportOptions) GetObjectKind ¶ added in v1.2.0
func (obj *ExportOptions) GetObjectKind() ObjectKind
func (ExportOptions) SwaggerDoc ¶ added in v1.2.0
func (ExportOptions) SwaggerDoc() map[string]string
type GroupKind ¶ added in v1.2.0
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
+protobuf.options.(gogoproto.goproto_stringer)=false
func Kind ¶ added in v1.2.0
Kind takes an unqualified kind and returns back a Group qualified GroupKind
func (GroupKind) WithVersion ¶ added in v1.2.0
func (gk GroupKind) WithVersion(version string) GroupVersionKind
type GroupResource ¶ added in v1.2.0
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
+protobuf.options.(gogoproto.goproto_stringer)=false
func (GroupResource) IsEmpty ¶ added in v1.2.0
func (gr GroupResource) IsEmpty() bool
func (*GroupResource) String ¶ added in v1.2.0
func (gr *GroupResource) String() string
func (GroupResource) WithVersion ¶ added in v1.2.0
func (gr GroupResource) WithVersion(version string) GroupVersionResource
type GroupVersion ¶ added in v1.2.0
GroupVersion contains the "group" and the "version", which uniquely identifies the API.
+protobuf.options.(gogoproto.goproto_stringer)=false
func ParseGroupVersion ¶ added in v1.2.0
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) IsEmpty ¶ added in v1.2.0
func (gv GroupVersion) IsEmpty() bool
IsEmpty returns true if group and version are empty
func (GroupVersion) MarshalJSON ¶ added in v1.2.0
func (gv GroupVersion) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface.
func (GroupVersion) String ¶ added in v1.2.0
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) UnmarshalJSON ¶ added in v1.2.0
func (gv *GroupVersion) UnmarshalJSON(value []byte) error
UnmarshalJSON implements the json.Unmarshaller interface.
func (*GroupVersion) UnmarshalText ¶ added in v1.2.0
func (gv *GroupVersion) UnmarshalText(value []byte) error
UnmarshalTEXT implements the Ugorji's encoding.TextUnmarshaler interface.
func (GroupVersion) WithKind ¶ added in v1.2.0
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 ¶ added in v1.2.0
func (gv GroupVersion) WithResource(resource string) GroupVersionResource
WithResource creates a GroupVersionResource based on the method receiver's GroupVersion and the passed Resource.
type GroupVersionForDiscovery ¶ added in v1.2.0
type GroupVersionForDiscovery struct { // groupVersion specifies the API group and version in the form "group/version" GroupVersion string `json:"groupVersion"` // version specifies the version in the form of "version". This is to save // the clients the trouble of splitting the GroupVersion. Version string `json:"version"` }
GroupVersion contains the "group/version" and "version" string of a version. It is made a struct to keep extensiblity.
func (GroupVersionForDiscovery) SwaggerDoc ¶ added in v1.2.0
func (GroupVersionForDiscovery) SwaggerDoc() map[string]string
type GroupVersionKind ¶ added in v1.2.0
GroupVersionKind unambiguously identifies a kind. It doesn't anonymously include GroupVersion to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling
+protobuf.options.(gogoproto.goproto_stringer)=false
func FromAPIVersionAndKind ¶ added in v1.2.0
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) GroupKind ¶ added in v1.2.0
func (gvk GroupVersionKind) GroupKind() GroupKind
func (GroupVersionKind) GroupVersion ¶ added in v1.2.0
func (gvk GroupVersionKind) GroupVersion() GroupVersion
func (GroupVersionKind) IsEmpty ¶ added in v1.2.0
func (gvk GroupVersionKind) IsEmpty() bool
IsEmpty returns true if group, version, and kind are empty
func (GroupVersionKind) String ¶ added in v1.2.0
func (gvk GroupVersionKind) String() string
func (*GroupVersionKind) ToAPIVersionAndKind ¶ added in v1.2.0
func (gvk *GroupVersionKind) ToAPIVersionAndKind() (string, string)
ToAPIVersionAndKind is a convenience method for satisfying runtime.Object on types that do not use TypeMeta.
type GroupVersionResource ¶ added in v1.2.0
GroupVersionResource unambiguously identifies a resource. It doesn't anonymously include GroupVersion to avoid automatic coersion. It doesn't use a GroupVersion to avoid custom marshalling
+protobuf.options.(gogoproto.goproto_stringer)=false
func (GroupVersionResource) GroupResource ¶ added in v1.2.0
func (gvr GroupVersionResource) GroupResource() GroupResource
func (GroupVersionResource) GroupVersion ¶ added in v1.2.0
func (gvr GroupVersionResource) GroupVersion() GroupVersion
func (*GroupVersionResource) String ¶ added in v1.2.0
func (gvr *GroupVersionResource) String() string
type ListMeta ¶
type ListMeta struct { // SelfLink is a URL representing this object. // Populated by the system. // Read-only. SelfLink string `json:"selfLink,omitempty"` // String that identifies the server's internal version of this object that // can be used by clients to determine when objects have changed. // Value must be treated as opaque by clients and passed unmodified back to the server. // Populated by the system. // Read-only. // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency ResourceVersion string `json:"resourceVersion,omitempty"` }
ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.
func (ListMeta) SwaggerDoc ¶
type ObjectKind ¶ added in v1.2.0
type ObjectKind interface { // SetGroupVersionKind sets or clears the intended serialized kind of an object. Passing kind nil // should clear the current setting. SetGroupVersionKind(kind *GroupVersionKind) // GroupVersionKind returns the stored group, version, and kind of an object, or nil if the object does // not expose or provide these fields. GroupVersionKind() *GroupVersionKind }
All objects that are serialized from a Scheme encode their type information. This interface is used by serialization to set type information from the Scheme onto the serialized version of an object. For objects that cannot be serialized or have unique requirements, this interface may be a no-op. TODO: this belongs in pkg/runtime, move unversioned.GVK into runtime.
type Patch ¶ added in v1.2.0
type Patch struct{}
Patch is provided to give a concrete name and type to the Kubernetes PATCH request body.
func (Patch) SwaggerDoc ¶ added in v1.2.0
type RootPaths ¶ added in v1.2.0
type RootPaths struct { // paths are the paths available at root. Paths []string `json:"paths"` }
RootPaths lists the paths available at root. For example: "/healthz", "/apis".
func (RootPaths) SwaggerDoc ¶ added in v1.2.0
type Status ¶
type Status struct { TypeMeta `json:",inline"` // Standard list metadata. // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds ListMeta `json:"metadata,omitempty"` // Status of the operation. // One of: "Success" or "Failure". // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status Status string `json:"status,omitempty"` // A human-readable description of the status of this operation. Message string `json:"message,omitempty"` // A machine-readable description of why this operation is in the // "Failure" status. If this value is empty there // is no information available. A Reason clarifies an HTTP status // code but does not override it. Reason StatusReason `json:"reason,omitempty"` // Extended data associated with the reason. Each reason may define its // own extended details. This field is optional and the data returned // is not guaranteed to conform to any schema except that defined by // the reason type. Details *StatusDetails `json:"details,omitempty"` // Suggested HTTP return code for this status, 0 if not set. Code int32 `json:"code,omitempty"` }
Status is a return value for calls that don't return other objects.
func (*Status) GetObjectKind ¶ added in v1.2.0
func (obj *Status) GetObjectKind() ObjectKind
func (Status) SwaggerDoc ¶
type StatusCause ¶
type StatusCause struct { // A machine-readable description of the cause of the error. If this value is // empty there is no information available. Type CauseType `json:"reason,omitempty"` // A human-readable description of the cause of the error. This field may be // presented as-is to a reader. Message string `json:"message,omitempty"` // The field of the resource that has caused this error, as named by its JSON // serialization. May include dot and postfix notation for nested attributes. // Arrays are zero-indexed. Fields may appear more than once in an array of // causes due to fields having multiple errors. // Optional. // // Examples: // "name" - the field "name" on the current resource // "items[0].name" - the field "name" on the first array entry in "items" Field string `json:"field,omitempty"` }
StatusCause provides more information about an api.Status failure, including cases when multiple errors are encountered.
func (StatusCause) SwaggerDoc ¶
func (StatusCause) SwaggerDoc() map[string]string
type StatusDetails ¶
type StatusDetails struct { // The name attribute of the resource associated with the status StatusReason // (when there is a single name which can be described). Name string `json:"name,omitempty"` // The group attribute of the resource associated with the status StatusReason. Group string `json:"group,omitempty"` // The kind attribute of the resource associated with the status StatusReason. // On some operations may differ from the requested resource Kind. // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds Kind string `json:"kind,omitempty"` // The Causes array includes more details associated with the StatusReason // failure. Not all StatusReasons may provide detailed causes. Causes []StatusCause `json:"causes,omitempty"` // If specified, the time in seconds before the operation should be retried. RetryAfterSeconds int32 `json:"retryAfterSeconds,omitempty"` }
StatusDetails is a set of additional properties that MAY be set by the server to provide additional information about a response. The Reason field of a Status object defines what attributes will be set. Clients must ignore fields that do not match the defined type of each attribute, and should assume that any attribute may be empty, invalid, or under defined.
func (StatusDetails) SwaggerDoc ¶
func (StatusDetails) SwaggerDoc() map[string]string
type StatusReason ¶
type StatusReason string
StatusReason is an enumeration of possible failure causes. Each StatusReason must map to a single HTTP status code, but multiple reasons may map to the same HTTP status code. TODO: move to apiserver
const ( // StatusReasonUnknown means the server has declined to indicate a specific reason. // The details field may contain other information about this error. // Status code 500. StatusReasonUnknown StatusReason = "" // the user to present appropriate authorization credentials (identified by the WWW-Authenticate header) // in order for the action to be completed. If the user has specified credentials on the request, the // server considers them insufficient. // Status code 401 StatusReasonUnauthorized StatusReason = "Unauthorized" // StatusReasonForbidden means the server can be reached and understood the request, but refuses // to take any further action. It is the result of the server being configured to deny access for some reason // to the requested resource by the client. // Details (optional): // "kind" string - the kind attribute of the forbidden resource // on some operations may differ from the requested // resource. // "id" string - the identifier of the forbidden resource // Status code 403 StatusReasonForbidden StatusReason = "Forbidden" // StatusReasonNotFound means one or more resources required for this operation // could not be found. // Details (optional): // "kind" string - the kind attribute of the missing resource // on some operations may differ from the requested // resource. // "id" string - the identifier of the missing resource // Status code 404 StatusReasonNotFound StatusReason = "NotFound" // StatusReasonAlreadyExists means the resource you are creating already exists. // Details (optional): // "kind" string - the kind attribute of the conflicting resource // "id" string - the identifier of the conflicting resource // Status code 409 StatusReasonAlreadyExists StatusReason = "AlreadyExists" // StatusReasonConflict means the requested update operation cannot be completed // due to a conflict in the operation. The client may need to alter the request. // Each resource may define custom details that indicate the nature of the // conflict. // Status code 409 StatusReasonConflict StatusReason = "Conflict" // StatusReasonGone means the item is no longer available at the server and no // forwarding address is known. // Status code 410 StatusReasonGone StatusReason = "Gone" // StatusReasonInvalid means the requested create or update operation cannot be // completed due to invalid data provided as part of the request. The client may // need to alter the request. When set, the client may use the StatusDetails // message field as a summary of the issues encountered. // Details (optional): // "kind" string - the kind attribute of the invalid resource // "id" string - the identifier of the invalid resource // "causes" - one or more StatusCause entries indicating the data in the // provided resource that was invalid. The code, message, and // field attributes will be set. // Status code 422 StatusReasonInvalid StatusReason = "Invalid" // StatusReasonServerTimeout means the server can be reached and understood the request, // but cannot complete the action in a reasonable time. The client should retry the request. // This is may be due to temporary server load or a transient communication issue with // another server. Status code 500 is used because the HTTP spec provides no suitable // server-requested client retry and the 5xx class represents actionable errors. // Details (optional): // "kind" string - the kind attribute of the resource being acted on. // "id" string - the operation that is being attempted. // "retryAfterSeconds" int32 - the number of seconds before the operation should be retried // Status code 500 StatusReasonServerTimeout StatusReason = "ServerTimeout" // StatusReasonTimeout means that the request could not be completed within the given time. // Clients can get this response only when they specified a timeout param in the request, // or if the server cannot complete the operation within a reasonable amount of time. // The request might succeed with an increased value of timeout param. The client *should* // wait at least the number of seconds specified by the retryAfterSeconds field. // Details (optional): // "retryAfterSeconds" int32 - the number of seconds before the operation should be retried // Status code 504 StatusReasonTimeout StatusReason = "Timeout" // StatusReasonBadRequest means that the request itself was invalid, because the request // doesn't make any sense, for example deleting a read-only object. This is different than // StatusReasonInvalid above which indicates that the API call could possibly succeed, but the // data was invalid. API calls that return BadRequest can never succeed. StatusReasonBadRequest StatusReason = "BadRequest" // StatusReasonMethodNotAllowed means that the action the client attempted to perform on the // resource was not supported by the code - for instance, attempting to delete a resource that // can only be created. API calls that return MethodNotAllowed can never succeed. StatusReasonMethodNotAllowed StatusReason = "MethodNotAllowed" // StatusReasonInternalError indicates that an internal error occurred, it is unexpected // and the outcome of the call is unknown. // Details (optional): // "causes" - The original error // Status code 500 StatusReasonInternalError StatusReason = "InternalError" // StatusReasonExpired indicates that the request is invalid because the content you are requesting // has expired and is no longer available. It is typically associated with watches that can't be // serviced. // Status code 410 (gone) StatusReasonExpired StatusReason = "Expired" // but the requested service is unavailable at this time. // Retrying the request after some time might succeed. // Status code 503 StatusReasonServiceUnavailable StatusReason = "ServiceUnavailable" )
type Time ¶
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false
func (Time) MarshalJSON ¶
MarshalJSON implements the json.Marshaler interface.
func (Time) Rfc3339Copy ¶
Rfc3339Copy returns a copy of the Time at second-level precision.
func (*Time) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaller interface.
type TypeMeta ¶
type TypeMeta struct { // Kind is a string value representing the REST resource this object represents. // Servers may infer this from the endpoint the client submits requests to. // Cannot be updated. // In CamelCase. // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds Kind string `json:"kind,omitempty"` // APIVersion defines the versioned schema of this representation of an object. // Servers should convert recognized schemas to the latest internal value, and // may reject unrecognized values. // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources APIVersion string `json:"apiVersion,omitempty"` }
TypeMeta describes an individual object in an API response or request with strings representing the type of the object and its API schema version. Structures that are versioned or persisted should inline TypeMeta.
func (*TypeMeta) GroupVersionKind ¶ added in v1.2.0
func (obj *TypeMeta) GroupVersionKind() *GroupVersionKind
GroupVersionKind satisfies the ObjectKind interface for all objects that embed TypeMeta
func (*TypeMeta) SetGroupVersionKind ¶ added in v1.2.0
func (obj *TypeMeta) SetGroupVersionKind(gvk *GroupVersionKind)
SetGroupVersionKind satisfies the ObjectKind interface for all objects that embed TypeMeta