v1alpha1

package
v1.0.12 Latest Latest
Warning

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

Go to latest
Published: Dec 9, 2021 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	FaultPartition = FaultType("partition")
	FaultKill      = FaultType("kill")
)
View Source
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.

View Source
const (
	// ConditionCRInitialized indicates whether the workflow has been initialized
	ConditionCRInitialized = ConditionType("initialized")

	ConditionJobFailed = ConditionType("hasFailedJobs")

	// ConditionAllJobs indicates whether all actions in the workflow have been executed.
	ConditionAllJobs = ConditionType("AllJobsAreRunning")

	// ConditionAllJobsDone indicates whether all actions in the workflow have been completed.
	ConditionAllJobsDone = ConditionType("complete")

	// WorkflowAssertion indicates the user-defined conditions are met.
	WorkflowAssertion = ConditionType("assertion")
)

These are valid conditions of pod.

View Source
const (
	// LabelManagedBy binds an object  back to a specific controller.
	LabelManagedBy = "frisbee-controller"

	// BelongsToWorkflow is a label that is passed from parent to the child, in order to identify all
	// the various objects that belong to a specific workflow.
	BelongsToWorkflow = "frisbee-workflow"
)

Variables

View Source
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 string `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 workflow will terminate with a "passed" or "failed" message
	// +optional
	Assert *Assert `json:"assert,omitempty"`

	*EmbedActions `json:",inline"`
}

Action delegates arguments to the proper action handler.

func (*Action) DeepCopy

func (in *Action) DeepCopy() *Action

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

func (*Action) DeepCopyInto

func (in *Action) DeepCopyInto(out *Action)

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

type ActionList

type ActionList []Action

ActionList is a list of actions

func (ActionList) DeepCopy

func (in ActionList) DeepCopy() ActionList

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

func (ActionList) DeepCopyInto

func (in ActionList) DeepCopyInto(out *ActionList)

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

func (ActionList) GetNames

func (in ActionList) GetNames() []string

func (ActionList) ToString

func (in ActionList) ToString() string

type Assert

type Assert struct {
	// SLA is a Grafana alert that will be triggered if the SLA condition is met.
	// SLA assertion is applicable throughout the execution of an action.
	SLA string `json:"sla"`

	// State describe the runtime condition that should be met after the action has been executed
	State string `json:"state"`
}

Assert 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 workflows may run in infinite-horizons.

func (*Assert) DeepCopy

func (in *Assert) DeepCopy() *Assert

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

func (*Assert) DeepCopyInto

func (in *Assert) DeepCopyInto(out *Assert)

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

func (*Chaos) DeepCopy

func (in *Chaos) DeepCopy() *Chaos

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

func (*Chaos) DeepCopyInto

func (in *Chaos) DeepCopyInto(out *Chaos)

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

func (*Chaos) DeepCopyObject

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

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 (in *Chaos) GetReconcileStatus() Lifecycle

func (*Chaos) SetReconcileStatus

func (in *Chaos) SetReconcileStatus(lifecycle Lifecycle)

func (*Chaos) SetupWebhookWithManager

func (r *Chaos) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Chaos) ValidateCreate

func (r *Chaos) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Chaos) ValidateDelete

func (r *Chaos) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Chaos) ValidateUpdate

func (r *Chaos) ValidateUpdate(old runtime.Object) error

ValidateUpdate 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

func (in *ChaosList) DeepCopy() *ChaosList

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

func (*ChaosList) DeepCopyInto

func (in *ChaosList) DeepCopyInto(out *ChaosList)

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

func (*ChaosList) DeepCopyObject

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

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;
	Type FaultType `json:"type"`

	*EmbedFaultType `json:",inline"`
}

ChaosSpec defines the desired state of Chaos

func (*ChaosSpec) DeepCopy

func (in *ChaosSpec) DeepCopy() *ChaosSpec

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

func (*ChaosSpec) DeepCopyInto

func (in *ChaosSpec) DeepCopyInto(out *ChaosSpec)

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

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

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

func (*Cluster) DeepCopyObject

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

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 (in *Cluster) GetReconcileStatus() Lifecycle

func (*Cluster) SetReconcileStatus

func (in *Cluster) SetReconcileStatus(lifecycle Lifecycle)

func (*Cluster) SetupWebhookWithManager

func (r *Cluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Cluster) ValidateCreate

func (r *Cluster) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Cluster) ValidateDelete

func (r *Cluster) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Cluster) ValidateUpdate

func (r *Cluster) ValidateUpdate(old runtime.Object) error

ValidateUpdate 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"`

	// Schedule defines the interval between the creation of services within the group. Executed creation is not
	// supported in collocated mode. Since Pods are intended to be disposable and replaceable, we cannot add a
	// container to a Pod once it has been created
	// +optional
	Schedule *SchedulerSpec `json:"schedule,omitempty"`

	// Tolerate specifies the conditions under which the cluster will fail. If left undefined, the cluster
	// will fail immediately when a service has failed.
	// +optional
	Tolerate TolerateSpec `json:"tolerate,omitempty"`

	// Domain specifies the location where Service will be placed.
	// +optional
	Domain string `json:"domain,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"`

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

	// Expected is a list of services scheduled for creation by the cluster.
	// +optional
	Expected []ServiceSpec `json:"expected,omitempty"`

	// LastScheduleJob points to the next Expect Job
	LastScheduleJob int `json:"lastScheduleJob,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 Decorators added in v1.0.10

type Decorators struct {
	// 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"`

	// Domain specifies the location where Service will be placed.
	// +optional
	Placement *Placement `json:"placement,omitempty"`

	// Dashboard is dashboard payload that will be installed in Grafana.
	// This option is only applicable to Agents.
	// +optional
	Dashboards metav1.LabelSelector `json:"dashboards,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 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

func (in *Disk) DeepCopy() *Disk

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

func (*Disk) DeepCopyInto

func (in *Disk) DeepCopyInto(out *Disk)

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 *ChaosSpec `json:"chaos,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
	Partition *PartitionSpec `json:"partition,omitempty"`

	Kill *KillSpec `json:"kill,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"`
}

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 FaultType

