--- title: Field Reference linktitle: Field Reference description: This document describes the fields for building a Frisbee experiment. publishdate: 2022-06-28 lastmod: 2022-06-28 layout: single menu: main: parent: "section name" weight: 10 weight: 10 draft: false aliases: [/fields] toc: true ---

Packages:

frisbee.dev/v1alpha1

Package v1alpha1 contains API Schema definitions for the Frisbee v1alpha1 API group

Resource Types:

Action

(Appears on:ScenarioSpec)

Action is a step in a workflow that defines a particular part of a testing process.

Field Description
action
ActionType

ActionType refers to a category of actions that can be associated with a specific controller.

name
string

Name is a unique identifier of the action

depends
WaitSpec
(Optional)

DependsOn defines the conditions for the execution of this action

assert
ConditionalExpr
(Optional)

Assert defines the conditions that must be maintained after the action has been started. If the evaluation of the condition is false, the Scenario will abort immediately.

EmbedActions
EmbedActions

(Members of EmbedActions are embedded into this type.)

ActionType (string alias)

(Appears on:Action)

Value Description

"Call"

ActionCall starts a remote process execution, from the controller to the targeted services.

"Cascade"

ActionCascade injects multiple failures into the running system.

"Chaos"

ActionChaos injects failures into the running system.

"Cluster"

ActionCluster creates multiple services running in a shared context.

"Delete"

ActionDelete deletes a created Frisbee resource (i.e services, clusters,).

"Service"

ActionService creates a new service.

Call

Call is the Schema for the Call API.

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
CallSpec


callable
string

Callable is the name of the endpoint that will be called

services
[]string

Services is a list of services that will be stopped.

expect
[]MatchOutputs
(Optional)

Expect declares a list of expected outputs. The number of expected outputs must be the same as the number of defined services.

tolerate
TolerateSpec
(Optional)

Tolerate specifies the conditions under which the call will fail. If undefined, the call fails immediately when a call to service has failed.

until
ConditionalExpr
(Optional)

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.

schedule
SchedulerSpec
(Optional)

Schedule defines the interval between the invocations of the callable.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

status
CallStatus

CallSpec

(Appears on:Call, EmbedActions)

CallSpec defines the desired state of Call.

Field Description
callable
string

Callable is the name of the endpoint that will be called

services
[]string

Services is a list of services that will be stopped.

expect
[]MatchOutputs
(Optional)

Expect declares a list of expected outputs. The number of expected outputs must be the same as the number of defined services.

tolerate
TolerateSpec
(Optional)

Tolerate specifies the conditions under which the call will fail. If undefined, the call fails immediately when a call to service has failed.

until
ConditionalExpr
(Optional)

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.

schedule
SchedulerSpec
(Optional)

Schedule defines the interval between the invocations of the callable.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

CallStatus

(Appears on:Call)

CallStatus defines the observed state of Call.

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

queuedJobs
[]Callable
(Optional)

QueuedJobs is a list of services scheduled for stopping.

scheduledJobs
int

ScheduledJobs points to the next QueuedJobs.

lastScheduleTime
Kubernetes meta/v1.Time

LastScheduleTime provide information about the last time a Service was successfully scheduled.

Callable

(Appears on:CallStatus, ServiceSpec)

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.

Field Description
container
string

Container specific the name of the container to which we will run the command

command
[]string

Container specifies a command and arguments to stop the targeted container in an application-specific manner.

Cascade

Cascade is the Schema for the clusters API.

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
CascadeSpec


GenerateFromTemplate
GenerateFromTemplate

(Members of GenerateFromTemplate are embedded into this type.)

schedule
SchedulerSpec
(Optional)

Schedule defines the interval between the creation of services within the group.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

status
CascadeStatus

CascadeSpec

(Appears on:Cascade, EmbedActions)

CascadeSpec defines the desired state of Cascade.

Field Description
GenerateFromTemplate
GenerateFromTemplate

(Members of GenerateFromTemplate are embedded into this type.)

schedule
SchedulerSpec
(Optional)

Schedule defines the interval between the creation of services within the group.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

CascadeStatus

(Appears on:Cascade)

CascadeStatus defines the observed state of Cascade.

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

queuedJobs
[]ChaosSpec
(Optional)

QueuedJobs is a list of Chaos jobs scheduled for creation by the cascade.

