Connected Clusters in Loft
Loft can be run in a single cluster but it can also run in one cluster but users work with other clusters that are connected to Loft.
flowchart LR;
CLI(Loft CLI / UI) --> Loft
kubectl(kubectl, helm, ...) --> Loft
Loft("<img src='/docs/media/loft-logo.svg' width='60' height='30' />")
Loft -- uses --> ClusterAccess(Cluster Access)
ClusterAccess --> ClusterA(Kubernetes Cluster A)
ClusterAccess --> ClusterB(Kubernetes Cluster B)
ClusterAccess --> ClusterC(Kubernetes Cluster ...)
class Loft loft
Configuration
Metadata
Display Name

JSONPath in Cluster CRD:
spec.displayName (type: string)
Kubernetes Name

JSONPath in Cluster CRD:
metadata.name (type: string)
Description

JSONPath in Cluster CRD:
spec.description (type: string)
Labels

JSONPath in Cluster CRD:
metadata.labels (type: map[string]string)
Annotations

JSONPath in Cluster CRD:
metadata.annotations (type: map[string]string)
Kube-Config

JSONPath in Cluster CRD:
spec.config (type: SecretRef)
Default Templates
For Spaces

JSONPath in Cluster CRD:
metadata.annotations["space.loft.sh/default-template"] (type: string)
For Virtual Clusters

JSONPath in Cluster CRD:
metadata.annotations["virtualcluster.loft.sh/default-template"] (type: string)
Loft Agent
Ignore Agent

JSONPath in Cluster CRD:
metadata.annotations["loft.sh/cluster-ignore-agent"] (type: string)
Agent Values

JSONPath in Cluster CRD:
metadata.annotations["loft.sh/agent-values"] (type: string)
Direct Cluster Endpoint

JSONPath in Cluster CRD:
metadata.annotations["loft.sh/direct-cluster-endpoint"] (type: string)
Insecure Endpoint

JSONPath in Cluster CRD:
metadata.annotations["loft.sh/direct-cluster-endpoint-insecure"] (type: string)
CA Certificate

JSONPath in Cluster CRD:
metadata.annotations["loft.sh/direct-cluster-endpoint-ca-data"] (type: string)
Access To Cluster

JSONPath in Cluster CRD:
spec.access (type: Access[])