type FaultType string

type GenerateFromTemplate added in v1.0.10

type GenerateFromTemplate struct {
	// TemplateRef refers to a  template (e.g, iperf-server).
	TemplateRef string `json:"templateRef"`

	// Instances dictate the number of objects to be created for the service. If Env is specified, the values
	// with be identical across the spawned instances. For instances with different parameters, use Inputs.
	// +optional
	Instances int `json:"instances"`

	// Inputs are list of inputs passed to the objects. When used in conjunction with Instances, there can be
	// only one input and all the instances will run with identical parameters. If Instances is defined and there are
	// more than one inputs, the request will be rejected.
	// +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

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) Iterate added in v1.0.10

func (t *GenerateFromTemplate) Iterate(cb func(in map[string]string) error) error

func (*GenerateFromTemplate) Validate added in v1.0.10

func (t *GenerateFromTemplate) Validate(allowMultipleInputs bool) error

type Inputs

type Inputs struct {
	// Parameters define dynamically valued fields. The values are given by higher level entities, such as the workflow.
	Parameters map[string]string `json:"parameters,omitempty"`
}

func (*Inputs) DeepCopy

func (in *Inputs) DeepCopy() *Inputs

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

func (*Inputs) DeepCopyInto

func (in *Inputs) DeepCopyInto(out *Inputs)

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

type KillSpec

type KillSpec struct {
	Selector ServiceSelector `json:"selector,omitempty"`
}

KillSpec terminates the selected Pod. Because this failure is permanent, it can only be waited in the Running Phase. It does not go through Pass.

func (*KillSpec) DeepCopy

func (in *KillSpec) DeepCopy() *KillSpec

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

func (*KillSpec) DeepCopyInto

func (in *KillSpec) DeepCopyInto(out *KillSpec)

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"`
}

func (*Lifecycle) DeepCopy

func (in *Lifecycle) DeepCopy() *Lifecycle

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

func (*Lifecycle) DeepCopyInto

func (in *Lifecycle) DeepCopyInto(out *Lifecycle)

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

func (*Lifecycle) String

func (in *Lifecycle) String() string

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

func (in *MatchBy) DeepCopy() *MatchBy

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

func (*MatchBy) DeepCopyInto

func (in *MatchBy) DeepCopyInto(out *MatchBy)

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 (
	// AnyMode represents that the system will select one object randomly.
	AnyMode Mode = "any"
	// 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 % that can be injected chaos action.
	FixedPercentMode Mode = "fixed-percent"
	// RandomMaxPercentMode to specify a maximum % that can be injected chaos action.
	RandomMaxPercentMode Mode = "random-max-percent"
)

func Convert

func Convert(mode string) Mode

type NIC

type NIC struct {
	Rate    string `json:"rate,omitempty"`
	Latency string `json:"latency,omitempty"`
}

NIC specifies the capabilities of the emulated network interface.

func (*NIC) DeepCopy

func (in *NIC) DeepCopy() *NIC

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

func (*NIC) DeepCopyInto

func (in *NIC) DeepCopyInto(out *NIC)

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

type PVC added in v1.0.10

type PVC struct {
	Name string                           `json:"name"`
	Spec corev1.PersistentVolumeClaimSpec `json:"spec,omitempty"`
}

