Common Object Types
Definition of objects shared by different APIs.
NamespaceSelector
NamespaceSelector
selects a set of namespaces across one or more
clusters in a tenant. Namespace selectors can be used at Workspace
level to carve out a chunk of resources under a tenant into an
isolated configuration domain. They can be used in a Traffic,
Security, or a Gateway group to further scope the set of namespaces
that will belong to a specific configuration group.
Names in namespaces selector must be in the form cluster/namespace
where:
-
cluster must be a cluster name or an
*
to mean all clusters -
namespace must be a namespace name, an
*
to mean all namespaces or a prefix likens-*
to mean all those namespaces starting byns-
Field | Description | Validation Rule |
---|---|---|
names | List of string
| repeated = { |
RegionalFailover
Specify the traffic failover policy across regions. Since zone and sub-zone failover is supported by default this only needs to be specified for regions when the operator needs to constrain traffic failover so that the default behavior of failing over to any endpoint globally does not apply. This is useful when failing over traffic across regions would not improve service health or may need to be restricted for other reasons like regulatory controls.
Field | Description | Validation Rule |
---|---|---|
from | string | – |
to | string | – |
WorkloadSelector
WorkloadSelector
selects one or more workloads in a
namespace. WorkloadSelector
can be used in TrafficSetting,
SecuritySetting, and Gateway APIs in BRIDGED
mode to scope the
configuration to a specific set of workloads.
Field | Description | Validation Rule |
---|---|---|
namespace | string | string = { |
labels | map<string, string> | map = { |
Object
Format for all API objects in TSB as exposed in the CLI.
Field | Description | Validation Rule |
---|---|---|
apiVersion | string | string = { |
kind | string | string = { |
metadata | – | |
spec | google.protobuf.Any | – |
status | map<string, string> | – |
ObjectMeta
Metadata associated with each API Object.
Field | Description | Validation Rule |
---|---|---|
name | string | – |
namespace | string | – |
tenant | string | – |
workspace | string | – |
group | string | – |
resourceVersion | string | – |
labels | map<string, string> | – |
annotations | map<string, string> | – |
displayName | string | – |
description | string | – |
organization | string | – |
application | string | – |
api | string | – |
service | string | – |
telemetrySource | string | – |
fqn | string | – |
IstioObjectSpec
Contains the raw type of an Istio object. This is used to generate the documentation examples when showing the serialized form of Istio direct mode resources.
Field | Description | Validation Rule |
---|---|---|
type | – |
TypeInfo
TypeInfo provides metadata describing a message type.
Field | Description | Validation Rule |
---|---|---|
generatesConfig | bool | – |
aggregatesStatus | bool | – |
dependencies | List of string | – |
CreateIstioObjectRequest
Request to create an Istio Object
Field | Description | Validation Rule |
---|---|---|
parent | string | string = { |
name | string | string = { |
object | tetrateio.api.tsb.types.v2.IstioObject | message = { |
DeleteIstioObjectRequest
Request to delete a Istio Object.
Field | Description | Validation Rule |
---|---|---|
fqn | string | string = { |
GetIstioObjectRequest
Request to retrieve a Istio Object.
Field | Description | Validation Rule |
---|---|---|
fqn | string | string = { |
IstioObject
Wrapper for Istio direct mode objects with all the details needed to add it to the TSB resource hierarchy.
Field | Description | Validation Rule |
---|---|---|
metadata | tetrateio.api.tsb.types.v2.IstioObject.ConfigMeta | – |
spec | google.protobuf.Any |