Documentation
¶
Index ¶
Constants ¶
View Source
const ( APIVersion = "tako.redentor.dev/v1alpha1" Kind = "ProjectClusterBinding" RelativePath = ".tako/platform-cluster.json" )
Variables ¶
This section is empty.
Functions ¶
func PathForConfig ¶
Types ¶
type Binding ¶
type Binding struct {
APIVersion string `json:"apiVersion"`
Kind string `json:"kind"`
Project string `json:"project"`
ClusterID string `json:"clusterId"`
LocalNodeID string `json:"localNodeId,omitempty"`
LocalNodeName string `json:"localNodeName,omitempty"`
ControllerNodeID string `json:"controllerNodeId,omitempty"`
ControllerNodeName string `json:"controllerNodeName,omitempty"`
InventoryGeneration uint64 `json:"inventoryGeneration,omitempty"`
InventoryUpdatedAt *time.Time `json:"inventoryUpdatedAt,omitempty"`
AttachedAt time.Time `json:"attachedAt"`
}
Binding is a create-once acknowledgement that a project workspace belongs to one platform cluster. It prevents a checkout on an enrolled worker from silently treating that worker as an unrelated control plane.
func Create ¶
Create publishes a binding without replacing an existing document. A concurrent creator may win; callers receive the durable winner for comparison instead of silently overwriting it.
func ReadOptional ¶
type Context ¶
type Context struct {
ClusterID string
LocalNodeID string
LocalNodeName string
ControllerNodeID string
ControllerNodeName string
InventoryGeneration uint64
InventoryUpdatedAt time.Time
}
Context is the trusted, node-local platform identity relevant to a project workspace. It deliberately contains no application-supplied server fields.
Click to show internal directories.
Click to hide internal directories.