Workspace
A Workspace carves a chunk of the cluster resources owned by a tenant into an isolated configuration domain.
The following example claims ns1
and ns2
namespaces across all
clusters owned by the tenant mycompany
.
apiVersion: api.tsb.tetrate.io/v2
kind: Workspace
metadata:
name: w1
tenant: mycompany
organization: myorg
spec:
namespaceSelector:
names:
- "*/ns1"
- "*/ns2"
The following example claims ns1
namespace only from the c1
cluster and claims all namespaces from the c2
cluster.
apiVersion: api.tsb.tetrate.io/v2
kind: Workspace
metadata:
name: w1
tenant: mycompany
organization: myorg
spec:
namespaceSelector:
names:
- "c1/ns1"
- "c2/*"
Custom labels and annotations can be propagated to the final Istio translation that
will be applied at the clusters.
This could help with third-party integrations or to set custom identifier.
The following example configures the annotation my.org.environment
to be applied to
all final Istio translations generated under this Workspace, for example Gateways or Virtual Services.
apiVersion: api.tsb.tetrate.io/v2
kind: Workspace
metadata:
name: w1
tenant: mycompany
organization: myorg
annotations:
my.org.environment: dev
spec:
namespaceSelector:
names:
- "*/ns1"
Workspace
A Workspace is a collection of related namespaces in one or more clusters.
Field | Description | Validation Rule |
---|---|---|
namespaceSelector | tetrateio.api.tsb.types.v2.NamespaceSelector | message = { |
privileged | google.protobuf.BoolValue | – |
isolationBoundary | string | – |
securityDomain | string | – |
deletionProtectionEnabled | bool | – |
configGenerationMetadata | tetrateio.api.tsb.types.v2.ConfigGenerationMetadata | – |