func (*PVC) DeepCopy added in v1.0.10

func (in *PVC) DeepCopy() *PVC

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

func (*PVC) DeepCopyInto added in v1.0.10

func (in *PVC) DeepCopyInto(out *PVC)

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

type PartitionSpec

type PartitionSpec struct {
	Selector ServiceSelector `json:"selector"`

	// Duration is the time after which Frisbee will roll back the injected fault.
	// +optional
	Duration *metav1.Duration `json:"duration,omitempty"`
}

PartitionSpec separate the given Pod from the rest of the network. This chaos typeis retractable (either manually or after a duration) and can be waited at both Running and Pass Phase. Running phase begins when the failure is injected. Pass begins when the failure is retracted. If anything goes wrong in between, the chaos goes into Failed phase.

func (*PartitionSpec) DeepCopy

func (in *PartitionSpec) DeepCopy() *PartitionSpec

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

func (*PartitionSpec) DeepCopyInto

func (in *PartitionSpec) DeepCopyInto(out *PartitionSpec)

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.

func (Phase) Is

func (p Phase) Is(ref Phase) bool

func (Phase) Precedes

func (p Phase) Precedes(ref Phase) bool

Precedes return true if the given phase precedes the reference phase.

type Placement added in v1.0.10

type Placement struct {
	Domain []string `json:"domain,omitempty"`
}

func (*Placement) DeepCopy added in v1.0.10

func (in *Placement) DeepCopy() *Placement

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

func (*Placement) DeepCopyInto added in v1.0.10

func (in *Placement) DeepCopyInto(out *Placement)

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 {
	// +optional
	PVC *PVC `json:"persistentVolumeClaim,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

func (in *Resources) DeepCopy() *Resources

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

func (*Resources) DeepCopyInto

func (in *Resources) DeepCopyInto(out *Resources)

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

type SList

type SList []*Service

SList is a service list

func (SList) ByNamespace

func (in SList) ByNamespace() map[string][]string

ByNamespace return the services by the namespace they belong to.

func (SList) DeepCopy

func (in SList) DeepCopy() SList

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

func (SList) DeepCopyInto

func (in SList) DeepCopyInto(out *SList)

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

func (SList) GetNames

func (in SList) GetNames() []string

func (SList) GetNamespacedNames

func (in SList) GetNamespacedNames() []string

func (SList) GetNamespaces

func (in SList) GetNamespaces() []string

func (SList) ToString

func (in SList) ToString() string

func (SList) Yield

func (in SList) Yield(ctx context.Context, schedule *SchedulerSpec) <-chan *Service

Yield takes a list and return its elements one by one, with the frequency defined in the cronspec.

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
	Cron string `json:"cron"`

	// 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"`
}

SchedulerSpec defines information about schedule of the chaos experiment.

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.

func (*Service) DeepCopy

func (in *Service) DeepCopy() *Service

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

func (*Service) DeepCopyInto

func (in *Service) DeepCopyInto(out *Service)

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

func (*Service) DeepCopyObject

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

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 (in *Service) GetReconcileStatus() Lifecycle

func (*Service) SetReconcileStatus

func (in *Service) SetReconcileStatus(lifecycle Lifecycle)

func (*Service) SetupWebhookWithManager

func (r *Service) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Service) ValidateCreate

func (r *Service) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Service) ValidateDelete

func (r *Service) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Service) ValidateUpdate

func (r *Service) ValidateUpdate(old runtime.Object) error

ValidateUpdate 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
	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"`

	// +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 Telemetry

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

	Spec   TelemetrySpec   `json:"spec,omitempty"`
	Status TelemetryStatus `json:"status,omitempty"`
}

Telemetry is the Schema for the telemetries API

func (*Telemetry) DeepCopy

func (in *Telemetry) DeepCopy() *Telemetry

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

func (*Telemetry) DeepCopyInto

func (in *Telemetry) DeepCopyInto(out *Telemetry)

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

func (*Telemetry) DeepCopyObject

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

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

func (*Telemetry) Default

func (r *Telemetry) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Telemetry) GetReconcileStatus

func (in *Telemetry) GetReconcileStatus() Lifecycle

func (*Telemetry) SetReconcileStatus

func (in *Telemetry) SetReconcileStatus(lifecycle Lifecycle)

func (*Telemetry) SetupWebhookWithManager

func (r *Telemetry) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Telemetry) ValidateCreate

func (r *Telemetry) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Telemetry) ValidateDelete

func (r *Telemetry) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Telemetry) ValidateUpdate

func (r *Telemetry) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TelemetryList

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

TelemetryList contains a list of Telemetry

func (*TelemetryList) DeepCopy

func (in *TelemetryList) DeepCopy() *TelemetryList

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