scheduledJobs
int

ScheduledJobs points to the next QueuedJobs.

lastScheduleTime
Kubernetes meta/v1.Time

LastScheduleTime provide information about the last time a Chaos job was successfully scheduled.

Chaos

Chaos is the Schema for the chaos API.

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ChaosSpec


raw
string
status
ChaosStatus

ChaosSpec

(Appears on:CascadeStatus, Chaos, EmbedSpecs)

ChaosSpec defines the desired state of Chaos.

Field Description
raw
string

ChaosStatus

(Appears on:Chaos)

ChaosStatus defines the observed state of Chaos.

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

lastScheduleTime
Kubernetes meta/v1.Time

LastScheduleTime provide information about the last time a Pod was scheduled.

Cluster

Cluster is the Schema for the clusters API.

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ClusterSpec


GenerateFromTemplate
GenerateFromTemplate

(Members of GenerateFromTemplate are embedded into this type.)

testData
TestdataVolume

TestData defines a volume that will be mounted across the Scenario’s Services.

tolerate
TolerateSpec
(Optional)

Tolerate specifies the conditions under which the cluster will fail. If undefined, the cluster fails immediately when a service has failed.

schedule
SchedulerSpec
(Optional)

Schedule defines the interval between the creation of services in the group.

placement
PlacementSpec
(Optional)

Placement defines rules for placing the containers across the available nodes.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

status
ClusterStatus

ClusterSpec

(Appears on:Cluster, EmbedActions)

ClusterSpec defines the desired state of Cluster.

Field Description
GenerateFromTemplate
GenerateFromTemplate

(Members of GenerateFromTemplate are embedded into this type.)

testData
TestdataVolume

TestData defines a volume that will be mounted across the Scenario’s Services.

tolerate
TolerateSpec
(Optional)

Tolerate specifies the conditions under which the cluster will fail. If undefined, the cluster fails immediately when a service has failed.

schedule
SchedulerSpec
(Optional)

Schedule defines the interval between the creation of services in the group.

placement
PlacementSpec
(Optional)

Placement defines rules for placing the containers across the available nodes.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

ClusterStatus

(Appears on:Cluster)

ClusterStatus defines the observed state of Cluster.

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

queuedJobs
[]ServiceSpec
(Optional)

QueuedJobs is a list of services scheduled for creation by the cluster.

scheduledJobs
int

ScheduledJobs points to the next QueuedJobs.

lastScheduleTime
Kubernetes meta/v1.Time

LastScheduleTime provide information about the last time a Service was successfully scheduled.

Component (string alias)

Value Description

"SUT"

ComponentSUT is a component that belongs to the system under testing.

"SYS"

ComponentSys is a Frisbee component that is necessary for the execution of a test (e.g, Chaos, Grafana, …)

ConditionType (string alias)

ConditionType is a valid value for WorkflowCondition.Type

Value Description

"AllJobsAreCompleted"

ConditionAllJobsAreCompleted indicates that all jobs have been successfully completed. Jobs may refer to actions of a scenario, services of a cluster, chaos events of a cascade, etc.

"AllJobsAreScheduled"

ConditionAllJobsAreScheduled indicates that all jobs have been successfully scheduled. Jobs may refer to actions of a scenario, services of a cluster, chaos events of a cascade, etc.

"AssertError"

ConditionAssertionError indicate that an assertion condition is false.

"Initialized"

ConditionCRInitialized indicates whether the workflow has been initialized

"InvalidStateTransition"

ConditionInvalidStateTransition indicates the transition of a resource into another state.

"UnexpectedTermination"

ConditionJobUnexpectedTermination is used for a job that has been unexpectedly terminated. The termination refers to both Success and Fail.

"PerformanceAlert"

ConditionPerformanceAlert indicates an alert received by Grafana concerning the real-time performance of the system.

ConditionalExpr

(Appears on:Action, CallSpec, GenerateFromTemplate, SchedulerSpec)

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

Field Description
metrics
ExprMetrics
(Optional)

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)

state
ExprState
(Optional)

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.

Decorators

(Appears on:ServiceSpec)

Decorators takes-in a PodSpec, add some functionality and returns it.

Field Description
labels
map[string]string
(Optional)
annotations
map[string]string
(Optional)
setFields
[]SetField
(Optional)

