Documentation ¶
Overview ¶
Package v1alpha2 contains v1alpha2 of the Query API. +kubebuilder:object:generate=true +groupName=spaces.upbound.io +versionName=v1alpha2
Index ¶
- Constants
- Variables
- type Direction
- type Freshness
- type GroupQuery
- type Query
- type QueryCondition
- type QueryCreationTimestamp
- type QueryFilter
- type QueryFilterControlPlane
- type QueryGroupKind
- type QueryGrouping
- type QueryNestedResources
- type QueryObjects
- type QueryOrder
- type QueryPage
- type QueryRelation
- type QueryResources
- type QueryResponse
- type QueryResponseControlPlane
- type QueryResponseCursor
- type QueryResponseMutablePath
- type QueryResponseObject
- type QueryResponseObjects
- type QueryResponseRelation
- type QueryResponseTable
- type QuerySpec
- type QueryTable
- type QueryTopLevelFilter
- type QueryTopLevelResources
- type SpaceQuery
Constants ¶
const ( Group = "query.spaces.upbound.io" Version = "v1alpha2" )
Package type metadata.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var ( // SpacesQueryKind is the kind of SpaceQuery. SpacesQueryKind = reflect.TypeOf(SpaceQuery{}).Name() // GroupQueryKind is the kind of GroupQuery. GroupQueryKind = reflect.TypeOf(GroupQuery{}).Name() // QueryKind is the kind of Query. QueryKind = reflect.TypeOf(Query{}).Name() )
Functions ¶
This section is empty.
Types ¶
type Freshness ¶
type Freshness struct { // group is the group of the control plane to check for freshness of // the data. In case of GroupQuery or Query, the group is defaulted and // must match the group of the request. // +required Group string `json:"group"` // controlPlane is the name of the control plane to check for freshness of the data. // In case of Query, the name is defaulted and must match the control plane // name of the request. // +required ControlPlane string `json:"controlPlane"` // resourceVersion is the resource version of the specified control plane // to wait for before executing the query. Normal request timeouts apply. // The resourceVersion is a large integer, returned by previous queries or // by requests against the control plane Kubernetes API. // // Note that resource versions between control planes are not correlated. // +required // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Pattern=`^[0-9]+$` ResourceVersion string `json:"resourceVersion"` }
Freshness specifies a resource version per control plane to wait for before returning results. It's helpful to ensure consistency for read-after-write.
func (*Freshness) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Freshness.
func (*Freshness) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GroupQuery ¶
type GroupQuery struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec *QuerySpec `json:"spec,omitempty"` Response *QueryResponse `json:"response,omitempty"` }
GroupQuery represents a query against a group of control planes.
+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*GroupQuery) DeepCopy ¶
func (in *GroupQuery) DeepCopy() *GroupQuery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupQuery.
func (*GroupQuery) DeepCopyInto ¶
func (in *GroupQuery) DeepCopyInto(out *GroupQuery)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GroupQuery) DeepCopyObject ¶
func (in *GroupQuery) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type Query ¶
type Query struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec *QuerySpec `json:"spec,omitempty"` Response *QueryResponse `json:"response,omitempty"` }
Query represents a query against one control plane, the one with the same name and namespace as the query.
+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Query) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Query.
func (*Query) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Query) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QueryCondition ¶
type QueryCondition struct { // type is the type of condition to query. // Examples: Ready, Synced // // +kubebuilder:validation:Required Type string `json:"type"` // status is the status of condition to query. This is either True, False // or Unknown. Status string `json:"status,omitempty"` // reason queries based on the reason field of the condition. Reason string `json:"reason,omitempty"` }
A QueryCondition specifies how to query a condition.
func (*QueryCondition) DeepCopy ¶
func (in *QueryCondition) DeepCopy() *QueryCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryCondition.
func (*QueryCondition) DeepCopyInto ¶
func (in *QueryCondition) DeepCopyInto(out *QueryCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryCreationTimestamp ¶
type QueryCreationTimestamp struct { After metav1.Time `json:"after,omitempty"` Before metav1.Time `json:"before,omitempty"` }
QueryCreationTimestamp specifies how to query by object creation time.
func (*QueryCreationTimestamp) DeepCopy ¶
func (in *QueryCreationTimestamp) DeepCopy() *QueryCreationTimestamp
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryCreationTimestamp.
func (*QueryCreationTimestamp) DeepCopyInto ¶
func (in *QueryCreationTimestamp) DeepCopyInto(out *QueryCreationTimestamp)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryFilter ¶
type QueryFilter struct { // id is the object ID to query. ID string `json:"id,omitempty"` // creationTimestamp queries for objects with a range of creation times. CreationTimestamp QueryCreationTimestamp `json:"creationTimestamp,omitempty"` // namespace is the namespace WITHIN a control plane to query. Namespace string `json:"namespace,omitempty"` // name is the name of objects to query. Name string `json:"name,omitempty"` // groupKind is the GroupKinds of objects to query. GroupKind QueryGroupKind `json:"groupKind,omitempty"` // labels are the labels of objects to query. Labels map[string]string `json:"labels,omitempty"` // categories is a list of categories to query. // Examples: all, managed, composite, claim Categories []string `json:"categories,omitempty"` // conditions is a list of conditions to query. Conditions []QueryCondition `json:"conditions,omitempty"` // jsonpath is a JSONPath filter expression that will be applied to objects // as a filter. It must return a boolean; no objects will be matched if it // returns any other type. jsonpath should be used as a last resort; using // the other filter fields will generally be more efficient. JSONPath string `json:"jsonpath,omitempty"` }
QueryFilter specifies what to filter. Objects in the query response will match all criteria specified in the filter.
func (*QueryFilter) DeepCopy ¶
func (in *QueryFilter) DeepCopy() *QueryFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryFilter.
func (*QueryFilter) DeepCopyInto ¶
func (in *QueryFilter) DeepCopyInto(out *QueryFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryFilterControlPlane ¶
type QueryFilterControlPlane struct { // name is the name of the control plane to query. If empty, all control planes // are queried in the given scope. Name string `json:"name,omitempty"` // group is the group of the control plane to query. If empty, all groups // are queried in the given scope. Group string `json:"group,omitempty"` }
QueryFilterControlPlane specifies which control planes to query for objects.
func (*QueryFilterControlPlane) DeepCopy ¶
func (in *QueryFilterControlPlane) DeepCopy() *QueryFilterControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryFilterControlPlane.
func (*QueryFilterControlPlane) DeepCopyInto ¶
func (in *QueryFilterControlPlane) DeepCopyInto(out *QueryFilterControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryGroupKind ¶
type QueryGroupKind struct { // apiGroup is the API group to query. If empty all groups will be queried. APIGroup string `json:"apiGroup,omitempty"` // kind is kind to query. Kinds are case-insensitive and also match plural // resources. If empty all kinds will be queried. Kind string `json:"kind,omitempty"` }
QueryGroupKind specifies how to query for GroupKinds.
func (*QueryGroupKind) DeepCopy ¶
func (in *QueryGroupKind) DeepCopy() *QueryGroupKind
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryGroupKind.
func (*QueryGroupKind) DeepCopyInto ¶
func (in *QueryGroupKind) DeepCopyInto(out *QueryGroupKind)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryGrouping ¶
type QueryGrouping string
QueryGrouping specifies how to group the returned objects into multiple tables.
const ( // ByGVKsAndColumns specifies to group by GVKs and column definitions. I.e. // rows of different GVKs or with different column definitions are grouped // into different tables. ByGVKsAndColumns QueryGrouping = "ByGVKsAndColumn" )
type QueryNestedResources ¶
type QueryNestedResources struct { QueryResources `json:",inline"` // filters specifies how to filter the returned objects. Filters []QueryFilter `json:"filters,omitempty"` }
QueryNestedResources specifies how to return nested resources.
func (*QueryNestedResources) DeepCopy ¶
func (in *QueryNestedResources) DeepCopy() *QueryNestedResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryNestedResources.
func (*QueryNestedResources) DeepCopyInto ¶
func (in *QueryNestedResources) DeepCopyInto(out *QueryNestedResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryObjects ¶
type QueryObjects struct { // id specifies whether to return the id of the object. The id is opaque, // i.e. the format is undefined. It's only valid for comparison within the // response and as part of the spec.ids field in immediately following queries. // The format of the id might change between releases. ID bool `json:"id,omitempty"` // mutablePath specifies whether to return the mutable path of the object, // i.e. the path to the object in the control plane Kubernetes API. MutablePath bool `json:"mutablePath,omitempty"` // controlPlane specifies that the control plane name and namespace of the // object should be returned. ControlPlane bool `json:"controlPlane,omitempty"` // object specifies how to return the object, i.e. a sparse skeleton of // fields. A value of true means that all descendants of that field should // be returned. Other primitive values are not allowed. If the type of // a field does not match the schema (e.g. an array instead of an object), // the field is ignored. // // +kubebuilder:validation:Schemaless // +kubebuilder:pruning:PreserveUnknownFields Object *common.JSON `json:"object,omitempty"` // table specifies whether to return the object in a table format. Table *QueryTable `json:"table,omitempty"` // relations specifies which relations to query and what to return. // Relation names are predefined strings relative to the release of // Spaces. // // Examples: owners, descendants, resources, events, or their transitive // equivalents owners+, descendants+, resources+. Relations map[string]QueryRelation `json:"relations,omitempty"` }
A QueryObjects specifies how to return objects.
func (*QueryObjects) DeepCopy ¶
func (in *QueryObjects) DeepCopy() *QueryObjects
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryObjects.
func (*QueryObjects) DeepCopyInto ¶
func (in *QueryObjects) DeepCopyInto(out *QueryObjects)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryOrder ¶
type QueryOrder struct { // creationTimestamp specifies how to order by creation timestamp. // // +kubebuilder:validation:Enum=Asc;Desc CreationTimestamp Direction `json:"creationTimestamp,omitempty"` // name specifies how to order by name. // // +kubebuilder:validation:Enum=Asc;Desc Name Direction `json:"name,omitempty"` // namespace specifies how to order by namespace. // // +kubebuilder:validation:Enum=Asc;Desc Namespace Direction `json:"namespace,omitempty"` // APIGroup specifies how to order by API group. // // +kubebuilder:validation:Enum=Asc;Desc APIGroup Direction `json:"apiGroup,omitempty"` // kind specifies how to order by kind. // // +kubebuilder:validation:Enum=Asc;Desc Kind Direction `json:"kind,omitempty"` // group specifies how to order by control plane group. // // +kubebuilder:validation:Enum=Asc;Desc Group Direction `json:"group,omitempty"` // controlPlane specifies how to order by control plane name. ControlPlane Direction `json:"cluster"` }
A QueryOrder specifies how to order. Exactly one of the fields must be set.
func (*QueryOrder) DeepCopy ¶
func (in *QueryOrder) DeepCopy() *QueryOrder
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryOrder.
func (*QueryOrder) DeepCopyInto ¶
func (in *QueryOrder) DeepCopyInto(out *QueryOrder)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryPage ¶
type QueryPage struct { // first is the number of the first object to return relative to the cursor. // If neither first nor cursor is specified, objects are returned from the // beginning. First int `json:"first,omitempty"` // cursor is the cursor of the first object to return. This value is opaque, // the format cannot be relied on. It is returned by the server in the // response to a previous query. If neither first nor cursor is specified, // objects are returned from the beginning. // // Note that cursor values are not stable under different orderings. Cursor string `json:"cursor,omitempty"` }
A QueryPage specifies how to page.
func (*QueryPage) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryPage.
func (*QueryPage) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryRelation ¶
type QueryRelation struct {
QueryNestedResources `json:",inline"`
}
A QueryRelation specifies how to return objects in a relation.
func (*QueryRelation) DeepCopy ¶
func (in *QueryRelation) DeepCopy() *QueryRelation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryRelation.
func (*QueryRelation) DeepCopyInto ¶
func (in *QueryRelation) DeepCopyInto(out *QueryRelation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResources ¶
type QueryResources struct { // count specifies whether to return the number of objects. Note that // computing the count is expensive and should only be done if necessary. // Count is the remaining objects that match the query after paging. Count bool `json:"count,omitempty"` // objects specifies how to return the objects. Objects *QueryObjects `json:"objects,omitempty"` // order specifies how to order the returned objects. The first element // specifies the primary order, the second element specifies the secondary, // etc. Order []QueryOrder `json:"order,omitempty"` // limit is the maximal number of objects to return. Defaulted to 100. // // Note that a limit in a relation subsumes all the children of all parents, // i.e. a small limit only makes sense if there is only a single parent, // e.g. selected via spec.IDs. Limit int `json:"limit,omitempty"` // Page specifies how to page the returned objects. Page QueryPage `json:"page,omitempty"` // Cursor specifies the cursor of the first object to return. This value is // opaque and is only valid when passed into spec.page.cursor in a subsequent // query. The format of the cursor might change between releases. Cursor bool `json:"cursor,omitempty"` }
QueryResources specifies how to return resources.
func (*QueryResources) DeepCopy ¶
func (in *QueryResources) DeepCopy() *QueryResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResources.
func (*QueryResources) DeepCopyInto ¶
func (in *QueryResources) DeepCopyInto(out *QueryResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponse ¶
type QueryResponse struct { // warnings is a list of warnings that occurred while processing the query. // The query is still executed, but these warnings indicate problems. It // is recommended to print these to the user. Warnings []string `json:"warnings,omitempty"` QueryResponseObjects `json:",inline"` }
A QueryResponse is returned by the query server as response to a Query.
func (*QueryResponse) DeepCopy ¶
func (in *QueryResponse) DeepCopy() *QueryResponse
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponse.
func (*QueryResponse) DeepCopyInto ¶
func (in *QueryResponse) DeepCopyInto(out *QueryResponse)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponseControlPlane ¶
type QueryResponseControlPlane struct { // name is the name of the controlplane of the object. Name string `json:"name,omitempty"` // namespace is the namespace of the controlplane of the object. Namespace string `json:"namespace,omitempty"` }
QueryResponseControlPlane is the name and namespace of the object.
func (*QueryResponseControlPlane) DeepCopy ¶
func (in *QueryResponseControlPlane) DeepCopy() *QueryResponseControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponseControlPlane.
func (*QueryResponseControlPlane) DeepCopyInto ¶
func (in *QueryResponseControlPlane) DeepCopyInto(out *QueryResponseControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponseCursor ¶
type QueryResponseCursor struct { // cursor is the cursor to the next page of results. If empty, there are no more, Next string `json:"next"` // page is the page number of the cursor. Page int `json:"page"` // pageSize is the number of objects per page, i.e. the limit of the query. PageSize int `json:"pageSize"` // position is the position of the first object in the list of matching objects // at the time the first cursor was created. Due to creation and deletion of // objects before the cursor this value might be outdated. Position int `json:"position"` }
QueryResponseCursor is the cursor to the next page of results.
func (*QueryResponseCursor) DeepCopy ¶
func (in *QueryResponseCursor) DeepCopy() *QueryResponseCursor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponseCursor.
func (*QueryResponseCursor) DeepCopyInto ¶
func (in *QueryResponseCursor) DeepCopyInto(out *QueryResponseCursor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponseMutablePath ¶
type QueryResponseMutablePath struct { // basePath is the base URL of the controlplane, i.e. the Kubernetes API // endpoint. BasePath string `json:"basePath,omitempty"` metav1.GroupVersionResource `json:",inline"` }
QueryResponseMutablePath is the mutable path of the object, i.e. the path to the Kubernetes API where it can be mutated.
func (*QueryResponseMutablePath) DeepCopy ¶
func (in *QueryResponseMutablePath) DeepCopy() *QueryResponseMutablePath
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponseMutablePath.
func (*QueryResponseMutablePath) DeepCopyInto ¶
func (in *QueryResponseMutablePath) DeepCopyInto(out *QueryResponseMutablePath)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponseObject ¶
type QueryResponseObject struct { // id indentifies the object. The id is opaque, i.e. the format is // undefined. It's only valid for comparison within the response and as part // of the spec.ids field in immediately following queries. The format of the // id might change between releases. ID string `json:"id,omitempty"` // mutablePath is the mutable path of the object, i.e. the path to the // object in the controlplane Kubernetes API. MutablePath *QueryResponseMutablePath `json:"mutablePath,omitempty"` // controlPlane is the name and namespace of the object. ControlPlane *QueryResponseControlPlane `json:"controlPlane,omitempty"` // object is the sparse representation of the object. Object *common.JSONObject `json:"object,omitempty"` // errors is the list of errors that occurred while processing the object. Errors []string `json:"$errors,omitempty"` // relations is the list of objects related to the object. Relations map[string]QueryResponseRelation `json:"relations,omitempty"` }
QueryResponseObject is one object returned by the query.
func (*QueryResponseObject) DeepCopy ¶
func (in *QueryResponseObject) DeepCopy() *QueryResponseObject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponseObject.
func (*QueryResponseObject) DeepCopyInto ¶
func (in *QueryResponseObject) DeepCopyInto(out *QueryResponseObject)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponseObjects ¶
type QueryResponseObjects struct { // cursor is cursor to the next page of results. Cursor *QueryResponseCursor `json:"cursor,omitempty"` // objects is the list of objects returned by the query. // // Objects is mutual exclusive with Tables. Objects []QueryResponseObject `json:"objects,omitempty"` // tables is the list of tables returned by the query. Objects are grouped // as specified in the query. Hence, potentially multiple tables are returned. // // Objects is mutual exclusive with Tables. Tables []QueryResponseTable `json:"tables,omitempty"` // count is the total number of objects that match the query. Count *int `json:"count,omitempty"` // incomplete is true if the query was (potentially) limited before all // matching objects. If a non-empty spec.page.cursor has been used, or // objects have been skipped through non-zero spec.page.first, this value // is always true. Incomplete bool `json:"incomplete,omitempty"` }
QueryResponseObjects is the list of objects returned by the query.
func (*QueryResponseObjects) DeepCopy ¶
func (in *QueryResponseObjects) DeepCopy() *QueryResponseObjects
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponseObjects.
func (*QueryResponseObjects) DeepCopyInto ¶
func (in *QueryResponseObjects) DeepCopyInto(out *QueryResponseObjects)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponseRelation ¶
type QueryResponseRelation struct {
QueryResponseObjects `json:",inline"`
}
QueryResponseRelation is the list of objects related to the object.
func (*QueryResponseRelation) DeepCopy ¶
func (in *QueryResponseRelation) DeepCopy() *QueryResponseRelation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponseRelation.
func (*QueryResponseRelation) DeepCopyInto ¶
func (in *QueryResponseRelation) DeepCopyInto(out *QueryResponseRelation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryResponseTable ¶
type QueryResponseTable struct { // groupVersionKind is the group, version, and kind of the objects in the table. GroupVersionKind metav1.GroupVersionKind `json:"groupVersionKind"` // columns is the list of columns in the table. Columns []metav1.TableColumnDefinition `json:"columns"` // rows is the list of rows in the table. Rows []metav1.TableRow `json:"rows"` }
QueryResponseTable is a table representation of a set of API resources.
func (*QueryResponseTable) DeepCopy ¶
func (in *QueryResponseTable) DeepCopy() *QueryResponseTable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryResponseTable.
func (*QueryResponseTable) DeepCopyInto ¶
func (in *QueryResponseTable) DeepCopyInto(out *QueryResponseTable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QuerySpec ¶
type QuerySpec struct { QueryTopLevelResources `json:",inline"` // freshness specifies resource versions per control plane to wait for before // returning results. It's helpful to ensure consistency for read-after-write. // +optional // +listType=map // +listMapKey=group // +listMapKey=controlPlane Freshness []Freshness `json:"freshness,omitempty"` }
A QuerySpec specifies what to query.
func (*QuerySpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuerySpec.
func (*QuerySpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryTable ¶
type QueryTable struct { // grouping specifies how to group the returned objects into multiple // tables where every table can have different sets of columns. Grouping QueryGrouping `json:"grouping,omitempty"` }
QueryTable specifies how to return objects in a table or multiple tables (in case of grouping).
func (*QueryTable) DeepCopy ¶
func (in *QueryTable) DeepCopy() *QueryTable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryTable.
func (*QueryTable) DeepCopyInto ¶
func (in *QueryTable) DeepCopyInto(out *QueryTable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueryTopLevelFilter ¶
type QueryTopLevelFilter struct { // controlPlane specifies which control planes to query. If empty, all // control planes are queried in the given scope. ControlPlane QueryFilterControlPlane `json:"controlPlane,omitempty"` // objects specifies what to filter. Objects in the query response will // match all criteria in at least one of the specified filters. Objects []QueryFilter `json:"objects"` }
A QueryTopLevelFilter specifies how to filter top level objects. In contrast to QueryFilter, it also specifies which control plane to query.
func (*QueryTopLevelFilter) DeepCopy ¶
func (in *QueryTopLevelFilter) DeepCopy() *QueryTopLevelFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryTopLevelFilter.
func (*QueryTopLevelFilter) DeepCopyInto ¶
func (in *QueryTopLevelFilter) DeepCopyInto(out *QueryTopLevelFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QueryTopLevelFilter) ObjectIDs ¶
func (tlf *QueryTopLevelFilter) ObjectIDs() []string
ObjectIDs returns a flat list of object IDs specified in any of the top-level filter's object filters.
type QueryTopLevelResources ¶
type QueryTopLevelResources struct { QueryResources `json:",inline"` // filter specifies how to filter the returned objects. Filter QueryTopLevelFilter `json:"filter,omitempty"` }
A QueryTopLevelResources specifies how to return top level objects.
func (*QueryTopLevelResources) DeepCopy ¶
func (in *QueryTopLevelResources) DeepCopy() *QueryTopLevelResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryTopLevelResources.
func (*QueryTopLevelResources) DeepCopyInto ¶
func (in *QueryTopLevelResources) DeepCopyInto(out *QueryTopLevelResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceQuery ¶
type SpaceQuery struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec *QuerySpec `json:"spec,omitempty"` Response *QueryResponse `json:"response,omitempty"` }
SpaceQuery represents a query against all control planes.
+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*SpaceQuery) DeepCopy ¶
func (in *SpaceQuery) DeepCopy() *SpaceQuery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceQuery.
func (*SpaceQuery) DeepCopyInto ¶
func (in *SpaceQuery) DeepCopyInto(out *SpaceQuery)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceQuery) DeepCopyObject ¶
func (in *SpaceQuery) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.