v1alpha1

package
v0.0.0-...-c6cf6ad Latest Latest
Warning

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

Go to latest
Published: Jun 28, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the v1alpha1 API group +kubebuilder:object:generate=true +groupName=wave.spot.io

Index

Constants

View Source
const (
	HelmComponentType ComponentType = "helm"

	PresentComponentState ComponentState = "present"
	AbsentComponentState  ComponentState = "absent"

	SparkHistoryChartName      ChartName = "spark-history-server"
	EnterpriseGatewayChartName ChartName = "enterprise-gateway"
	SparkOperatorChartName     ChartName = "spark-operator"
	WaveIngressChartName       ChartName = "ingress-nginx"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "wave.spot.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 Attempt

type Attempt struct {

	//the unix timestamp of application start
	StartTimeEpoch int64 `json:"startTimeEpoch"`

	//the unix timestamp of application end
	EndTimeEpoch int64 `json:"endTimeEpoch"`

	//the unix timestamp of application update
	LastUpdatedEpoch int64 `json:"lastUpdatedEpoch"`

	//indicates success or failure
	Completed bool `json:"completed"`

	//the application spark version
	AppSparkVersion string `json:"appSparkVersion"`
}

func (*Attempt) DeepCopy

func (in *Attempt) DeepCopy() *Attempt

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

func (*Attempt) DeepCopyInto

func (in *Attempt) DeepCopyInto(out *Attempt)

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

type ChartName

type ChartName string

type ComponentState

type ComponentState string

type ComponentType

type ComponentType string

type ConditionStatus

type ConditionStatus string

type Executor

type Executor struct {
	//the executor ID
	ID string `json:"id"`
	//is the executor currently active
	IsActive bool `json:"isActive"`
	//the timestamp of executor added event
	AddTime string `json:"addTime"`
	//the timestamp of executor removed event
	RemoveTime string `json:"removeTime"`
	//the reason for executor removal
	RemoveReason string `json:"removeReason"`
	//RDD blocks in the block manager of this executor
	RddBlocks int64 `json:"rddBlocks"`
	//storage memory used by this executor
	MemoryUsed int64 `json:"memoryUsed"`
	//disk space used for RDD storage by this executor
	DiskUsed int64 `json:"diskUsed"`
	//number of cores available in this executor
	TotalCores int64 `json:"totalCores"`
	//maximum number of tasks that can run concurrently in this executor
	MaxTasks int64 `json:"maxTasks"`
	//number of tasks currently executing
	ActiveTasks int64 `json:"activeTasks"`
	//number of tasks that have failed in this executor
	FailedTasks int64 `json:"failedTasks"`
	// number of tasks that have completed in this executor
	CompletedTasks int64 `json:"completedTasks"`
	//total number of tasks (running, failed and completed) in this executor
	TotalTasks int64 `json:"totalTasks"`
	//elapsed time the JVM spent executing tasks in this executor (milliseconds)
	TotalDuration int64 `json:"totalDuration"`
	//elapsed time the JVM spent in garbage collection summed in this executor (milliseconds)
	TotalGCTime int64 `json:"totalGCTime"`
	//total input bytes summed in this executor
	TotalInputBytes int64 `json:"totalInputBytes"`
	//total shuffle read bytes summed in this executor
	TotalShuffleRead int64 `json:"totalShuffleRead"`
	//total shuffle write bytes summed in this executor
	TotalShuffleWrite int64 `json:"totalShuffleWrite"`
	//is the executor blacklisted (ignored during task scheduling)
	IsBlacklisted bool `json:"isBlacklisted"`
	//total amount of memory available for storage (bytes)
	MaxMemory int64 `json:"maxMemory"`
	//current value of memory metrics
	MemoryMetrics ExecutorMemoryMetrics `json:"memoryMetrics"`
}

func (*Executor) DeepCopy

func (in *Executor) DeepCopy() *Executor

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

func (*Executor) DeepCopyInto

func (in *Executor) DeepCopyInto(out *Executor)

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

type ExecutorMemoryMetrics

type ExecutorMemoryMetrics struct {
	//used on heap memory currently for storage (bytes)
	UsedOnHeapStorageMemory int64 `json:"usedOnHeapStorageMemory"`
	//used off heap memory currently for storage (bytes)
	UsedOffHeapStorageMemory int64 `json:"usedOffHeapStorageMemory"`
	//total available on heap memory for storage (bytes)
	TotalOnHeapStorageMemory int64 `json:"totalOnHeapStorageMemory"`
	//total available off heap memory for storage (bytes)
	TotalOffHeapStorageMemory int64 `json:"totalOffHeapStorageMemory"`
}

func (*ExecutorMemoryMetrics) DeepCopy

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

func (*ExecutorMemoryMetrics) DeepCopyInto

func (in *ExecutorMemoryMetrics) DeepCopyInto(out *ExecutorMemoryMetrics)

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

type Pod

type Pod struct {
	//the name of the pod
	Name string `json:"podName"`
	//the namespace of the pod
	Namespace string `json:"podNamespace"`
	//the kubernetes object UID
	UID string `json:"podUid"`
	//the phase of the pod
	Phase v1.PodPhase `json:"phase"`
	//the set of container statuses
	Statuses []v1.ContainerStatus `json:"containerStatuses"`
	//the pod's creation timestamp
	CreationTimestamp metav1.Time `json:"creationTimestamp,omitempty"`
	//the pod's deletion timestamp
	DeletionTimestamp *metav1.Time `json:"deletionTimestamp,omitempty"`
	//the pod's labels
	Labels map[string]string `json:"labels"`
	//the pod's state history
	StateHistory []PodStateHistoryEntry `json:"stateHistory"`
}

func (*Pod) DeepCopy

func (in *Pod) DeepCopy() *Pod

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

func (*Pod) DeepCopyInto

func (in *Pod) DeepCopyInto(out *Pod)

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

type PodStateHistoryContainerState

type PodStateHistoryContainerState string
const ContainerStateRunning PodStateHistoryContainerState = "running"
const ContainerStateTerminated PodStateHistoryContainerState = "terminated"
const ContainerStateWaiting PodStateHistoryContainerState = "waiting"

type PodStateHistoryContainerStatus

type PodStateHistoryContainerStatus struct {
	State    PodStateHistoryContainerState `json:"state"`
	ExitCode *int32                        `json:"exitCode,omitempty"`
}

func (*PodStateHistoryContainerStatus) DeepCopy

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

func (*PodStateHistoryContainerStatus) DeepCopyInto

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

type PodStateHistoryEntry

type PodStateHistoryEntry struct {
	//the timestamp when this state was first seen
	Timestamp metav1.Time `json:"timestamp"`
	//the phase of the pod
	Phase v1.PodPhase `json:"phase"`
	//map of container name to container status
	ContainerStatuses map[string]PodStateHistoryContainerStatus `json:"containerStatuses"`
}

func (*PodStateHistoryEntry) DeepCopy

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

func (*PodStateHistoryEntry) DeepCopyInto

func (in *PodStateHistoryEntry) DeepCopyInto(out *PodStateHistoryEntry)

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

type SparkApplication

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

	Spec   SparkApplicationSpec   `json:"spec,omitempty"`
	Status SparkApplicationStatus `json:"status,omitempty"`
}

SparkApplication is the Schema for the SparkApplications API

func (*SparkApplication) DeepCopy

func (in *SparkApplication) DeepCopy() *SparkApplication

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

func (*SparkApplication) DeepCopyInto

func (in *SparkApplication) DeepCopyInto(out *SparkApplication)

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

func (*SparkApplication) DeepCopyObject

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

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

type SparkApplicationData

type SparkApplicationData struct {

	//the runtime configuration of the spark application
	SparkProperties map[string]string `json:"sparkProperties"`

	//collects statistics of the application run
	RunStatistics Statistics `json:"runStatistics"`

	//a reference to the driver pod
	Driver Pod `json:"driver"`

	//a list of references to the executor pods
	Executors []Pod `json:"executors"`
}

SparkApplicationData

func (*SparkApplicationData) DeepCopy

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

func (*SparkApplicationData) DeepCopyInto

func (in *SparkApplicationData) DeepCopyInto(out *SparkApplicationData)

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

type SparkApplicationList

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

SparkApplicationList contains a list of SparkApplication

func (*SparkApplicationList) DeepCopy

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

func (*SparkApplicationList) DeepCopyInto

func (in *SparkApplicationList) DeepCopyInto(out *SparkApplicationList)

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

func (*SparkApplicationList) DeepCopyObject

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

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

type SparkApplicationSpec

type SparkApplicationSpec struct {

	//uniquely identifies the spark application, and is shared as a label on all driver and executor pods
	ApplicationID string `json:"applicationId"`

	//the name of the spark application
	ApplicationName string `json:"applicationName"`

	//specifies whether the application originates from spark-operator, from a jupyter notebook, or from spark-submit directly
	Heritage SparkHeritage `json:"heritage"`
}

SparkApplicationSpec defines the desired state of SparkApplication

func (*SparkApplicationSpec) DeepCopy

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

func (*SparkApplicationSpec) DeepCopyInto

func (in *SparkApplicationSpec) DeepCopyInto(out *SparkApplicationSpec)

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

type SparkApplicationStatus

type SparkApplicationStatus struct {
	//summarizes information about the spark application
	Data SparkApplicationData `json:"data"`
}

SparkApplicationStatus defines the observed state of SparkApplication

func (*SparkApplicationStatus) DeepCopy

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

func (*SparkApplicationStatus) DeepCopyInto

func (in *SparkApplicationStatus) DeepCopyInto(out *SparkApplicationStatus)

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

type SparkHeritage

type SparkHeritage string
const (
	SparkHeritageSubmit   SparkHeritage = "spark-submit"
	SparkHeritageOperator SparkHeritage = "spark-operator"
	SparkHeritageJupyter  SparkHeritage = "jupyter-notebook"
)

type Statistics

type Statistics struct {

	//the list of attempts to run the application
	Attempts []Attempt `json:"attempts"`

	//the network traffic read into the pods
	TotalInputBytes int64 `json:"totalInputBytes"`

	//the network traffic written from the pods
	TotalOutputBytes int64 `json:"totalOutputBytes"`

	//the total executor time in the attempt
	TotalExecutorCpuTime int64 `json:"totalExecutorCpuTime"`

	//details of the application's executors
	Executors []Executor `json:"executors"`
}

func (*Statistics) DeepCopy

func (in *Statistics) DeepCopy() *Statistics

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

func (*Statistics) DeepCopyInto

func (in *Statistics) DeepCopyInto(out *Statistics)

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

type WaveComponent

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

	Spec   WaveComponentSpec   `json:"spec,omitempty"`
	Status WaveComponentStatus `json:"status,omitempty"`
}

WaveComponent is the Schema for the wavecomponents API

func (*WaveComponent) DeepCopy

func (in *WaveComponent) DeepCopy() *WaveComponent

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

func (*WaveComponent) DeepCopyInto

func (in *WaveComponent) DeepCopyInto(out *WaveComponent)

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

func (*WaveComponent) DeepCopyObject

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

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

type WaveComponentCondition

type WaveComponentCondition struct {
	// Type of deployment condition.
	Type WaveComponentConditionType `json:"type" protobuf:"bytes,1,opt,name=type,casttype=WaveComponentConditionType"`
	// Status of the condition, one of True, False, Unknown.
	Status v1.ConditionStatus `json:"status" protobuf:"bytes,2,opt,name=status,casttype=k8s.io/api/core/v1.ConditionStatus"`
	// The last time this condition was updated.
	LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty" protobuf:"bytes,6,opt,name=lastUpdateTime"`
	// Last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,7,opt,name=lastTransitionTime"`
	// The reason for the condition's last transition.
	Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"`
	// A human readable message indicating details about the transition.
	Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"`
}

WaveComponentCondition describes the state of a deployment at a certain point.

func (*WaveComponentCondition) DeepCopy

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

func (*WaveComponentCondition) DeepCopyInto

func (in *WaveComponentCondition) DeepCopyInto(out *WaveComponentCondition)

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

type WaveComponentConditionType

type WaveComponentConditionType string
const (
	// Available means the application is available
	WaveComponentAvailable WaveComponentConditionType = "Available"
	// Progressing means the component is progressing, including installation and upgrades
	WaveComponentProgressing WaveComponentConditionType = "Progressing"
	// Degraded indicates the component is in a temporary degraded state
	WaveComponentDegraded WaveComponentConditionType = "Degraded"
	// Failing indicates a significant error conditions
	WaveComponentFailure WaveComponentConditionType = "Failing"
)

These are valid conditions of a wave component.

type WaveComponentList

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

WaveComponentList contains a list of WaveComponent

func (*WaveComponentList) DeepCopy

func (in *WaveComponentList) DeepCopy() *WaveComponentList

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

func (*WaveComponentList) DeepCopyInto

func (in *WaveComponentList) DeepCopyInto(out *WaveComponentList)

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

func (*WaveComponentList) DeepCopyObject

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

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

type WaveComponentSpec

type WaveComponentSpec struct {

	// Type is one of ["helm",]
	Type ComponentType `json:"type"`

	// Name is the name of a helm chart
	Name ChartName `json:"name"`

	// State determines whether the component should be installed or removed
	State ComponentState `json:"state"`

	// URL is the location of the helm repository
	URL string `json:"url"`

	// Version is the version of the helm chart
	Version string `json:"version"`

	// ValuesConfiguration is a set of helm values, in yaml form
	ValuesConfiguration string `json:"valuesConfiguration,omitempty"`
}

WaveComponentSpec defines the desired state of WaveComponent

func (*WaveComponentSpec) DeepCopy

func (in *WaveComponentSpec) DeepCopy() *WaveComponentSpec

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

func (*WaveComponentSpec) DeepCopyInto

func (in *WaveComponentSpec) DeepCopyInto(out *WaveComponentSpec)

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

type WaveComponentStatus

type WaveComponentStatus struct {

	// A set of installation values specific to the component
	Properties map[string]string `json:"properties,omitempty"`

	Conditions []WaveComponentCondition `json:"conditions,omitempty"`
}

WaveComponentStatus defines the observed state of WaveComponent

func (*WaveComponentStatus) DeepCopy

func (in *WaveComponentStatus) DeepCopy() *WaveComponentStatus

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

func (*WaveComponentStatus) DeepCopyInto

func (in *WaveComponentStatus) DeepCopyInto(out *WaveComponentStatus)

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

type WaveEnvironment

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

	Spec   WaveEnvironmentSpec   `json:"spec,omitempty"`
	Status WaveEnvironmentStatus `json:"status,omitempty"`
}

WaveEnvironment is the Schema for the wave environment API

func (*WaveEnvironment) DeepCopy

func (in *WaveEnvironment) DeepCopy() *WaveEnvironment

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

func (*WaveEnvironment) DeepCopyInto

func (in *WaveEnvironment) DeepCopyInto(out *WaveEnvironment)

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

func (*WaveEnvironment) DeepCopyObject

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

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

type WaveEnvironmentList

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

WaveEnvironmentList contains a list of WaveEnvironment

func (*WaveEnvironmentList) DeepCopy

func (in *WaveEnvironmentList) DeepCopy() *WaveEnvironmentList

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

func (*WaveEnvironmentList) DeepCopyInto

func (in *WaveEnvironmentList) DeepCopyInto(out *WaveEnvironmentList)

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

func (*WaveEnvironmentList) DeepCopyObject

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

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

type WaveEnvironmentSpec

type WaveEnvironmentSpec struct {

	// environment namespace
	EnvironmentNamespace string `json:"environmentNamespace"`

	// version of Wave Operator
	OperatorVersion string `json:"operatorVersion"`

	// whether Cert Manager was installed when creating Wave
	CertManagerDeployed bool `json:"certManagerDeployed"`

	// whether the K8s cluster was provisioned when creating Wave
	K8sClusterProvisioned bool `json:"k8sClusterProvisioned"`

	// whether the Ocean cluster was provisioned when create Wave
	OceanClusterProvisioned bool `json:"oceanClusterProvisioned"`
}

func (*WaveEnvironmentSpec) DeepCopy

func (in *WaveEnvironmentSpec) DeepCopy() *WaveEnvironmentSpec

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

func (*WaveEnvironmentSpec) DeepCopyInto

func (in *WaveEnvironmentSpec) DeepCopyInto(out *WaveEnvironmentSpec)

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

type WaveEnvironmentStatus

type WaveEnvironmentStatus struct {
}

func (*WaveEnvironmentStatus) DeepCopy

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

func (*WaveEnvironmentStatus) DeepCopyInto

func (in *WaveEnvironmentStatus) DeepCopyInto(out *WaveEnvironmentStatus)

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