SetFields is used to populate fields. Used for dynamic assignment based templated inputs.

resources
Resources
(Optional)

Resources specifies limitations as to how the container will access host resources.

telemetry
[]string
(Optional)

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.

DefaultClassifier

DeleteSpec

(Appears on:EmbedActions)

Field Description
jobs
[]string

Jobs is a list of jobs to be deleted. The format is {“kind”:“name”}, e.g, {“service”,“client”}

Disk

(Appears on:Resources)

Disk specifies the capabilities of the emulated storage device.

Field Description
readbps
string

ReadBPS limits read rate (bytes per second)

readiops
string

ReadIOPS limits read rate (IO per second)

writebps
string

WriteBPS limits write rate (bytes per second)

writeiops
string

WriteIOPS limits write rate (IO per second)

EmbedActions

(Appears on:Action)

Field Description
service
GenerateFromTemplate
(Optional)
cluster
ClusterSpec
(Optional)
chaos
GenerateFromTemplate
(Optional)
cascade
CascadeSpec
(Optional)
delete
DeleteSpec
(Optional)
call
CallSpec
(Optional)

EmbedSpecs

(Appears on:TemplateSpec)

Field Description
service
ServiceSpec
(Optional)
chaos
ChaosSpec
(Optional)

EphemeralVolumeSpec

(Appears on:Requirements)

EphemeralVolumeSpec defines an ephemeral volume that has the lifetime of a pod, It’s use for application that need additional storage but don’t care whether that data is stored persistently across restarts.

Field Description
name
string
spec
Kubernetes core/v1.PersistentVolumeClaimSpec


accessModes
[]Kubernetes core/v1.PersistentVolumeAccessMode
(Optional)

accessModes contains the desired access modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1

selector
Kubernetes meta/v1.LabelSelector
(Optional)

selector is a label query over volumes to consider for binding.

resources
Kubernetes core/v1.ResourceRequirements
(Optional)

resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources

volumeName
string
(Optional)

volumeName is the binding reference to the PersistentVolume backing this claim.

storageClassName
string
(Optional)

storageClassName is the name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1

volumeMode
Kubernetes core/v1.PersistentVolumeMode
(Optional)

volumeMode defines what type of volume is required by the claim. Value of Filesystem is implied when not included in claim spec.

dataSource
Kubernetes core/v1.TypedLocalObjectReference
(Optional)

dataSource field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. If the AnyVolumeDataSource feature gate is enabled, this field will always have the same contents as the DataSourceRef field.

dataSourceRef
Kubernetes core/v1.TypedLocalObjectReference
(Optional)

dataSourceRef specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any local object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the DataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, both fields (DataSource and DataSourceRef) will be set to the same value automatically if one of them is empty and the other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, DataSourceRef allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values (dropping them), DataSourceRef preserves all values, and generates an error if a disallowed value is specified. (Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.

ExprMetrics (string alias)

(Appears on:ConditionalExpr)

ExprState (string alias)

(Appears on:ConditionalExpr)

GenerateFromTemplate

(Appears on:CascadeSpec, ClusterSpec, EmbedActions)

GenerateFromTemplate generates a spec by parameterizing the templateRef with the given inputs.

Field Description
templateRef
string

TemplateRef refers to a template (e.g, iperf-server).

until
ConditionalExpr
(Optional)

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.

instances
int
(Optional)

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. Event used in conjunction with Until, MaxInstances as a max bound.

inputs
[]map[string]string
(Optional)

Inputs are list of inputs passed to the objects. Event used in conjunction with instances, if the number of instances is larger that the number of inputs, then inputs are recursively iteration.

Inputs

(Appears on:Scheme, TemplateSpec)

Field Description
parameters
map[string]string

Parameters are user-set values that are dynamically evaluated

Lifecycle

(Appears on:CallStatus, CascadeStatus, ChaosStatus, ClusterStatus, ScenarioStatus, ServiceStatus, TemplateStatus, VirtualObjectStatus)

Field Description
phase
Phase

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.

reason
string
(Optional)

Reason is A brief CamelCase message indicating details about why the service is in this Phase. e.g. ‘Evicted’

message
string

Message provides more details for understanding the Reason.

conditions
[]Kubernetes meta/v1.Condition
(Optional)

Conditions describe sequences of events that warrant the present Phase.

MatchBy

(Appears on:ServiceSelector)

MatchBy defines the selectors for services. If the all selectors are empty, all services will be selected.

Field Description
byName
map[string][]string
(Optional)

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.

byCluster
map[string]string
(Optional)

ByCluster defines the service group where services belong.

MatchOutputs

(Appears on:CallSpec)

MatchOutputs defined a set of remote command outputs that must be matched. The limit for both Stdout and Stderr is 1024 characters.

Field Description
stdout
string
(Optional)

Stdout is a regex that describes the expected output from stdout. It cannot be longer than 1024 characters.

stderr
string
(Optional)

Stderr is a regex that describes the expected output from stderr. It cannot be longer than 1024 characters.

Mode (string alias)

(Appears on:ServiceSelector)

Mode represents the filter for selecting on of many.

Value Description

"all"

AllMode represents that the system will select all objects regardless of status (not ready or not running pods includes). Use this label carefully.

"fixed"

FixedMode represents that the system will select a specific number of running objects.

"fixed-percent"

FixedPercentMode to specify a fixed % of a cluster

"one"

OneMode represents that the system will select one object randomly.

"random-max-percent"

RandomMaxPercentMode to specify a maximum % of a cluster

NIC

(Appears on:Resources)

NIC specifies the capabilities of the emulated network interface.

Field Description
rate
string
latency
string

Phase (string alias)

(Appears on:Lifecycle)

Phase is a simple, high-level summary of where the Object is in its lifecycle.

Value Description

"Failed"

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).

