Documentation
¶
Overview ¶
+kubebuilder:object:generate=true +groupName=workload.codeflare.dev
Package v1beta2 contains API Schema definitions for the workload v1beta2 API group +kubebuilder:object:generate=true +groupName=workload.codeflare.dev
Index ¶
Constants ¶
const ( AdmissionGracePeriodDurationAnnotation = "workload.codeflare.dev.appwrapper/admissionGracePeriodDuration" WarmupGracePeriodDurationAnnotation = "workload.codeflare.dev.appwrapper/warmupGracePeriodDuration" FailureGracePeriodDurationAnnotation = "workload.codeflare.dev.appwrapper/failureGracePeriodDuration" RetryPausePeriodDurationAnnotation = "workload.codeflare.dev.appwrapper/retryPausePeriodDuration" RetryLimitAnnotation = "workload.codeflare.dev.appwrapper/retryLimit" ForcefulDeletionGracePeriodAnnotation = "workload.codeflare.dev.appwrapper/forcefulDeletionGracePeriodDuration" DeletionOnFailureGracePeriodAnnotation = "workload.codeflare.dev.appwrapper/deletionOnFailureGracePeriodDuration" SuccessTTLAnnotation = "workload.codeflare.dev.appwrapper/successTTLDuration" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "workload.codeflare.dev", Version: "v1beta2"} // 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 AppWrapper ¶
type AppWrapper struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AppWrapperSpec `json:"spec,omitempty"`
Status AppWrapperStatus `json:"status,omitempty"`
}
AppWrapper is the Schema for the appwrappers API
func (*AppWrapper) DeepCopy ¶
func (in *AppWrapper) DeepCopy() *AppWrapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapper.
func (*AppWrapper) DeepCopyInto ¶
func (in *AppWrapper) DeepCopyInto(out *AppWrapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AppWrapper) DeepCopyObject ¶
func (in *AppWrapper) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AppWrapperComponent ¶
type AppWrapperComponent struct {
// Annotations is an unstructured key value map that may be used to store and retrieve
// arbitrary metadata about the Component to customize its treatment by the AppWrapper controller.
//+optional
Annotations map[string]string `json:"annotations,omitempty"`
// PodSets contained in the Component
//+optional
PodSets []AppWrapperPodSet `json:"podSets,omitempty"`
// PodSetInfos assigned to the Component's PodSets by Kueue
//+optional
PodSetInfos []AppWrapperPodSetInfo `json:"podSetInfos,omitempty"`
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:EmbeddedResource
// Template defines the Kubernetes resource for the Component
Template runtime.RawExtension `json:"template"`
}
AppWrapperComponent describes a single wrapped Kubernetes resource
func (*AppWrapperComponent) DeepCopy ¶
func (in *AppWrapperComponent) DeepCopy() *AppWrapperComponent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperComponent.
func (*AppWrapperComponent) DeepCopyInto ¶
func (in *AppWrapperComponent) DeepCopyInto(out *AppWrapperComponent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppWrapperComponentStatus ¶ added in v0.12.0
type AppWrapperComponentStatus struct {
// Name is the name of the Component
Name string `json:"name"`
// Kind is the Kind of the Component
Kind string `json:"kind"`
// APIVersion is the APIVersion of the Component
APIVersion string `json:"apiVersion"`
// Conditions hold the latest available observations of the Component's current state.
//
// The type of the condition could be:
//
// - ResourcesDeployed: The component is deployed on the cluster
//
//+optional
//+patchMergeKey=type
//+patchStrategy=merge
//+listType=map
//+listMapKey=type
Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}
AppWrapperComponentStatus tracks the status of a single managed Component
func (*AppWrapperComponentStatus) DeepCopy ¶ added in v0.12.0
func (in *AppWrapperComponentStatus) DeepCopy() *AppWrapperComponentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperComponentStatus.
func (*AppWrapperComponentStatus) DeepCopyInto ¶ added in v0.12.0
func (in *AppWrapperComponentStatus) DeepCopyInto(out *AppWrapperComponentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppWrapperCondition ¶ added in v0.2.0
type AppWrapperCondition string
const ( QuotaReserved AppWrapperCondition = "QuotaReserved" ResourcesDeployed AppWrapperCondition = "ResourcesDeployed" PodsReady AppWrapperCondition = "PodsReady" Unhealthy AppWrapperCondition = "Unhealthy" DeletingResources AppWrapperCondition = "DeletingResources" )
type AppWrapperList ¶
type AppWrapperList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AppWrapper `json:"items"`
}
AppWrapperList contains a list of appwrappers
func (*AppWrapperList) DeepCopy ¶
func (in *AppWrapperList) DeepCopy() *AppWrapperList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperList.
func (*AppWrapperList) DeepCopyInto ¶
func (in *AppWrapperList) DeepCopyInto(out *AppWrapperList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AppWrapperList) DeepCopyObject ¶
func (in *AppWrapperList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AppWrapperPhase ¶
type AppWrapperPhase string
AppWrapperPhase is the phase of the appwrapper
const ( AppWrapperEmpty AppWrapperPhase = "" AppWrapperSuspended AppWrapperPhase = "Suspended" AppWrapperResuming AppWrapperPhase = "Resuming" AppWrapperRunning AppWrapperPhase = "Running" AppWrapperResetting AppWrapperPhase = "Resetting" AppWrapperSuspending AppWrapperPhase = "Suspending" AppWrapperSucceeded AppWrapperPhase = "Succeeded" AppWrapperFailed AppWrapperPhase = "Failed" AppWrapperTerminating AppWrapperPhase = "Terminating" )
type AppWrapperPodSet ¶
type AppWrapperPodSet struct {
// Replicas is the number of pods in this PodSet
//+optional
Replicas *int32 `json:"replicas,omitempty"`
// Path is the path Component.Template to the PodTemplateSpec for this PodSet
Path string `json:"path"`
}
AppWrapperPodSet describes an homogeneous set of pods
func (*AppWrapperPodSet) DeepCopy ¶
func (in *AppWrapperPodSet) DeepCopy() *AppWrapperPodSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperPodSet.
func (*AppWrapperPodSet) DeepCopyInto ¶
func (in *AppWrapperPodSet) DeepCopyInto(out *AppWrapperPodSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppWrapperPodSetInfo ¶ added in v0.5.0
type AppWrapperPodSetInfo struct {
// Annotations to be added to the PodSpecTemplate
//+optional
Annotations map[string]string `json:"annotations,omitempty"`
// Labels to be added to the PodSepcTemplate
//+optional
Labels map[string]string `json:"labels,omitempty"`
// NodeSelectors to be added to the PodSpecTemplate
//+optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// Tolerations to be added to the PodSpecTemplate
//+optional
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
}
AppWrapperPodSetInfo contains the data that Kueue wants to inject into an admitted PodSpecTemplate
func (*AppWrapperPodSetInfo) DeepCopy ¶ added in v0.5.0
func (in *AppWrapperPodSetInfo) DeepCopy() *AppWrapperPodSetInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperPodSetInfo.
func (*AppWrapperPodSetInfo) DeepCopyInto ¶ added in v0.5.0
func (in *AppWrapperPodSetInfo) DeepCopyInto(out *AppWrapperPodSetInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppWrapperSpec ¶
type AppWrapperSpec struct {
// Components lists the components contained in the AppWrapper
Components []AppWrapperComponent `json:"components"`
// Suspend suspends the AppWrapper when set to true
//+optional
Suspend bool `json:"suspend,omitempty"`
}
AppWrapperSpec defines the desired state of the AppWrapper
func (*AppWrapperSpec) DeepCopy ¶
func (in *AppWrapperSpec) DeepCopy() *AppWrapperSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperSpec.
func (*AppWrapperSpec) DeepCopyInto ¶
func (in *AppWrapperSpec) DeepCopyInto(out *AppWrapperSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppWrapperStatus ¶
type AppWrapperStatus struct {
// Phase of the AppWrapper object
//+optional
Phase AppWrapperPhase `json:"phase,omitempty"`
// Retries counts the number of times the AppWrapper has entered the Resetting Phase
//+optional
Retries int32 `json:"resettingCount,omitempty"`
// Conditions hold the latest available observations of the AppWrapper current state.
//
// The type of the condition could be:
//
// - QuotaReserved: The AppWrapper was admitted by Kueue and has quota allocated to it
// - ResourcesDeployed: The contained resources are deployed (or being deployed) on the cluster
// - PodsReady: All pods of the contained resources are in the Ready or Succeeded state
// - Unhealthy: One or more of the contained resources is unhealthy
// - DeletingResources: The contained resources are in the process of being deleted from the cluster
//
//+optional
//+patchMergeKey=type
//+patchStrategy=merge
//+listType=map
//+listMapKey=type
Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
// ComponentStatus parallels the Components array in the Spec and tracks the actually deployed resources
ComponentStatus []AppWrapperComponentStatus `json:"componentStatus,omitempty"`
}
AppWrapperStatus defines the observed state of the appwrapper
func (*AppWrapperStatus) DeepCopy ¶
func (in *AppWrapperStatus) DeepCopy() *AppWrapperStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperStatus.
func (*AppWrapperStatus) DeepCopyInto ¶
func (in *AppWrapperStatus) DeepCopyInto(out *AppWrapperStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.