Documentation
¶
Overview ¶
Package v1 contains API Schema definitions for the infra v1 API group. +kubebuilder:object:generate=true +groupName=infra.exalsius.ai
Index ¶
- Variables
- type ClusterGPUInventory
- type Colony
- type ColonyCluster
- func (in *ColonyCluster) DeepCopy() *ColonyCluster
- func (in *ColonyCluster) DeepCopyInto(out *ColonyCluster)
- func (cc *ColonyCluster) GetClusterDeploymentSpec() (*k0rdentv1beta1.ClusterDeploymentSpec, error)
- func (cc *ColonyCluster) SetClusterDeploymentSpec(spec *k0rdentv1beta1.ClusterDeploymentSpec) error
- type ColonyList
- type ColonySpec
- type ColonyStatus
- type GPUOffering
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "infra.exalsius.ai", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type ClusterGPUInventory ¶ added in v0.9.0
type ClusterGPUInventory struct {
// LastUpdated is when this cluster's inventory was last refreshed. A stale
// timestamp means the cluster was unreachable on recent polls.
// +optional
LastUpdated metav1.Time `json:"lastUpdated,omitempty"`
// Offerings are the distinct GPU kinds available on the cluster.
// +optional
Offerings []GPUOffering `json:"offerings,omitempty"`
}
ClusterGPUInventory is the set of GPU Offerings present on one child cluster.
func (*ClusterGPUInventory) DeepCopy ¶ added in v0.9.0
func (in *ClusterGPUInventory) DeepCopy() *ClusterGPUInventory
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGPUInventory.
func (*ClusterGPUInventory) DeepCopyInto ¶ added in v0.9.0
func (in *ClusterGPUInventory) DeepCopyInto(out *ClusterGPUInventory)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Colony ¶
type Colony struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ColonySpec `json:"spec,omitempty"`
Status ColonyStatus `json:"status,omitempty"`
}
Colony is the Schema for the colonies API.
func (*Colony) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Colony.
func (*Colony) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Colony) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ColonyCluster ¶
type ColonyCluster struct {
// Name is the name of the cluster.
ClusterName string `json:"clusterName"`
// ClusterDeployment is the specification for the cluster deployment.
// This is stored as RawExtension to avoid CRD validation issues with k0rdent types
ClusterDeploymentSpec *runtime.RawExtension `json:"clusterDeploymentSpec,omitempty"`
// ClusterLabels are the labels to be applied to the ClusterDeployment resource
ClusterLabels map[string]string `json:"clusterLabels,omitempty"`
// ClusterAnnotations are the annotations to be applied to the ClusterDeployment resource
ClusterAnnotations map[string]string `json:"clusterAnnotations,omitempty"`
}
func (*ColonyCluster) DeepCopy ¶
func (in *ColonyCluster) DeepCopy() *ColonyCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ColonyCluster.
func (*ColonyCluster) DeepCopyInto ¶
func (in *ColonyCluster) DeepCopyInto(out *ColonyCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ColonyCluster) GetClusterDeploymentSpec ¶ added in v0.3.4
func (cc *ColonyCluster) GetClusterDeploymentSpec() (*k0rdentv1beta1.ClusterDeploymentSpec, error)
GetClusterDeploymentSpec returns the ClusterDeploymentSpec as a typed object
func (*ColonyCluster) SetClusterDeploymentSpec ¶ added in v0.3.4
func (cc *ColonyCluster) SetClusterDeploymentSpec(spec *k0rdentv1beta1.ClusterDeploymentSpec) error
SetClusterDeploymentSpec sets the ClusterDeploymentSpec from a typed object
type ColonyList ¶
type ColonyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Colony `json:"items"`
}
ColonyList contains a list of Colony.
func (*ColonyList) DeepCopy ¶
func (in *ColonyList) DeepCopy() *ColonyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ColonyList.
func (*ColonyList) DeepCopyInto ¶
func (in *ColonyList) DeepCopyInto(out *ColonyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ColonyList) DeepCopyObject ¶
func (in *ColonyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ColonySpec ¶
type ColonySpec struct {
// ColonyClusters is the list of clusters to create.
ColonyClusters []ColonyCluster `json:"colonyClusters,omitempty"`
}
ColonySpec defines the desired state of Colony.
func (*ColonySpec) DeepCopy ¶
func (in *ColonySpec) DeepCopy() *ColonySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ColonySpec.
func (*ColonySpec) DeepCopyInto ¶
func (in *ColonySpec) DeepCopyInto(out *ColonySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ColonyStatus ¶
type ColonyStatus struct {
Phase string `json:"phase,omitempty"`
Conditions []metav1.Condition `json:"conditions,omitempty"`
ClusterDeploymentRefs []*corev1.ObjectReference `json:"clusterDeploymentRefs,omitempty"`
TotalClusters int32 `json:"totalClusters,omitempty"`
ReadyClusters int32 `json:"readyClusters,omitempty"`
// GPUInventory maps each child cluster (keyed by ClusterDeployment name) to
// the GPU Offerings discovered on it (ADR-0002). Populated best-effort on a
// periodic poll for API discovery ("what GPUs can I pick on this cluster?").
// It records totals only — never live free capacity, which the workspace
// gate computes live against the cluster at deploy time.
// +optional
GPUInventory map[string]ClusterGPUInventory `json:"gpuInventory,omitempty"`
}
ColonyStatus defines the observed state of Colony.
func (*ColonyStatus) DeepCopy ¶
func (in *ColonyStatus) DeepCopy() *ColonyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ColonyStatus.
func (*ColonyStatus) DeepCopyInto ¶
func (in *ColonyStatus) DeepCopyInto(out *ColonyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GPUOffering ¶ added in v0.9.0
type GPUOffering struct {
// Model is the canonical short model name (e.g. "H100", "A100-80GB"), taken
// from the provisioning-set GPU model node label.
Model string `json:"model"`
// Vendor is the GPU vendor (e.g. NVIDIA, AMD).
// +optional
Vendor string `json:"vendor,omitempty"`
// ResourceName is the extended resource a pod requests for this offering
// (e.g. nvidia.com/gpu, amd.com/gpu).
// +optional
ResourceName string `json:"resourceName,omitempty"`
// Total is the total number of GPUs of this offering across the cluster.
// +optional
Total int64 `json:"total,omitempty"`
// Nodes is the number of nodes carrying this offering.
// +optional
Nodes int32 `json:"nodes,omitempty"`
// Labels are the raw GFD/AMD/vendor node labels defining this offering,
// retained for display and advanced selection (data retention, not identity).
// +optional
Labels map[string]string `json:"labels,omitempty"`
}
GPUOffering is a distinct kind of GPU available on a cluster, identified by vendor + canonical model (memory baked into the model name) + resource name. The remaining fields are aggregated attributes (ADR-0002).
func (*GPUOffering) DeepCopy ¶ added in v0.9.0
func (in *GPUOffering) DeepCopy() *GPUOffering
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GPUOffering.
func (*GPUOffering) DeepCopyInto ¶ added in v0.9.0
func (in *GPUOffering) DeepCopyInto(out *GPUOffering)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.