func (*TelemetryList) DeepCopyInto

func (in *TelemetryList) DeepCopyInto(out *TelemetryList)

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

func (*TelemetryList) DeepCopyObject

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

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

type TelemetrySpec

type TelemetrySpec struct {
	// ImportMonitors are references to monitoring packages that will be used in the monitoring stack.
	// +optional
	ImportMonitors []string `json:"importMonitors,omitempty"`
}

TelemetrySpec defines the desired state of Telemetry

func (*TelemetrySpec) DeepCopy

func (in *TelemetrySpec) DeepCopy() *TelemetrySpec

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

func (*TelemetrySpec) DeepCopyInto

func (in *TelemetrySpec) DeepCopyInto(out *TelemetrySpec)

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

type TelemetryStatus

type TelemetryStatus struct {
	Lifecycle `json:",inline"`
}

TelemetryStatus defines the observed state of Telemetry

func (*TelemetryStatus) DeepCopy

func (in *TelemetryStatus) DeepCopy() *TelemetryStatus

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

func (*TelemetryStatus) DeepCopyInto

func (in *TelemetryStatus) DeepCopyInto(out *TelemetryStatus)

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

func (*Template) DeepCopy

func (in *Template) DeepCopy() *Template

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

func (*Template) DeepCopyInto

func (in *Template) DeepCopyInto(out *Template)

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

func (*Template) DeepCopyObject

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

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 (in *Template) GetReconcileStatus() Lifecycle

func (*Template) SetReconcileStatus

func (in *Template) SetReconcileStatus(lifecycle Lifecycle)

func (*Template) SetupWebhookWithManager

func (r *Template) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Template) ValidateCreate

func (r *Template) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Template) ValidateDelete

func (r *Template) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Template) ValidateUpdate

func (r *Template) ValidateUpdate(old runtime.Object) error

ValidateUpdate 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 `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 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, a cluster will be "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 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

func (in *WaitSpec) DeepCopy() *WaitSpec

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

func (*WaitSpec) DeepCopyInto

func (in *WaitSpec) DeepCopyInto(out *WaitSpec)

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

type Workflow

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

	Spec   WorkflowSpec   `json:"spec,omitempty"`
	Status WorkflowStatus `json:"status,omitempty"`
}

Workflow is the Schema for the workflows API

func (*Workflow) DeepCopy

func (in *Workflow) DeepCopy() *Workflow

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

func (*Workflow) DeepCopyInto

func (in *Workflow) DeepCopyInto(out *Workflow)

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

func (*Workflow) DeepCopyObject

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

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

func (*Workflow) Default

func (r *Workflow) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Workflow) GetReconcileStatus

func (in *Workflow) GetReconcileStatus() Lifecycle

func (*Workflow) SetReconcileStatus

func (in *Workflow) SetReconcileStatus(lifecycle Lifecycle)

func (*Workflow) SetupWebhookWithManager

func (r *Workflow) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Workflow) ValidateCreate

func (r *Workflow) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Workflow) ValidateDelete

func (r *Workflow) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Workflow) ValidateUpdate

func (r *Workflow) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type WorkflowList

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

WorkflowList contains a list of Workflow

func (*WorkflowList) DeepCopy

func (in *WorkflowList) DeepCopy() *WorkflowList

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

func (*WorkflowList) DeepCopyInto

func (in *WorkflowList) DeepCopyInto(out *WorkflowList)

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

func (*WorkflowList) DeepCopyObject

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

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

type WorkflowSpec

type WorkflowSpec struct {
	WithTelemetry *TelemetrySpec `json:"withTelemetry,omitempty"`

	// Actions are the tasks that will be taken.
	Actions ActionList `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"`
}

WorkflowSpec defines the desired state of Workflow

func (*WorkflowSpec) DeepCopy

func (in *WorkflowSpec) DeepCopy() *WorkflowSpec

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

func (*WorkflowSpec) DeepCopyInto

func (in *WorkflowSpec) DeepCopyInto(out *WorkflowSpec)

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

type WorkflowStatus

type WorkflowStatus struct {
	Lifecycle `json:",inline"`

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

	// Executed is a list of executed actions.
	// +optional
	Executed map[string]metav1.Time `json:"scheduled,omitempty"`

	// ExpectedAlerts is a list of alerts should drive to SLA violations
	ExpectedAlerts map[string]bool `json:"expectedAlerts,omitempty"`
}

WorkflowStatus defines the observed state of Workflow

func (*WorkflowStatus) DeepCopy

func (in *WorkflowStatus) DeepCopy() *WorkflowStatus

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

func (*WorkflowStatus) DeepCopyInto

func (in *WorkflowStatus) DeepCopyInto(out *WorkflowStatus)

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