"Pending"

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.

"Running"

PhaseRunning means that all the child jobs of a CR have been created, and at least one job is still running.

"Success"

PhaseSuccess means that all jobs in a CR have voluntarily exited, and the system is not going to restart any of these Jobs.

""

PhaseUninitialized means that request is not yet accepted by the controller.

PlacementSpec

(Appears on:ClusterSpec)

PlacementSpec defines rules for placing the containers across the available nodes.

Field Description
collocate
bool
(Optional)

Collocate will place all the Services of this Cluster within the same node.

conflictsWith
[]string

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.

nodes
[]string
(Optional)

Nodes will place all the Services of this Cluster within the specific set of nodes.

ReconcileStatusAware

Requirements

(Appears on:ServiceSpec)

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.

Field Description
persistentVolumeClaim
EphemeralVolumeSpec
(Optional)

EphemeralVolume creates an ephemeral volume type.

ingressBackend
Kubernetes networking/v1.IngressBackend
(Optional)

Ingress makes An API object that manages external access to the services in a cluster, typically HTTP.

Resources

(Appears on:Decorators)

Resources specifies limitations as to how the container will access host resources.

Field Description
memory
string
(Optional)
cpu
string
(Optional)
nic
NIC
(Optional)
disk
Disk
(Optional)

Scenario

Scenario is the Schema for the Scenarios API.

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ScenarioSpec


testData
TestdataVolume

TestData defines a volume that will be mounted across the Scenario’s Services.

actions
[]Action

Actions are the tasks that will be taken.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

status
ScenarioStatus

ScenarioSpec

(Appears on:Scenario)

ScenarioSpec defines the desired state of Scenario.

Field Description
testData
TestdataVolume

TestData defines a volume that will be mounted across the Scenario’s Services.

actions
[]Action

Actions are the tasks that will be taken.

suspend
bool
(Optional)

Suspend flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.

ScenarioStatus

(Appears on:Scenario)

ScenarioStatus defines the observed state of Scenario.

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

scheduledJobs
[]string
(Optional)

ScheduledJobs is a list of references to the names of executed actions.

grafanaEndpoint
string

GrafanaEndpoint points to the local Grafana instance

prometheusEndpoint
string

PrometheusEndpoint points to the local Prometheus instance

dataviewerEndpoint
string

Dataviewer points to the local Dataviewer instance

SchedulerSpec

(Appears on:CallSpec, CascadeSpec, ClusterSpec)

SchedulerSpec defines information about schedule of the chaos experiment. The scheduler will schedule up to spec.GenerateFromTemplate.Instances or spec.GenerateFromTemplate.Until.

Field Description
cron
string
(Optional)

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

startingDeadlineSeconds
int64
(Optional)

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

event
ConditionalExpr
(Optional)

Event schedules a new every when an event has happened.

Scheme

