Documentation ¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the v1alpha2 API group +kubebuilder:object:generate=true +groupName=flux-framework.org
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "flux-framework.org", Version: "v1alpha2"} // 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 Commands ¶
type Commands struct { // pre command happens at start (before anything else) // +optional Pre string `json:"pre"` // Command prefix to put in front of a metric main command (not applicable for all) //+optional Prefix string `json:"prefix"` // post happens at end (after collection end) // +optional Post string `json:"post"` }
func (*Commands) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Commands.
func (*Commands) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerResource ¶
type ContainerResource map[string]intstr.IntOrString
func (ContainerResource) DeepCopy ¶
func (in ContainerResource) DeepCopy() ContainerResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerResource.
func (ContainerResource) DeepCopyInto ¶
func (in ContainerResource) DeepCopyInto(out *ContainerResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerResources ¶
type ContainerResources struct { // +optional Limits ContainerResource `json:"limits"` // +optional Requests ContainerResource `json:"requests"` }
ContainerResources include limits and requests
func (*ContainerResources) DeepCopy ¶
func (in *ContainerResources) DeepCopy() *ContainerResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerResources.
func (*ContainerResources) DeepCopyInto ¶
func (in *ContainerResources) DeepCopyInto(out *ContainerResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerSpec ¶
type ContainerSpec struct { // Security context for the pod //+optional SecurityContext SecurityContext `json:"securityContext"` }
A container spec can belong to a metric or application
func (*ContainerSpec) DeepCopy ¶
func (in *ContainerSpec) DeepCopy() *ContainerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerSpec.
func (*ContainerSpec) DeepCopyInto ¶
func (in *ContainerSpec) DeepCopyInto(out *ContainerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Logging ¶
type Logging struct { // Don't allow the application, metric, or storage test to finish // This adds sleep infinity at the end to allow for interactive mode. // +optional Interactive bool `json:"interactive"` }
func (*Logging) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Logging.
func (*Logging) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Metric ¶
type Metric struct { Name string `json:"name"` // Metric Options // Metric specific options // +optional Options map[string]intstr.IntOrString `json:"options"` // Use a custom container image (advanced users only) // +optional Image string `json:"image,omitempty"` // A Metric addon can be storage (volume) or an application, // It's an additional entity that can customize a replicated job, // either adding assets / features or entire containers to the pod //+optional Addons []MetricAddon `json:"addons"` // Metric List Options // Metric specific options // +optional ListOptions map[string][]intstr.IntOrString `json:"listOptions"` // Metric Map Options // +optional MapOptions map[string]map[string]intstr.IntOrString `json:"mapOptions"` // Container Spec has attributes for the container //+optional Attributes ContainerSpec `json:"attributes"` // Resources include limits and requests for the metric container // +optional Resources ContainerResources `json:"resources"` }
func (*Metric) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metric.
func (*Metric) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricAddon ¶
type MetricAddon struct { Name string `json:"name"` // Metric Addon Options // +optional Options map[string]intstr.IntOrString `json:"options"` // Addon List Options // +optional ListOptions map[string][]intstr.IntOrString `json:"listOptions"` // Addon Map Options // +optional MapOptions map[string]map[string]intstr.IntOrString `json:"mapOptions"` }
A Metric addon is an interface that exposes extra volumes for a metric. Examples include: A storage volume to be mounted on one or more of the replicated jobs A single application container.
func (*MetricAddon) DeepCopy ¶
func (in *MetricAddon) DeepCopy() *MetricAddon
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricAddon.
func (*MetricAddon) DeepCopyInto ¶
func (in *MetricAddon) DeepCopyInto(out *MetricAddon)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricSet ¶
type MetricSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MetricSetSpec `json:"spec,omitempty"` Status MetricSetStatus `json:"status,omitempty"` }
MetricSet is the Schema for the metrics API
func (*MetricSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricSet.
func (*MetricSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricSet) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MetricSet) GetPodLabels ¶
Get pod labels for a metric set
type MetricSetList ¶
type MetricSetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []MetricSet `json:"items"` }
MetricSetList contains a list of MetricSet
func (*MetricSetList) DeepCopy ¶
func (in *MetricSetList) DeepCopy() *MetricSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricSetList.
func (*MetricSetList) DeepCopyInto ¶
func (in *MetricSetList) DeepCopyInto(out *MetricSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricSetList) DeepCopyObject ¶
func (in *MetricSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MetricSetSpec ¶
type MetricSetSpec struct { // The name of the metric (that will be associated with a flavor like storage) // +optional Metrics []Metric `json:"metrics"` // Don't set JobSet FQDN // +optional DontSetFQDN bool `json:"dontSetFQDN"` // Service name for the JobSet (MetricsSet) cluster network // +kubebuilder:default="ms" // +default="ms" // +optional ServiceName string `json:"serviceName"` // Should the job be limited to a particular number of seconds? // Approximately one year. This cannot be zero or job won't start // +kubebuilder:default=31500000 // +default=31500000 // +optional DeadlineSeconds int64 `json:"deadlineSeconds,omitempty"` // Pod spec for the application, standalone, or storage metrics //+optional Pod Pod `json:"pod"` // Parallelism (e.g., pods) // +kubebuilder:default=1 // +default=1 // +optional Pods int32 `json:"pods"` // Resources include limits and requests for each pod (that include a JobSet) // +optional Resources ContainerResource `json:"resources"` // Logging spec, preparing for other kinds of logging // Right now we just include an interactive option //+optional Logging Logging `json:"logging"` }
MetricSpec defines the desired state of Metric
func (*MetricSetSpec) DeepCopy ¶
func (in *MetricSetSpec) DeepCopy() *MetricSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricSetSpec.
func (*MetricSetSpec) DeepCopyInto ¶
func (in *MetricSetSpec) DeepCopyInto(out *MetricSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricSetStatus ¶
type MetricSetStatus struct{}
MetricStatus defines the observed state of Metric
func (*MetricSetStatus) DeepCopy ¶
func (in *MetricSetStatus) DeepCopy() *MetricSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricSetStatus.
func (*MetricSetStatus) DeepCopyInto ¶
func (in *MetricSetStatus) DeepCopyInto(out *MetricSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Pod ¶
type Pod struct { // Annotations to add to the pod //+optional Annotations map[string]string `json:"annotations"` // Labels to add to the pod //+optional Labels map[string]string `json:"labels"` // name of service account to associate with pod //+optional ServiceAccountName string `json:"serviceAccountName"` // NodeSelector labels //+optional NodeSelector map[string]string `json:"nodeSelector"` }
Pod attributes that can be given to an application or metric
func (*Pod) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pod.
func (*Pod) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityContext ¶
type SecurityContext struct { //+optional Privileged bool `json:"privileged"` //+optional AllowPtrace bool `json:"allowPtrace"` //+optional AllowAdmin bool `json:"allowAdmin"` }
func (*SecurityContext) DeepCopy ¶
func (in *SecurityContext) DeepCopy() *SecurityContext
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityContext.
func (*SecurityContext) DeepCopyInto ¶
func (in *SecurityContext) DeepCopyInto(out *SecurityContext)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.