v1beta1

package
v0.0.0-...-9b0de90 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1beta1 contains API Schema definitions for the workload v1beta1 API group +kubebuilder:object:generate=true +groupName=workload.codeflare.dev

Index

Constants

View Source
const (
	// Initial state upon creation of the AppWrapper object
	Empty AppWrapperState = ""

	// AppWrapper has not been dispatched yet or has been requeued
	Queued AppWrapperState = "Pending"

	// AppWrapper has been dispatched and not requeued
	Running AppWrapperState = "Running"

	// AppWrapper completed successfully
	Succeeded AppWrapperState = "Completed"

	// AppWrapper failed and is not requeued
	Failed AppWrapperState = "Failed"

	// Resources are not deployed
	Idle AppWrapperStep = ""

	// The MCAD dispatcher is dispatching an appwrapper for execution by the runner
	Dispatching AppWrapperStep = "dispatching"

	// The MCAD runner has accepted an appwrapper for execution
	Accepting AppWrapperStep = "accepting"

	// The MCAD runner is in the process of creating the wrapped resources
	Creating AppWrapperStep = "creating"

	// The wrapped resources have been deployed successfully
	Created AppWrapperStep = "created"

	// The MCAD runner is in the process of deleting the wrapped resources
	Deleting AppWrapperStep = "deleting"

	// The MCAD runner has returned control of an appwrapper to the dispatcher
	Deleted AppWrapperStep = "deleted"

	// Queued because of insufficient available resources
	QueuedInsufficientResources AppWrapperQueuedReason = "InsufficientResources"

	// Queued because of insufficient available quota
	QueuedInsufficientQuota AppWrapperQueuedReason = "InsufficientQuota"

	// Queued because it was requeued
	QueuedRequeue AppWrapperQueuedReason = "Requeued"

	// Not Queued because it was dispatched
	QueuedDispatch AppWrapperQueuedReason = "Dispatched"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "workload.codeflare.dev", Version: "v1beta1"}

	// 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 AppWrapperList

type AppWrapperList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []AppWrapper `json:"items"`
}

AppWrapperList contains a list of AppWrapper

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 AppWrapperQueuedReason

type AppWrapperQueuedReason string

AppWrapperQueuedReason is the Type for the Queued Condition

type AppWrapperResources

type AppWrapperResources struct {
	GenericItems []GenericItem `json:"GenericItems,omitempty"`
}

AppWrapper resources

func (*AppWrapperResources) DeepCopy

func (in *AppWrapperResources) DeepCopy() *AppWrapperResources

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperResources.

func (*AppWrapperResources) DeepCopyInto

func (in *AppWrapperResources) DeepCopyInto(out *AppWrapperResources)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AppWrapperService

type AppWrapperService struct {
	Spec v1.ServiceSpec `json:"spec"`
}

AppWrapperService

func (*AppWrapperService) DeepCopy

func (in *AppWrapperService) DeepCopy() *AppWrapperService

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperService.

func (*AppWrapperService) DeepCopyInto

func (in *AppWrapperService) DeepCopyInto(out *AppWrapperService)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AppWrapperSpec

type AppWrapperSpec struct {
	// Priority
	Priority int32 `json:"priority,omitempty"`

	// Priority slope
	NotImplemented_PrioritySlope resource.Quantity `json:"priorityslope,omitempty"`

	NotImplemented_Service AppWrapperService `json:"service,omitempty"`

	// Wrapped resources
	Resources AppWrapperResources `json:"resources"`

	NotImplemented_Selector *metav1.LabelSelector `json:"selector,omitempty"`

	// Scheduling specifies the parameters used for scheduling the wrapped resources.
	// It defines the policy for requeuing jobs based on the number of running pods.
	Scheduling SchedulingSpec `json:"schedulingSpec,omitempty"`
}

AppWrapperSpec defines the desired state of 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 AppWrapperState

type AppWrapperState string

AppWrapperState is the label for the AppWrapper status

type AppWrapperStatus

