core.proto

Package: core.skv2.solo.io

Types:

Source File: github.com/solo-io/skv2/api/core/v1/core.proto

ObjectRef

Resource reference for an object

"name": string
"namespace": string

Field Type Description
name string name of the resource being referenced.
namespace string namespace of the resource being referenced.

ObjectRefList

Object providing a list of object refs. Used to store lists of refs inside a map.

"refs": []core.skv2.solo.io.ObjectRef

Field Type Description
refs []core.skv2.solo.io.ObjectRef

ClusterObjectRef

Resource reference for a cross-cluster-scoped object

"name": string
"namespace": string
"clusterName": string

Field Type Description
name string name of the resource being referenced.
namespace string namespace of the resource being referenced.
clusterName string name of the cluster in which the resource exists.

TypedObjectRef

Resource reference for a typed object

"apiGroup": .google.protobuf.StringValue
"kind": .google.protobuf.StringValue
"name": string
"namespace": string

Field Type Description
apiGroup .google.protobuf.StringValue API group of the resource being referenced.
kind .google.protobuf.StringValue Kind of the resource being referenced.
name string name of the resource being referenced.
namespace string namespace of the resource being referenced.

TypedClusterObjectRef

Resource reference for a typed, cross-cluster-scoped object

"apiGroup": .google.protobuf.StringValue
"kind": .google.protobuf.StringValue
"name": string
"namespace": string
"clusterName": string

Field Type Description
apiGroup .google.protobuf.StringValue API group of the resource being referenced.
kind .google.protobuf.StringValue Kind of the resource being referenced.
name string name of the resource being referenced.
namespace string namespace of the resource being referenced.
clusterName string name of the cluster in which the resource exists.

Status

A generic status

"state": .core.skv2.solo.io.Status.State
"message": string
"observedGeneration": int
"processingTime": .google.protobuf.Timestamp
"owner": .google.protobuf.StringValue

Field Type Description
state .core.skv2.solo.io.Status.State The current state of the resource.
message string A human readable message about the current state of the object.
observedGeneration int The most recently observed generation of the resource. This value corresponds to the metadata.generation of a kubernetes resource.
processingTime .google.protobuf.Timestamp The time at which this status was recorded.
owner .google.protobuf.StringValue (optional) The owner of the status, this value can be used to identify the entity which wrote this status. This is useful in situations where a given resource may have multiple owners.

State

The State of a reconciled object

Name Description
PENDING Waiting to be processed.
PROCESSING Currently processing.
INVALID Invalid parameters supplied, will not continue.
FAILED Failed during processing.
ACCEPTED Finished processing successfully.

ObjectSelector

Select K8s Objects by namespace, labels, or both.

"namespaces": []string
"labels": map<string, string>
"expressions": []core.skv2.solo.io.ObjectSelector.Expression

Field Type Description
namespaces []string Select Objects in these namespaces. If omitted, Gloo Mesh will only select Objects in the same namespace as the parent resource (e.g. VirtualGateway) that owns this selector. The reserved value “*” can be used to select objects in all namespaces watched by Gloo Mesh.
labels map<string, string> Select objects whose labels match the ones specified here.
expressions []core.skv2.solo.io.ObjectSelector.Expression Expressions allow for more flexible object label matching, such as equality-based requirements, set-based requirements, or a combination of both. https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#equality-based-requirement.

Expression

"key": string
"operator": .core.skv2.solo.io.ObjectSelector.Expression.Operator
"values": []string

Field Type Description
key string Kubernetes label key, must conform to Kubernetes syntax requirements https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set.
operator .core.skv2.solo.io.ObjectSelector.Expression.Operator The operator can only be in, notin, =, ==, !=, exists, ! (DoesNotExist), gt (GreaterThan), lt (LessThan).
values []string

Operator

Object Selector expression operator, while the set-based syntax differs from Kubernetes (kubernetes: key: !mylabel, gloo: key: mylabel, operator: "!" | kubernetes: key: mylabel, gloo: key: mylabel, operator: exists), the functionality remains the same.

Name Description
Equals =
DoubleEquals ==
NotEquals !=
In in
NotIn notin
Exists exists
DoesNotExist !
GreaterThan gt
LessThan lt