Field Description
scenario
string

Scenario returns the name of the scenario that invokes the template.

namespace
string

Returns the namespace where the scenario is running

spec
[]byte

Spec is the body whose Inputs.Parameters will be expanded.



inputs
Inputs
(Optional)

Inputs are dynamic fields that populate the spec.

Service

Service is the Schema for the services API.

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
ServiceSpec


decorators
Decorators
(Optional)
requirements
Requirements
(Optional)
callables
map[string]./api/v1alpha1.Callable
(Optional)
PodSpec
Kubernetes core/v1.PodSpec

(Members of PodSpec are embedded into this type.)

(Optional)
status
ServiceStatus

ServiceSelector

Field Description
match
MatchBy
(Optional)

Match contains the rules to select target

mode
Mode
(Optional)

Mode defines which of the selected services to use. If undefined, all() is used Supported mode: one / all / fixed / fixed-percent / random-max-percent

value
string
(Optional)

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

macro
string
(Optional)

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.

ServiceSpec

(Appears on:ClusterStatus, EmbedSpecs, Service)

ServiceSpec defines the desired state of Service.

Field Description
decorators
Decorators
(Optional)
requirements
Requirements
(Optional)
callables
map[string]./api/v1alpha1.Callable
(Optional)
PodSpec
Kubernetes core/v1.PodSpec

(Members of PodSpec are embedded into this type.)

(Optional)

ServiceStatus

(Appears on:Service)

ServiceStatus defines the observed state of Service.

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

lastScheduleTime
Kubernetes meta/v1.Time

LastScheduleTime provide information about the last time a Pod was scheduled.

SetField

(Appears on:Decorators)

Field Description
field
string

Field is the path to the field whose value will be replaced. Examples: Containers.0.Ports.0

value
string

StateAggregationFunctions

StateAggregationFunctions is a set of aggregation functions for managing the lifecycle of different resources.

Template

Template is the Schema for the templates API

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
TemplateSpec


inputs
Inputs
(Optional)

Inputs are dynamic fields that populate the spec.

EmbedSpecs
EmbedSpecs

(Members of EmbedSpecs are embedded into this type.)

EmbedSpecs point to the Frisbee specs that can be templated.

status
TemplateStatus

TemplateSpec

(Appears on:Template)

TemplateSpec defines the desired state of Template

Field Description
inputs
Inputs
(Optional)

Inputs are dynamic fields that populate the spec.

EmbedSpecs
EmbedSpecs

(Members of EmbedSpecs are embedded into this type.)

EmbedSpecs point to the Frisbee specs that can be templated.

TemplateStatus

(Appears on:Template)

TemplateStatus defines the observed state of Template

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

TestdataVolume

(Appears on:ClusterSpec, ScenarioSpec)

Field Description
volume
Kubernetes core/v1.PersistentVolumeClaimVolumeSource
globalNamespace
bool
(Optional)

GlobalNamespace if disabled, all containers see the name root directory. If enabled, each container sees its own namespace.

TolerateSpec

(Appears on:CallSpec, ClusterSpec)

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.

Field Description
failedJobs
int
(Optional)

FailedJobs indicate the number of services that may fail before the cluster fails itself.

VirtualObject

VirtualObject is a CRD without a dedicated controller. Practically, it is just an entry in the Kubernetes API that is used as placeholder for action like Delete and Call.

Field Description
metadata
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
VirtualObjectSpec


status
VirtualObjectStatus

VirtualObjectSpec

(Appears on:VirtualObject)

VirtualObjectStatus

(Appears on:VirtualObject)

Field Description
Lifecycle
Lifecycle

(Members of Lifecycle are embedded into this type.)

data
map[string]string
(Optional)

Data contains the configuration data. Each key must consist of alphanumeric characters, ‘-’, ‘_’ or ‘.’. Values with non-UTF-8 byte sequences must use the BinaryData field. The keys stored in Data must not overlap with the keys in the BinaryData field, this is enforced during validation process.

WaitSpec

(Appears on:Action)

Field Description
running
[]string
(Optional)

Running waits for the given groups to be running

success
[]string
(Optional)

Success waits for the given groups to be succeeded

after
Kubernetes meta/v1.Duration
(Optional)

After is the time offset since the beginning of this action.


Generated with gen-crd-api-reference-docs on git commit f273dcd.