type AppWrapperStatus struct {
	// State
	State AppWrapperState `json:"state,omitempty"`

	// Status of wrapped resources
	Step AppWrapperStep `json:"step,omitempty"`

	// When last dispatched
	DispatchTimestamp metav1.Time `json:"dispatchTimestamp,omitempty"`

	// When last requeued
	RequeueTimestamp metav1.Time `json:"requeueTimestamp,omitempty"`

	// How many times restarted
	Restarts int32 `json:"restarts"`

	// Transition log
	Transitions []AppWrapperTransition `json:"transitions,omitempty"`

	// Number of transitions
	TransitionCount int32 `json:"transitionCount,omitempty"`

	// Conditions
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

AppWrapperStatus defines the observed state of 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.

type AppWrapperStep

type AppWrapperStep string

AppWrapperState is the status of wrapped resources

type AppWrapperTransition

type AppWrapperTransition struct {
	// Timestamp
	Time metav1.Time `json:"time"`

	// Reason
	Reason string `json:"reason,omitempty"`

	// Controller that made the transition
	Controller string `json:"controller,omitempty"`

	// State entered
	State AppWrapperState `json:"state"`

	// Status of wrapped resources
	Step AppWrapperStep `json:"step,omitempty"`
}

State transition

func (*AppWrapperTransition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWrapperTransition.

func (*AppWrapperTransition) DeepCopyInto

func (in *AppWrapperTransition) DeepCopyInto(out *AppWrapperTransition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterInfo

type ClusterInfo struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ClusterInfoSpec   `json:"spec,omitempty"`
	Status ClusterInfoStatus `json:"status,omitempty"`
}

ClusterInfo is the Schema for the clusterinfo API

func (*ClusterInfo) DeepCopy

func (in *ClusterInfo) DeepCopy() *ClusterInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInfo.

func (*ClusterInfo) DeepCopyInto

func (in *ClusterInfo) DeepCopyInto(out *ClusterInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterInfo) DeepCopyObject

func (in *ClusterInfo) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ClusterInfoList

type ClusterInfoList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ClusterInfo `json:"items"`
}

ClusterInfoList contains a list of ClusterInfo

func (*ClusterInfoList) DeepCopy

func (in *ClusterInfoList) DeepCopy() *ClusterInfoList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInfoList.

func (*ClusterInfoList) DeepCopyInto

func (in *ClusterInfoList) DeepCopyInto(out *ClusterInfoList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterInfoList) DeepCopyObject

func (in *ClusterInfoList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ClusterInfoSpec

type ClusterInfoSpec struct {
}

ClusterInfoSpec defines the desired state of ClusterInfo

func (*ClusterInfoSpec) DeepCopy

func (in *ClusterInfoSpec) DeepCopy() *ClusterInfoSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInfoSpec.

func (*ClusterInfoSpec) DeepCopyInto

func (in *ClusterInfoSpec) DeepCopyInto(out *ClusterInfoSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterInfoStatus

type ClusterInfoStatus struct {
	// Capacity available on the cluster
	Capacity v1.ResourceList `json:"capacity,omitempty"`

	// When last updated
	Time metav1.Time `json:"time,omitempty"`
}

ClusterInfoStatus defines the observed state of ClusterInfo

func (*ClusterInfoStatus) DeepCopy

func (in *ClusterInfoStatus) DeepCopy() *ClusterInfoStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInfoStatus.

func (*ClusterInfoStatus) DeepCopyInto

func (in *ClusterInfoStatus) DeepCopyInto(out *ClusterInfoStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CustomPodResource

type CustomPodResource struct {
	// Replica count
	Replicas int32 `json:"replicas"`

	// Resource requests per replica
	Requests v1.ResourceList `json:"requests"`

	// Limits per replica
	Limits v1.ResourceList `json:"limits,omitempty"`
}

Resource requests

func (*CustomPodResource) DeepCopy

func (in *CustomPodResource) DeepCopy() *CustomPodResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomPodResource.

func (*CustomPodResource) DeepCopyInto

func (in *CustomPodResource) DeepCopyInto(out *CustomPodResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GenericItem

type GenericItem struct {
	NotImplemented_Replicas int32 `json:"replicas,omitempty"`

	NotImplemented_MinAvailable *int32 `json:"minavailable,omitempty"`

	NotImplemented_Allocated int32 `json:"allocated,omitempty"`

	NotImplemented_Priority int32 `json:"priority,omitempty"`

	NotImplemented_PrioritySlope resource.Quantity `json:"priorityslope,omitempty"`

	// The template for the resource
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:EmbeddedResource
	GenericTemplate runtime.RawExtension `json:"generictemplate,omitempty"`

	// Array of resource requests
	CustomPodResources []CustomPodResource `json:"custompodresources,omitempty"`

	// A comma-separated list of keywords to match against condition types
	CompletionStatus string `json:"completionstatus,omitempty"`
}

AppWrapper resource

func (*GenericItem) DeepCopy

func (in *GenericItem) DeepCopy() *GenericItem

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericItem.

func (*GenericItem) DeepCopyInto

func (in *GenericItem) DeepCopyInto(out *GenericItem)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotImplemented_DispatchDurationSpec

type NotImplemented_DispatchDurationSpec struct {
	Expected int32 `json:"expected,omitempty"`
	Limit    int32 `json:"limit,omitempty"`
	Overrun  bool  `json:"overrun,omitempty"`
}

func (*NotImplemented_DispatchDurationSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotImplemented_DispatchDurationSpec.

func (*NotImplemented_DispatchDurationSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RequeuingSpec

type RequeuingSpec struct {
	NotImplemented_InitialTimeInSeconds int64 `json:"initialTimeInSeconds,omitempty"`

	// Initial waiting time before requeuing conditions are checked
	// +kubebuilder:default=270
	TimeInSeconds int64 `json:"timeInSeconds,omitempty"`

	// +kubebuilder:default=0
	NotImplemented_MaxTimeInSeconds int64 `json:"maxTimeInSeconds,omitempty"`

	// +kubebuilder:default=exponential
	NotImplemented_GrowthType string `json:"growthType,omitempty"`

	// +kubebuilder:default=0
	NotImplemented_NumRequeuings int32 `json:"numRequeuings,omitempty"`

	// Max requeuings permitted (infinite if zero)
	// +kubebuilder:default=0
	MaxNumRequeuings int32 `json:"maxNumRequeuings,omitempty"`

	// Enable forced deletion after delay if greater than zero
	// +kubebuilder:default=570
	ForceDeletionTimeInSeconds int64 `json:"forceDeletionTimeInSeconds,omitempty"`

	// Waiting time before trying to dispatch again after requeuing
	// +kubebuilder:default=90
	PauseTimeInSeconds int64 `json:"pauseTimeInSeconds,omitempty"`
}

func (*RequeuingSpec) DeepCopy

func (in *RequeuingSpec) DeepCopy() *RequeuingSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequeuingSpec.

func (*RequeuingSpec) DeepCopyInto

func (in *RequeuingSpec) DeepCopyInto(out *RequeuingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchedulingSpec

type SchedulingSpec struct {
	NotImplemented_NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// Minimum number of expected running and successful pods.
	// Set to -1 to disable pod monitoring, cleanup on failure, and termination detection based on pod counts.
	// Set to 0 to enable pod monitoring (at least 1 pod), cleanup on failure, and disable termination detection.
	// Set to n>=1 to enable pod monitoring (at least n pods), cleanup on failure, and termination detection.
	MinAvailable int32 `json:"minAvailable,omitempty"`

	// Requeuing specification
	Requeuing RequeuingSpec `json:"requeuing,omitempty"`

	NotImplemented_DispatchDuration NotImplemented_DispatchDurationSpec `json:"dispatchDuration,omitempty"`
}

func (*SchedulingSpec) DeepCopy

func (in *SchedulingSpec) DeepCopy() *SchedulingSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulingSpec.

func (*SchedulingSpec) DeepCopyInto

func (in *SchedulingSpec) DeepCopyInto(out *SchedulingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL