Documentation ¶
Overview ¶
Package v1alpha1 is the v1alpha1 version of the API.
Package v1alpha1 contains API Schema definitions for the Frisbee v1alpha1 API group +kubebuilder:object:generate=true +groupName=frisbee.io
Index ¶
- Constants
- Variables
- type Action
- type ActionType
- type Call
- type CallList
- type CallSpec
- type CallStatus
- type Callable
- type Cascade
- type CascadeList
- type CascadeSpec
- type CascadeStatus
- type Chaos
- func (in *Chaos) DeepCopy() *Chaos
- func (in *Chaos) DeepCopyInto(out *Chaos)
- func (in *Chaos) DeepCopyObject() runtime.Object
- func (r *Chaos) Default()
- func (in *Chaos) GetReconcileStatus() Lifecycle
- func (in *Chaos) SetReconcileStatus(lifecycle Lifecycle)
- func (r *Chaos) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Chaos) ValidateCreate() error
- func (r *Chaos) ValidateDelete() error
- func (r *Chaos) ValidateUpdate(old runtime.Object) error
- type ChaosList
- type ChaosSpec
- type ChaosStatus
- type Cluster
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (r *Cluster) Default()
- func (in *Cluster) GetReconcileStatus() Lifecycle
- func (in *Cluster) SetReconcileStatus(lifecycle Lifecycle)
- func (r *Cluster) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Cluster) ValidateCreate() error
- func (r *Cluster) ValidateDelete() error
- func (r *Cluster) ValidateUpdate(old runtime.Object) error
- type ClusterList
- type ClusterSpec
- type ClusterStatus
- type ConditionType
- type ConditionalExpr
- type Decorators
- type DeleteSpec
- type Disk
- type EmbedActions
- type EmbedFaultType
- type EmbedSpecs
- type EphemeralVolumeSpec
- type ExprMetrics
- type ExprState
- type FaultType
- type GenerateFromTemplate
- func (in *GenerateFromTemplate) DeepCopy() *GenerateFromTemplate
- func (in *GenerateFromTemplate) DeepCopyInto(out *GenerateFromTemplate)
- func (t *GenerateFromTemplate) GetInput(i int) map[string]string
- func (t *GenerateFromTemplate) IterateInputs(cb func(in map[string]string) error) error
- func (t *GenerateFromTemplate) Prepare(allowMultipleInputs bool) error
- type Inputs
- type Lifecycle
- type MatchBy
- type Mode
- type NIC
- type Phase
- type PlacementSpec
- type RawSpec
- type Requirements
- type Resources
- type SchedulerSpec
- type Service
- func (in *Service) DeepCopy() *Service
- func (in *Service) DeepCopyInto(out *Service)
- func (in *Service) DeepCopyObject() runtime.Object
- func (r *Service) Default()
- func (in *Service) GetReconcileStatus() Lifecycle
- func (in *Service) SetReconcileStatus(lifecycle Lifecycle)
- func (r *Service) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Service) ValidateCreate() error
- func (r *Service) ValidateDelete() error
- func (r *Service) ValidateUpdate(old runtime.Object) error
- type ServiceList
- type ServiceSelector
- type ServiceSpec
- type ServiceStatus
- type SetField
- type Template
- func (in *Template) DeepCopy() *Template
- func (in *Template) DeepCopyInto(out *Template)
- func (in *Template) DeepCopyObject() runtime.Object
- func (r *Template) Default()
- func (in *Template) GetReconcileStatus() Lifecycle
- func (in *Template) SetReconcileStatus(lifecycle Lifecycle)
- func (r *Template) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Template) ValidateCreate() error
- func (r *Template) ValidateDelete() error
- func (r *Template) ValidateUpdate(old runtime.Object) error
- type TemplateList
- type TemplateSpec
- type TemplateStatus
- type TestPlan
- func (in *TestPlan) DeepCopy() *TestPlan
- func (in *TestPlan) DeepCopyInto(out *TestPlan)
- func (in *TestPlan) DeepCopyObject() runtime.Object
- func (r *TestPlan) Default()
- func (in *TestPlan) GetReconcileStatus() Lifecycle
- func (in *TestPlan) SetReconcileStatus(lifecycle Lifecycle)
- func (r *TestPlan) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *TestPlan) ValidateCreate() error
- func (r *TestPlan) ValidateDelete() error
- func (r *TestPlan) ValidateUpdate(old runtime.Object) error
- type TestPlanList
- type TestPlanSpec
- type TestPlanStatus
- type TolerateSpec
- type VirtualObject
- type VirtualObjectList
- type VirtualObjectSpec
- type VirtualObjectStatus
- type WaitSpec
Constants ¶
const ( // PhaseUninitialized means that request is not yet accepted by the controller. PhaseUninitialized = Phase("") // PhasePending means that the CR has been accepted by the Kubernetes cluster, but one of the child // jobs has not been created. This includes the time waiting for logical dependencies, Ports discovery, // data rewiring, and placement of Pods. PhasePending = Phase("Pending") // PhaseRunning means that all the child jobs of a CR have been created, and at least one job // is still running. PhaseRunning = Phase("Running") // PhaseSuccess means that all jobs in a CR have voluntarily exited, and the system is not going // to restart any of these Jobs. PhaseSuccess = Phase("Success") // PhaseFailed means that at least one job of the CR has terminated in a failure (exited with a // non-zero exit code or was stopped by the system). PhaseFailed = Phase("Failed") )
These are the valid statuses of services. The following lifecycles are valid: PhaseUninitialized -> PhaseFailed PhaseUninitialized -> PhaseRunning* -> Completed PhaseUninitialized -> PhaseRunning* -> PhaseFailed PhaseUninitialized -> PhaseChaos* -> Completed PhaseUninitialized -> PhaseRunning* -> PhaseChaos -> Completed The asterix (*) Indicate that the same phase may appear recursively.
const ( // ConditionCRInitialized indicates whether the workflow has been initialized ConditionCRInitialized = ConditionType("Initialized") // ConditionAllJobsAreScheduled indicates that all jobs have been successfully scheduled. // Jobs may refer to actions of a plan, services of a cluster, chaos events of a cascade, etc. ConditionAllJobsAreScheduled = ConditionType("AllJobsAreScheduled") // ConditionAllJobsAreCompleted indicates that all jobs have been successfully completed. // Jobs may refer to actions of a plan, services of a cluster, chaos events of a cascade, etc. ConditionAllJobsAreCompleted = ConditionType("AllJobsAreCompleted") // ConditionJobUnexpectedTermination is used for a job that has been unexpectedly terminated. // The termination refers to both Success and Fail. ConditionJobUnexpectedTermination = ConditionType("UnexpectedTermination") // ConditionTerminated indicates the user-defined conditions are met. ConditionTerminated = ConditionType("Terminated") )
These are valid conditions of pod.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "frisbee.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 Action ¶
type Action struct { ActionType ActionType `json:"action"` // Name is a unique identifier of the action Name string `json:"name"` // DependsOn defines the conditions for the execution of this action // +optional DependsOn *WaitSpec `json:"depends,omitempty"` // Assert defines the conditions under which the Plan will terminate with a "passed" or "failed" message // +optional Assert *ConditionalExpr `json:"assert,omitempty"` *EmbedActions `json:",inline"` }
Action delegates arguments to the proper action handler.
func (*Action) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Action.
func (*Action) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ActionType ¶ added in v1.0.20
type ActionType string
const ( ActionService ActionType = "Service" ActionCluster ActionType = "Cluster" ActionChaos ActionType = "Chaos" ActionCascade ActionType = "Cascade" ActionDelete ActionType = "Delete" ActionCall ActionType = "Call" )
List of supported actions
type Call ¶ added in v1.0.20
type Call struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CallSpec `json:"spec,omitempty"` Status CallStatus `json:"status,omitempty"` }
Call is the Schema for the Call API. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Call) DeepCopy ¶ added in v1.0.20
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Call.
func (*Call) DeepCopyInto ¶ added in v1.0.20
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Call) DeepCopyObject ¶ added in v1.0.20
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Call) GetReconcileStatus ¶ added in v1.0.20
func (*Call) SetReconcileStatus ¶ added in v1.0.20
type CallList ¶ added in v1.0.20
type CallList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Call `json:"items"` }
CallList contains a list of Call jobs.
func (*CallList) DeepCopy ¶ added in v1.0.20
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CallList.
func (*CallList) DeepCopyInto ¶ added in v1.0.20
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CallList) DeepCopyObject ¶ added in v1.0.20
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CallSpec ¶ added in v1.0.20
type CallSpec struct { // Callable is the name of the endpoint that will be called Callable string `json:"callable,omitempty"` // Services is a list of services that will be stopped. Services []string `json:"services"` // Until defines the conditions under which the CR will stop spawning new jobs. // If used in conjunction with inputs, it will loop over inputs until the conditions are met. // +optional Until *ConditionalExpr `json:"until,omitempty"` // Schedule defines the interval between the invocations of the callable. // +optional Schedule *SchedulerSpec `json:"schedule,omitempty"` // Suspend flag tells the controller to suspend subsequent executions, it does // not apply to already started executions. Defaults to false. // +optional Suspend *bool `json:"suspend,omitempty"` }
CallSpec defines the desired state of Call.
func (*CallSpec) DeepCopy ¶ added in v1.0.20
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CallSpec.
func (*CallSpec) DeepCopyInto ¶ added in v1.0.20
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CallStatus ¶ added in v1.0.20
type CallStatus struct { Lifecycle `json:",inline"` // QueuedJobs is a list of services scheduled for stopping. // +optional QueuedJobs []Callable `json:"queuedJobs,omitempty"` // ScheduledJobs points to the next QueuedJobs. ScheduledJobs int `json:"scheduledJobs,omitempty"` // LastScheduleTime provide information about the last time a Service was successfully scheduled. LastScheduleTime *metav1.Time `json:"lastScheduleTime,omitempty"` }
CallStatus defines the observed state of Call.
func (*CallStatus) DeepCopy ¶ added in v1.0.20
func (in *CallStatus) DeepCopy() *CallStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CallStatus.
func (*CallStatus) DeepCopyInto ¶ added in v1.0.20
func (in *CallStatus) DeepCopyInto(out *CallStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Callable ¶ added in v1.0.20
type Callable struct { // Container specific the name of the container to which we will run the command Container string `json:"container"` // Container specifies a command and arguments to stop the targeted container in an application-specific manner. Command []string `json:"command"` }
Callable is a script that is executed within the service container, and returns a value. For example, a callable can be a command for stopping the containers that run in the Pod.
func (*Callable) DeepCopy ¶ added in v1.0.20
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Callable.
func (*Callable) DeepCopyInto ¶ added in v1.0.20
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cascade ¶ added in v1.0.16
type Cascade struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CascadeSpec `json:"spec,omitempty"` Status CascadeStatus `json:"status,omitempty"` }
Cascade is the Schema for the clusters API. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Cascade) DeepCopy ¶ added in v1.0.16
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cascade.
func (*Cascade) DeepCopyInto ¶ added in v1.0.16
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cascade) DeepCopyObject ¶ added in v1.0.16
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cascade) GetReconcileStatus ¶ added in v1.0.16
func (*Cascade) SetReconcileStatus ¶ added in v1.0.16
type CascadeList ¶ added in v1.0.16
type CascadeList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cascade `json:"items"` }
CascadeList contains a list of Cascades.
func (*CascadeList) DeepCopy ¶ added in v1.0.16
func (in *CascadeList) DeepCopy() *CascadeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CascadeList.
func (*CascadeList) DeepCopyInto ¶ added in v1.0.16
func (in *CascadeList) DeepCopyInto(out *CascadeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CascadeList) DeepCopyObject ¶ added in v1.0.16
func (in *CascadeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CascadeSpec ¶ added in v1.0.16
type CascadeSpec struct { GenerateFromTemplate `json:",inline"` // Schedule defines the interval between the creation of services within the group. // +optional Schedule *SchedulerSpec `json:"schedule,omitempty"` // Suspend flag tells the controller to suspend subsequent executions, it does // not apply to already started executions. Defaults to false. // +optional Suspend *bool `json:"suspend,omitempty"` }
CascadeSpec defines the desired state of Cascade.
func (*CascadeSpec) DeepCopy ¶ added in v1.0.16
func (in *CascadeSpec) DeepCopy() *CascadeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CascadeSpec.
func (*CascadeSpec) DeepCopyInto ¶ added in v1.0.16
func (in *CascadeSpec) DeepCopyInto(out *CascadeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CascadeStatus ¶ added in v1.0.16
type CascadeStatus struct { Lifecycle `json:",inline"` // QueuedJobs is a list of Chaos jobs scheduled for creation by the cascade. // +optional QueuedJobs []ChaosSpec `json:"queuedJobs,omitempty"` // ScheduledJobs points to the next QueuedJobs. ScheduledJobs int `json:"scheduledJobs,omitempty"` // LastScheduleTime provide information about the last time a Chaos job was successfully scheduled. LastScheduleTime *metav1.Time `json:"lastScheduleTime,omitempty"` }
CascadeStatus defines the observed state of Cascade.
func (*CascadeStatus) DeepCopy ¶ added in v1.0.16
func (in *CascadeStatus) DeepCopy() *CascadeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CascadeStatus.
func (*CascadeStatus) DeepCopyInto ¶ added in v1.0.16
func (in *CascadeStatus) DeepCopyInto(out *CascadeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Chaos ¶
type Chaos struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ChaosSpec `json:"spec,omitempty"` Status ChaosStatus `json:"status,omitempty"` }
Chaos is the Schema for the chaos API. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Chaos) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Chaos.
func (*Chaos) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Chaos) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Chaos) Default ¶
func (r *Chaos) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*Chaos) GetReconcileStatus ¶
func (*Chaos) SetReconcileStatus ¶
func (*Chaos) SetupWebhookWithManager ¶
func (*Chaos) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Chaos) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type ChaosList ¶
type ChaosList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Chaos `json:"items"` }
ChaosList contains a list of Chaos.
func (*ChaosList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosList.
func (*ChaosList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChaosList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChaosSpec ¶
type ChaosSpec struct { // Type indicate the type of the injected fault // +kubebuilder:validation:Enum=partition;kill;raw; Type FaultType `json:"type"` *EmbedFaultType `json:",inline"` }
ChaosSpec defines the desired state of Chaos.
func (*ChaosSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosSpec.
func (*ChaosSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChaosStatus ¶
type ChaosStatus struct { Lifecycle `json:",inline"` // LastScheduleTime provide information about the last time a Pod was scheduled. LastScheduleTime *metav1.Time `json:"lastScheduleTime,omitempty"` }
ChaosStatus defines the observed state of Chaos.
func (*ChaosStatus) DeepCopy ¶
func (in *ChaosStatus) DeepCopy() *ChaosStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChaosStatus.
func (*ChaosStatus) DeepCopyInto ¶
func (in *ChaosStatus) DeepCopyInto(out *ChaosStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterSpec `json:"spec,omitempty"` Status ClusterStatus `json:"status,omitempty"` }
Cluster is the Schema for the clusters API. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) Default ¶
func (r *Cluster) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*Cluster) GetReconcileStatus ¶
func (*Cluster) SetReconcileStatus ¶
func (*Cluster) SetupWebhookWithManager ¶
func (*Cluster) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Cluster) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cluster `json:"items"` }
ClusterList contains a list of Cluster.
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterSpec ¶
type ClusterSpec struct { GenerateFromTemplate `json:",inline"` // Tolerate specifies the conditions under which the cluster will fail. If undefined, the cluster fails // immediately when a service has failed. // +optional Tolerate TolerateSpec `json:"tolerate,omitempty"` // Schedule defines the interval between the creation of services in the group. // +optional Schedule *SchedulerSpec `json:"schedule,omitempty"` // Placement defines rules for placing the containers across the available nodes. // +optional Placement *PlacementSpec `json:"placement,omitempty"` // Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started // executions. Defaults to false. // +optional Suspend *bool `json:"suspend,omitempty"` }
ClusterSpec defines the desired state of Cluster.
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct { Lifecycle `json:",inline"` // QueuedJobs is a list of services scheduled for creation by the cluster. // +optional QueuedJobs []ServiceSpec `json:"queuedJobs,omitempty"` // ScheduledJobs points to the next QueuedJobs. ScheduledJobs int `json:"scheduledJobs,omitempty"` // LastScheduleTime provide information about the last time a Service was successfully scheduled. LastScheduleTime *metav1.Time `json:"lastScheduleTime,omitempty"` }
ClusterStatus defines the observed state of Cluster.
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConditionType ¶
type ConditionType string
ConditionType is a valid value for WorkflowCondition.Type
func (ConditionType) String ¶
func (t ConditionType) String() string
type ConditionalExpr ¶ added in v1.0.16
type ConditionalExpr struct { // Metrics set a Grafana alert that will be triggered once the condition is met. // Parsing: // Grafana URL: http://grafana/d/A2EjFbsMk/ycsb-services?editPanel=86 // metrics: A2EjFbsMk/86/Average (Panel/Dashboard/Metric) // // +optional // +nullable Metrics ExprMetrics `json:"metrics,omitempty"` // State describe the runtime condition that should be met after the action has been executed // Shall be defined using .Lifecycle() methods. The methods account only jobs that are managed by the object. // +optional // +nullable State ExprState `json:"state,omitempty"` }
ConditionalExpr is a source of information about whether the state of the workflow after a given time is correct or not. This is needed because some test plans may run in infinite-horizons.
func (*ConditionalExpr) DeepCopy ¶ added in v1.0.16
func (in *ConditionalExpr) DeepCopy() *ConditionalExpr
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionalExpr.
func (*ConditionalExpr) DeepCopyInto ¶ added in v1.0.16
func (in *ConditionalExpr) DeepCopyInto(out *ConditionalExpr)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ConditionalExpr) HasMetricsExpr ¶ added in v1.0.16
func (c *ConditionalExpr) HasMetricsExpr() bool
func (*ConditionalExpr) HasStateExpr ¶ added in v1.0.16
func (c *ConditionalExpr) HasStateExpr() bool
func (*ConditionalExpr) IsZero ¶ added in v1.0.17
func (c *ConditionalExpr) IsZero() bool
type Decorators ¶ added in v1.0.10
type Decorators struct { // +optional Labels map[string]string `json:"labels,omitempty"` // +optional Annotations map[string]string `json:"annotations,omitempty"` // SetFields is used to populate fields. Used for dynamic assignment based templated inputs. // +optional SetFields []SetField `json:"setFields,omitempty"` // Resources specifies limitations as to how the container will access host resources. // +optional Resources *Resources `json:"resources,omitempty"` // Telemetry is a list of referenced agents responsible to monitor the Service. // Agents are sidecar services will be deployed in the same Pod as the Service container. // +optional Telemetry []string `json:"telemetry,omitempty"` }
Decorators takes in a PodSpec, add some functionality and returns it.
func (*Decorators) DeepCopy ¶ added in v1.0.10
func (in *Decorators) DeepCopy() *Decorators
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Decorators.
func (*Decorators) DeepCopyInto ¶ added in v1.0.10
func (in *Decorators) DeepCopyInto(out *Decorators)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeleteSpec ¶ added in v1.0.17
type DeleteSpec struct { // Jobs is a list of jobs to be deleted. The format is {"kind":"name"}, e.g, {"service","client"} Jobs []string `json:"jobs"` }
func (*DeleteSpec) DeepCopy ¶ added in v1.0.17
func (in *DeleteSpec) DeepCopy() *DeleteSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteSpec.
func (*DeleteSpec) DeepCopyInto ¶ added in v1.0.17
func (in *DeleteSpec) DeepCopyInto(out *DeleteSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Disk ¶
type Disk struct { // ReadBPS limits read rate (bytes per second) ReadBPS string `json:"readbps,omitempty"` // ReadIOPS limits read rate (IO per second) ReadIOPS string `json:"readiops,omitempty"` // WriteBPS limits write rate (bytes per second) WriteBPS string `json:"writebps,omitempty"` // WriteIOPS limits write rate (IO per second) WriteIOPS string `json:"writeiops,omitempty"` }
Disk specifies the capabilities of the emulated storage device.
func (*Disk) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Disk.
func (*Disk) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmbedActions ¶
type EmbedActions struct { // +optional Service *GenerateFromTemplate `json:"service,omitempty"` // +optional Cluster *ClusterSpec `json:"cluster,omitempty"` // +optional Chaos *GenerateFromTemplate `json:"chaos,omitempty"` // +optional Cascade *CascadeSpec `json:"cascade,omitempty"` // +optional Delete *DeleteSpec `json:"delete,omitempty"` // +optional Call *CallSpec `json:"call,omitempty"` }
func (*EmbedActions) DeepCopy ¶
func (in *EmbedActions) DeepCopy() *EmbedActions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbedActions.
func (*EmbedActions) DeepCopyInto ¶
func (in *EmbedActions) DeepCopyInto(out *EmbedActions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmbedFaultType ¶
type EmbedFaultType struct { // +optional Raw *RawSpec `json:"raw,omitempty"` }
func (*EmbedFaultType) DeepCopy ¶
func (in *EmbedFaultType) DeepCopy() *EmbedFaultType
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbedFaultType.
func (*EmbedFaultType) DeepCopyInto ¶
func (in *EmbedFaultType) DeepCopyInto(out *EmbedFaultType)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmbedSpecs ¶ added in v1.0.10
type EmbedSpecs struct { // +optional Service *ServiceSpec `json:"service,omitempty"` // +optional Chaos *ChaosSpec `json:"chaos,omitempty"` }
func (*EmbedSpecs) DeepCopy ¶ added in v1.0.10
func (in *EmbedSpecs) DeepCopy() *EmbedSpecs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbedSpecs.
func (*EmbedSpecs) DeepCopyInto ¶ added in v1.0.10
func (in *EmbedSpecs) DeepCopyInto(out *EmbedSpecs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EphemeralVolumeSpec ¶ added in v1.0.22
type EphemeralVolumeSpec struct { Name string `json:"name"` Spec corev1.PersistentVolumeClaimSpec `json:"spec,omitempty"` }
func (*EphemeralVolumeSpec) DeepCopy ¶ added in v1.0.22
func (in *EphemeralVolumeSpec) DeepCopy() *EphemeralVolumeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralVolumeSpec.
func (*EphemeralVolumeSpec) DeepCopyInto ¶ added in v1.0.22
func (in *EphemeralVolumeSpec) DeepCopyInto(out *EphemeralVolumeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExprMetrics ¶ added in v1.0.16
type ExprMetrics string
type GenerateFromTemplate ¶ added in v1.0.10
type GenerateFromTemplate struct { // TemplateRef refers to a template (e.g, iperf-server). TemplateRef string `json:"templateRef"` // Until defines the conditions under which the CR will stop spawning new jobs. // If used in conjunction with inputs, it will loop over inputs until the conditions are met. // +optional Until *ConditionalExpr `json:"until,omitempty"` // MaxInstances dictate the number of objects to be created for the CR. // If no inputs are defined, then all instances will be initiated using the default parameters of the template. // Conditions used in conjunction with Until, MaxInstances as a max bound. // +optional MaxInstances int `json:"instances"` // Inputs are list of inputs passed to the objects. // Conditions used in conjunction with instances, if the number of instances is larger that the number of inputs, // then inputs are recursively iteration. // +optional Inputs []map[string]string `json:"inputs,omitempty"` }
GenerateFromTemplate generates a spec by parameterizing the templateRef with the given inputs.
func (*GenerateFromTemplate) DeepCopy ¶ added in v1.0.10
func (in *GenerateFromTemplate) DeepCopy() *GenerateFromTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenerateFromTemplate.
func (*GenerateFromTemplate) DeepCopyInto ¶ added in v1.0.10
func (in *GenerateFromTemplate) DeepCopyInto(out *GenerateFromTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GenerateFromTemplate) GetInput ¶ added in v1.0.10
func (t *GenerateFromTemplate) GetInput(i int) map[string]string
func (*GenerateFromTemplate) IterateInputs ¶ added in v1.0.20
func (t *GenerateFromTemplate) IterateInputs(cb func(in map[string]string) error) error
func (*GenerateFromTemplate) Prepare ¶ added in v1.0.20
func (t *GenerateFromTemplate) Prepare(allowMultipleInputs bool) error
Prepare automatically fills missing values from the template, according to the following rules: * Without inputs and without instances, there is 1 instance with default values. * Without instances, the number of instances is inferred by the number of inputs.
type Inputs ¶
type Inputs struct { // Parameters are user-set values that are dynamically evaluated Parameters map[string]string `json:"parameters,omitempty"` }
func (*Inputs) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Inputs.
func (*Inputs) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Lifecycle ¶
type Lifecycle struct { // Phase is a simple, high-level summary of where the Object is in its lifecycle. // The conditions array, the reason and message fields, and the individual container status // arrays contain more detail about the pod's status. Phase Phase `json:"phase,omitempty"` // Reason is A brief CamelCase message indicating details about why the service is in this Phase. // e.g. 'Evicted' // +optional Reason string `json:"reason,omitempty"` // Message provides more details for understanding the Reason. Message string `json:"message,omitempty"` // Conditions describe sequences of events that warrant the present Phase. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
func (*Lifecycle) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Lifecycle.
func (*Lifecycle) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MatchBy ¶
type MatchBy struct { // ByName is a map of string keys and a set values that used to select services. // The key defines the namespace which services belong, and the values is a set of service names. // +optional ByName map[string][]string `json:"byName,omitempty"` // ByCluster defines the service group where services belong. // +optional ByCluster map[string]string `json:"byCluster,omitempty"` }
MatchBy defines the selectors for services. If the all selectors are empty, all services will be selected.
func (*MatchBy) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchBy.
func (*MatchBy) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Mode ¶
type Mode string
Mode represents the filter for selecting on of many.
const ( // OneMode represents that the system will select one object randomly. OneMode Mode = "one" // AllMode represents that the system will select all objects regardless of status // (not ready or not running pods includes). // Use this label carefully. AllMode Mode = "all" // FixedMode represents that the system will select a specific number of running objects. FixedMode Mode = "fixed" // FixedPercentMode to specify a fixed % of a cluster FixedPercentMode Mode = "fixed-percent" // RandomMaxPercentMode to specify a maximum % of a cluster RandomMaxPercentMode Mode = "random-max-percent" )
type NIC ¶
NIC specifies the capabilities of the emulated network interface.
func (*NIC) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NIC.
func (*NIC) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Phase ¶
type Phase string
Phase is a simple, high-level summary of where the Object is in its lifecycle.
type PlacementSpec ¶ added in v1.0.18
type PlacementSpec struct { // Collocate will place all the services within the same node. // +optional Collocate bool `json:"collocate"` // ConflictsWith points to another cluster whose services cannot be located with this one. // For example, this is needed for placing the master nodes on a different failure domain than the slave nodes. ConflictsWith []string `json:"conflictsWith,omitempty"` // Nodes will place all the services within the same specific node. // +optional Nodes []string `json:"nodes,omitempty"` }
func (*PlacementSpec) DeepCopy ¶ added in v1.0.18
func (in *PlacementSpec) DeepCopy() *PlacementSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlacementSpec.
func (*PlacementSpec) DeepCopyInto ¶ added in v1.0.18
func (in *PlacementSpec) DeepCopyInto(out *PlacementSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Requirements ¶ added in v1.0.10
type Requirements struct { // EphemeralVolume create an ephemeral volume. It's use for application that need additional storage but don't care whether // that data is stored persistently across restarts. // +optional EphemeralVolume *EphemeralVolumeSpec `json:"persistentVolumeClaim,omitempty"` // Ingress makes An API object that manages external access to the services in a cluster, typically HTTP. // +optional Ingress *netv1.IngressBackend `json:"ingressBackend,omitempty"` }
Requirements points to Kinds and their respective configurations required for the Service operation. For example, this field can be used to create PVCs dedicated to this service.
func (*Requirements) DeepCopy ¶ added in v1.0.10
func (in *Requirements) DeepCopy() *Requirements
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Requirements.
func (*Requirements) DeepCopyInto ¶ added in v1.0.10
func (in *Requirements) DeepCopyInto(out *Requirements)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Resources ¶
type Resources struct { // +optional Memory string `json:"memory,omitempty"` // +optional CPU string `json:"cpu,omitempty"` // +optional NIC *NIC `json:"nic,omitempty"` // +optional Disk *Disk `json:"disk,omitempty"` }
Resources specifies limitations as to how the container will access host resources.
func (*Resources) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources.
func (*Resources) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SchedulerSpec ¶
type SchedulerSpec struct { // Cron defines a cron job rule. // // Some rule examples: // "0 30 * * * *" means to "Every hour on the half hour" // "@hourly" means to "Every hour" // "@every 1h30m" means to "Every hour thirty" // // More rule info: https://godoc.org/github.com/robfig/cron // // +optional Cron *string `json:"cron,omitempty"` // StartingDeadlineSeconds is an optional deadline in seconds for starting the job if it misses scheduled // time for any reason. if we miss this deadline, we'll just wait till the next scheduled time // // +optional StartingDeadlineSeconds *int64 `json:"startingDeadlineSeconds,omitempty"` // +optional Conditions *ConditionalExpr `json:"conditions,omitempty"` }
SchedulerSpec defines information about schedule of the chaos experiment. The scheduler will schedule up to spec.GenerateFromTemplate.Instances or spec.GenerateFromTemplate.Until.
func (*SchedulerSpec) DeepCopy ¶
func (in *SchedulerSpec) DeepCopy() *SchedulerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulerSpec.
func (*SchedulerSpec) DeepCopyInto ¶
func (in *SchedulerSpec) DeepCopyInto(out *SchedulerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Service ¶
type Service struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServiceSpec `json:"spec,omitempty"` Status ServiceStatus `json:"status,omitempty"` }
Service is the Schema for the services API. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Service) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
func (*Service) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Service) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Service) Default ¶
func (r *Service) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*Service) GetReconcileStatus ¶
func (*Service) SetReconcileStatus ¶
func (*Service) SetupWebhookWithManager ¶
func (*Service) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Service) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type ServiceList ¶
type ServiceList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Service `json:"items"` }
ServiceList contains a list of Service.
func (*ServiceList) DeepCopy ¶
func (in *ServiceList) DeepCopy() *ServiceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceList.
func (*ServiceList) DeepCopyInto ¶
func (in *ServiceList) DeepCopyInto(out *ServiceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceList) DeepCopyObject ¶
func (in *ServiceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceSelector ¶
type ServiceSelector struct { // Match contains the rules to select target // +optional Match MatchBy `json:"match,omitempty"` // Mode defines which of the selected services to use. If undefined, all() is used // Supported mode: one / all / fixed / fixed-percent / random-max-percent // +optional Mode Mode `json:"mode"` // Value is required when the mode is set to `FixedPodMode` / `FixedPercentPodMod` / `RandomMaxPercentPodMod`. // If `FixedPodMode`, provide an integer of pods to do chaos action. // If `FixedPercentPodMod`, provide a number from 0-100 to specify the percent of pods the server can do chaos action. // IF `RandomMaxPercentPodMod`, provide a number from 0-100 to specify the max percent of pods to do chaos action // +optional // +kubebuilder:validation:Enum=one;all;fixed;fixed-percent;random-max-percent Value string `json:"value,omitempty"` // Macro abstract selector parameters into a structured string (e.g, .cluster.master.all). Every parsed field is // represents an inner structure of the selector. // In case of invalid macro, the selector will return empty results. // Macro conflicts with any other parameter. // +optional Macro *string `json:"macro,omitempty"` }
func (*ServiceSelector) DeepCopy ¶
func (in *ServiceSelector) DeepCopy() *ServiceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSelector.
func (*ServiceSelector) DeepCopyInto ¶
func (in *ServiceSelector) DeepCopyInto(out *ServiceSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceSpec ¶
type ServiceSpec struct { // +optional Requirements *Requirements `json:"requirements,omitempty"` // +optional Decorators *Decorators `json:"decorators,omitempty"` // +optional Callables map[string]Callable `json:"callables,omitempty"` // +kubebuilder:validation:Optional // +optional corev1.PodSpec `json:",inline,omitempty"` }
ServiceSpec defines the desired state of Service.
func (*ServiceSpec) DeepCopy ¶
func (in *ServiceSpec) DeepCopy() *ServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec.
func (*ServiceSpec) DeepCopyInto ¶
func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceStatus ¶
type ServiceStatus struct { Lifecycle `json:",inline"` // LastScheduleTime provide information about the last time a Pod was scheduled. LastScheduleTime *metav1.Time `json:"lastScheduleTime,omitempty"` }
ServiceStatus defines the observed state of Service.
func (*ServiceStatus) DeepCopy ¶
func (in *ServiceStatus) DeepCopy() *ServiceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceStatus.
func (*ServiceStatus) DeepCopyInto ¶
func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SetField ¶ added in v1.0.14
type SetField struct { // Field is the path to the field whose value will be replaced. // Examples: Containers.0.Ports.0 Field string `json:"field"` Value string `json:"value"` }
func (*SetField) DeepCopy ¶ added in v1.0.14
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SetField.
func (*SetField) DeepCopyInto ¶ added in v1.0.14
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Template ¶
type Template struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TemplateSpec `json:"spec,omitempty"` Status TemplateStatus `json:"status,omitempty"` }
Template is the Schema for the templates API +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Template) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Template.
func (*Template) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Template) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Template) Default ¶
func (r *Template) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*Template) GetReconcileStatus ¶
func (*Template) SetReconcileStatus ¶
func (*Template) SetupWebhookWithManager ¶
func (*Template) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Template) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type TemplateList ¶
type TemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Template `json:"items"` }
TemplateList contains a list of Template
func (*TemplateList) DeepCopy ¶
func (in *TemplateList) DeepCopy() *TemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateList.
func (*TemplateList) DeepCopyInto ¶
func (in *TemplateList) DeepCopyInto(out *TemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TemplateList) DeepCopyObject ¶
func (in *TemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TemplateSpec ¶
type TemplateSpec struct { // Inputs are dynamic fields that populate the spec. // +optional Inputs *Inputs `json:"inputs,omitempty"` // EmbedSpecs point to the Frisbee specs that can be templated. *EmbedSpecs `json:",inline"` }
TemplateSpec defines the desired state of Template
func (*TemplateSpec) DeepCopy ¶
func (in *TemplateSpec) DeepCopy() *TemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateSpec.
func (*TemplateSpec) DeepCopyInto ¶
func (in *TemplateSpec) DeepCopyInto(out *TemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TemplateStatus ¶
type TemplateStatus struct {
Lifecycle `json:",inline"`
}
TemplateStatus defines the observed state of Template
func (*TemplateStatus) DeepCopy ¶
func (in *TemplateStatus) DeepCopy() *TemplateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateStatus.
func (*TemplateStatus) DeepCopyInto ¶
func (in *TemplateStatus) DeepCopyInto(out *TemplateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TestPlan ¶ added in v1.0.20
type TestPlan struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TestPlanSpec `json:"spec,omitempty"` Status TestPlanStatus `json:"status,omitempty"` }
TestPlan is the Schema for the TestPlans API. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*TestPlan) DeepCopy ¶ added in v1.0.20
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestPlan.
func (*TestPlan) DeepCopyInto ¶ added in v1.0.20
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TestPlan) DeepCopyObject ¶ added in v1.0.20
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TestPlan) Default ¶ added in v1.0.20
func (r *TestPlan) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*TestPlan) GetReconcileStatus ¶ added in v1.0.20
func (*TestPlan) SetReconcileStatus ¶ added in v1.0.20
func (*TestPlan) SetupWebhookWithManager ¶ added in v1.0.20
func (*TestPlan) ValidateCreate ¶ added in v1.0.20
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*TestPlan) ValidateDelete ¶ added in v1.0.20
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type TestPlanList ¶ added in v1.0.20
type TestPlanList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TestPlan `json:"items"` }
TestPlanList contains a list of TestPlan.
func (*TestPlanList) DeepCopy ¶ added in v1.0.20
func (in *TestPlanList) DeepCopy() *TestPlanList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestPlanList.
func (*TestPlanList) DeepCopyInto ¶ added in v1.0.20
func (in *TestPlanList) DeepCopyInto(out *TestPlanList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TestPlanList) DeepCopyObject ¶ added in v1.0.20
func (in *TestPlanList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TestPlanSpec ¶ added in v1.0.20
type TestPlanSpec struct { // Actions are the tasks that will be taken. Actions []Action `json:"actions"` // Suspend flag tells the controller to suspend subsequent executions, it does // not apply to already started executions. Defaults to false. // +optional Suspend *bool `json:"suspend,omitempty"` }
TestPlanSpec defines the desired state of TestPlan.
func (*TestPlanSpec) DeepCopy ¶ added in v1.0.20
func (in *TestPlanSpec) DeepCopy() *TestPlanSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestPlanSpec.
func (*TestPlanSpec) DeepCopyInto ¶ added in v1.0.20
func (in *TestPlanSpec) DeepCopyInto(out *TestPlanSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TestPlanStatus ¶ added in v1.0.20
type TestPlanStatus struct { Lifecycle `json:",inline"` // ExecutedActions is a list of executed actions. // +optional ExecutedActions map[string]ConditionalExpr `json:"executedActions"` // GrafanaEndpoint points to the local Grafana instance GrafanaEndpoint string `json:"grafanaEndpoint,omitempty"` // PrometheusEndpoint points to the local Prometheus instance PrometheusEndpoint string `json:"prometheusEndpoint,omitempty"` }
TestPlanStatus defines the observed state of TestPlan.
func (*TestPlanStatus) DeepCopy ¶ added in v1.0.20
func (in *TestPlanStatus) DeepCopy() *TestPlanStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestPlanStatus.
func (*TestPlanStatus) DeepCopyInto ¶ added in v1.0.20
func (in *TestPlanStatus) DeepCopyInto(out *TestPlanStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TolerateSpec ¶
type TolerateSpec struct { // FailedServices indicate the number of services that may fail before the cluster fails itself. FailedServices int `json:"failedServices"` }
TolerateSpec specifies the system's ability to continue operating despite failures or malfunctions. If tolerate is enable, the cluster will remain "alive" even if some services have failed. Such failures are likely to happen as part of a Chaos experiment.
func (*TolerateSpec) DeepCopy ¶
func (in *TolerateSpec) DeepCopy() *TolerateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TolerateSpec.
func (*TolerateSpec) DeepCopyInto ¶
func (in *TolerateSpec) DeepCopyInto(out *TolerateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (TolerateSpec) String ¶
func (in TolerateSpec) String() string
type VirtualObject ¶ added in v1.0.17
type VirtualObject struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec VirtualObjectSpec `json:"spec,omitempty"` Status VirtualObjectStatus `json:"status,omitempty"` }
VirtualObject is a wrapper for jobs that do not actually create something on the system. For example, Deletion jobs. These jobs do not have a dedicated controller, but their fields are set manually.
func (*VirtualObject) DeepCopy ¶ added in v1.0.17
func (in *VirtualObject) DeepCopy() *VirtualObject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualObject.
func (*VirtualObject) DeepCopyInto ¶ added in v1.0.17
func (in *VirtualObject) DeepCopyInto(out *VirtualObject)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VirtualObject) DeepCopyObject ¶ added in v1.0.17
func (in *VirtualObject) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*VirtualObject) GetReconcileStatus ¶ added in v1.0.17
func (in *VirtualObject) GetReconcileStatus() Lifecycle
func (*VirtualObject) SetReconcileStatus ¶ added in v1.0.17
func (in *VirtualObject) SetReconcileStatus(lifecycle Lifecycle)
type VirtualObjectList ¶ added in v1.0.17
type VirtualObjectList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []VirtualObject `json:"items"` }
VirtualObjectList contains a list of Virtual Objects.
func (*VirtualObjectList) DeepCopy ¶ added in v1.0.17
func (in *VirtualObjectList) DeepCopy() *VirtualObjectList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualObjectList.
func (*VirtualObjectList) DeepCopyInto ¶ added in v1.0.17
func (in *VirtualObjectList) DeepCopyInto(out *VirtualObjectList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VirtualObjectList) DeepCopyObject ¶ added in v1.0.17
func (in *VirtualObjectList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VirtualObjectSpec ¶ added in v1.0.17
type VirtualObjectSpec struct{}
func (*VirtualObjectSpec) DeepCopy ¶ added in v1.0.17
func (in *VirtualObjectSpec) DeepCopy() *VirtualObjectSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualObjectSpec.
func (*VirtualObjectSpec) DeepCopyInto ¶ added in v1.0.17
func (in *VirtualObjectSpec) DeepCopyInto(out *VirtualObjectSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualObjectStatus ¶ added in v1.0.17
type VirtualObjectStatus struct {
Lifecycle `json:",inline"`
}
func (*VirtualObjectStatus) DeepCopy ¶ added in v1.0.17
func (in *VirtualObjectStatus) DeepCopy() *VirtualObjectStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualObjectStatus.
func (*VirtualObjectStatus) DeepCopyInto ¶ added in v1.0.17
func (in *VirtualObjectStatus) DeepCopyInto(out *VirtualObjectStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WaitSpec ¶
type WaitSpec struct { // Running waits for the given groups to be running // +optional Running []string `json:"running,omitempty"` // Success waits for the given groups to be succeeded // +optional Success []string `json:"success,omitempty"` // After is the time offset since the beginning of this action. // +optional After *metav1.Duration `json:"after,omitempty"` }
func (*WaitSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WaitSpec.
func (*WaitSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- call_crd.go
- cascade_crd.go
- chaos_crd.go
- chaos_webhook.go
- cluster_crd.go
- cluster_webhook.go
- doc.go
- register.go
- service_crd.go
- service_webhook.go
- template_crd.go
- template_webhook.go
- testplan_crd.go
- testplan_webhook.go
- type_condexpr.go
- type_lifecycle.go
- type_scheduler.go
- type_selector.go
- virtual-object_crd.go
- zz_generated.deepcopy.go