Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the kubeteach v1alpha1 API group +kubebuilder:object:generate=true +kubebuilder:validation:Required +groupName=kubeteach.geberl.io
Index ¶
- Variables
- type ExerciseSet
- type ExerciseSetList
- type ExerciseSetSpec
- type ExerciseSetSpecTaskDefinitions
- type ExerciseSetStatus
- type ResourceCondition
- type Task
- type TaskCondition
- type TaskDefinition
- type TaskDefinitionList
- type TaskDefinitionSpec
- type TaskDefinitionStatus
- type TaskList
- type TaskSpec
- type TaskStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "kubeteach.geberl.io", Version: "v1alpha1"} // 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 ExerciseSet ¶
type ExerciseSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ExerciseSetSpec `json:"spec,omitempty"` Status ExerciseSetStatus `json:"status,omitempty"` }
ExerciseSet is the Schema for the exercisesets API
func (*ExerciseSet) DeepCopy ¶
func (in *ExerciseSet) DeepCopy() *ExerciseSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExerciseSet.
func (*ExerciseSet) DeepCopyInto ¶
func (in *ExerciseSet) DeepCopyInto(out *ExerciseSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExerciseSet) DeepCopyObject ¶
func (in *ExerciseSet) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExerciseSetList ¶
type ExerciseSetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ExerciseSet `json:"items"` }
ExerciseSetList contains a list of ExerciseSet
func (*ExerciseSetList) DeepCopy ¶
func (in *ExerciseSetList) DeepCopy() *ExerciseSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExerciseSetList.
func (*ExerciseSetList) DeepCopyInto ¶
func (in *ExerciseSetList) DeepCopyInto(out *ExerciseSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExerciseSetList) DeepCopyObject ¶
func (in *ExerciseSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExerciseSetSpec ¶
type ExerciseSetSpec struct { // TaskDefinitionSpec represents the Spec of an TaskDefinition // +kubebuilder:validation:Required TaskDefinitions []ExerciseSetSpecTaskDefinitions `json:"taskDefinitions,omitempty"` }
ExerciseSetSpec defines the desired state of ExerciseSet
func (*ExerciseSetSpec) DeepCopy ¶
func (in *ExerciseSetSpec) DeepCopy() *ExerciseSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExerciseSetSpec.
func (*ExerciseSetSpec) DeepCopyInto ¶
func (in *ExerciseSetSpec) DeepCopyInto(out *ExerciseSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExerciseSetSpecTaskDefinitions ¶
type ExerciseSetSpecTaskDefinitions struct { // Name is the name of the TaskDefinition // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 Name string `json:"name"` // TaskDefinitionSpec represents the Spec of an TaskDefinition // +kubebuilder:validation:Required TaskDefinitionSpec TaskDefinitionSpec `json:"taskDefinitionSpec"` }
ExerciseSetSpecTaskDefinitions defines the desired state of ExerciseSet
func (*ExerciseSetSpecTaskDefinitions) DeepCopy ¶
func (in *ExerciseSetSpecTaskDefinitions) DeepCopy() *ExerciseSetSpecTaskDefinitions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExerciseSetSpecTaskDefinitions.
func (*ExerciseSetSpecTaskDefinitions) DeepCopyInto ¶
func (in *ExerciseSetSpecTaskDefinitions) DeepCopyInto(out *ExerciseSetSpecTaskDefinitions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExerciseSetStatus ¶
type ExerciseSetStatus struct { // NumberOfTasks is the number of total tasks of this ExerciseSet // +optional NumberOfTasks int `json:"numberOfTasks"` // NumberOfActiveTasks is the number of active tasks of this ExerciseSet // +optional NumberOfActiveTasks int `json:"numberOfActiveTasks"` // NumberOfPendingTasks is the number of pending tasks of this ExerciseSet // +optional NumberOfPendingTasks int `json:"numberOfPendingTasks"` // NumberOfSuccessfulTasks is the number of successful tasks of this ExerciseSet // +optional NumberOfSuccessfulTasks int `json:"numberOfSuccessfulTasks"` // NumberOfUnknownTasks is the number of tasks with an unknown state of this ExerciseSet // +optional NumberOfUnknownTasks int `json:"numberOfUnknownTasks"` // NumberOfTasksWithoutPoints is the number of tasks that have no points defined of this ExerciseSet // +optional NumberOfTasksWithoutPoints int `json:"numberOfTasksWithoutPoints"` // PointsTotal is the total sum of points for all tasks of this ExerciseSet // +optional PointsTotal int `json:"pointsTotal"` // PointsAchieved is the total sum of points for all tasks that are successful of this ExerciseSet // +optional PointsAchieved int `json:"pointsAchieved"` }
ExerciseSetStatus defines the observed state of ExerciseSet
func (*ExerciseSetStatus) DeepCopy ¶
func (in *ExerciseSetStatus) DeepCopy() *ExerciseSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExerciseSetStatus.
func (*ExerciseSetStatus) DeepCopyInto ¶
func (in *ExerciseSetStatus) DeepCopyInto(out *ExerciseSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceCondition ¶
type ResourceCondition struct { // Field is the json search string for this condition. // Example: metadata.name // For more details have a look into gjson docs: https://github.com/tidwall/gjson // +kubebuilder:validation:MinLength=1 Field string `json:"field"` // Operator is for the condition. // Valid operators are eq, neq, lt, gt, nil, notnil contains. // +kubebuilder:validation:Enum=eq;neq;lt;gt;contains;nil;notnil Operator string `json:"operator"` // Value contains the value which the Operator must match. // Must be a string but for lt and gt only numbers are allowed in this string. // Value is ignored by Operator nil and notnil // +optional Value string `json:"value,omitempty"` }
ResourceCondition describe the conditions that must be apply to success this TaskCondition
func (*ResourceCondition) DeepCopy ¶
func (in *ResourceCondition) DeepCopy() *ResourceCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceCondition.
func (*ResourceCondition) DeepCopyInto ¶
func (in *ResourceCondition) DeepCopyInto(out *ResourceCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Task ¶
type Task struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TaskSpec `json:"spec,omitempty"` Status TaskStatus `json:"status,omitempty"` }
Task is the Schema for the tasks API
func (*Task) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Task.
func (*Task) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Task) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TaskCondition ¶
type TaskCondition struct { // APIVersion is used of the object that should be match this conditions // +kubebuilder:validation:MinLength=1 APIVersion string `json:"apiVersion"` // Kind is used of the object that should be match this conditions // +kubebuilder:validation:MinLength=1 Kind string `json:"kind"` // APIGroup is used of the object that should be match this conditions // +optional APIGroup string `json:"apiGroup,omitempty"` // Name defines the name of the object that must apply to this conditions // +kubebuilder:validation:MinLength=1 Name string `json:"name"` // Namespace is used to find the object if it is namespaced // +optional Namespace string `json:"namespace,omitempty"` // NotExists if set to true, all ResourceCondition are ignored and the TaskCondition is true if object do not exists // +optional NotExists bool `json:"notExists,omitempty"` // ResourceCondition describe the conditions that must be apply to success this TaskCondition // If no ResourceCondition is set this TaskCondition just check if object exits // +optional ResourceCondition []ResourceCondition `json:"resourceCondition,omitempty"` }
TaskCondition defines a list of conditions for a object that must be true to complete the task.
func (*TaskCondition) DeepCopy ¶
func (in *TaskCondition) DeepCopy() *TaskCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskCondition.
func (*TaskCondition) DeepCopyInto ¶
func (in *TaskCondition) DeepCopyInto(out *TaskCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TaskDefinition ¶
type TaskDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TaskDefinitionSpec `json:"spec,omitempty"` Status TaskDefinitionStatus `json:"status,omitempty"` }
TaskDefinition is the Schema for the taskdefinitions API
func (*TaskDefinition) DeepCopy ¶
func (in *TaskDefinition) DeepCopy() *TaskDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskDefinition.
func (*TaskDefinition) DeepCopyInto ¶
func (in *TaskDefinition) DeepCopyInto(out *TaskDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TaskDefinition) DeepCopyObject ¶
func (in *TaskDefinition) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TaskDefinitionList ¶
type TaskDefinitionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TaskDefinition `json:"items"` }
TaskDefinitionList contains a list of TaskDefinition
func (*TaskDefinitionList) DeepCopy ¶
func (in *TaskDefinitionList) DeepCopy() *TaskDefinitionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskDefinitionList.
func (*TaskDefinitionList) DeepCopyInto ¶
func (in *TaskDefinitionList) DeepCopyInto(out *TaskDefinitionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TaskDefinitionList) DeepCopyObject ¶
func (in *TaskDefinitionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TaskDefinitionSpec ¶
type TaskDefinitionSpec struct { // TaskSpec represents spec of the task that is creating for this TaskDefinition. // +kubebuilder:validation:Required TaskSpec TaskSpec `json:"taskSpec"` // TaskConditions defines a list of conditions for a object that must be true to complete the task. // +kubebuilder:validation:MinItems=1 TaskConditions []TaskCondition `json:"taskCondition"` // RequiredTaskName defines a TaskDefinition Name that have to be done before. // Useful for example if in task1 a object should be created and in task2 the object should be deleted again. // +optional RequiredTaskName *string `json:"requiredTaskName,omitempty"` // Points Number of points for this TaskDefinition. Points will be summarized in an ExerciseSet. // +optional Points int `json:"points,omitempty"` }
TaskDefinitionSpec defines the desired state of TaskDefinition.
func (*TaskDefinitionSpec) DeepCopy ¶
func (in *TaskDefinitionSpec) DeepCopy() *TaskDefinitionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskDefinitionSpec.
func (*TaskDefinitionSpec) DeepCopyInto ¶
func (in *TaskDefinitionSpec) DeepCopyInto(out *TaskDefinitionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TaskDefinitionStatus ¶
type TaskDefinitionStatus struct { // State represent the status of this task // Can be pending, active, successful, error // +optional State *string `json:"state"` }
TaskDefinitionStatus defines the observed state of TaskDefinition
func (*TaskDefinitionStatus) DeepCopy ¶
func (in *TaskDefinitionStatus) DeepCopy() *TaskDefinitionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskDefinitionStatus.
func (*TaskDefinitionStatus) DeepCopyInto ¶
func (in *TaskDefinitionStatus) DeepCopyInto(out *TaskDefinitionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TaskList ¶
type TaskList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Task `json:"items"` }
TaskList contains a list of Task
func (*TaskList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskList.
func (*TaskList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TaskList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TaskSpec ¶
type TaskSpec struct { // Title is the title of the task // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 Title string `json:"title"` // Description describes the task // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 Description string `json:"description"` // LongDescription describes the task // +optional LongDescription string `json:"longDescription,omitempty"` // HelpURL is a URL that can help to solve this Task // +optional HelpURL string `json:"helpURL,omitempty"` }
TaskSpec defines the desired state of Task
func (*TaskSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskSpec.
func (*TaskSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TaskStatus ¶
type TaskStatus struct { // State represent the status of this task // Can be pending, active, successful State *string `json:"state,omitempty"` }
TaskStatus defines the observed state of Task
func (*TaskStatus) DeepCopy ¶
func (in *TaskStatus) DeepCopy() *TaskStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskStatus.
func (*TaskStatus) DeepCopyInto ¶
func (in *TaskStatus) DeepCopyInto(out *TaskStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.