Experiment v1beta2

API Reference for the Experiment kind.

Table of Contents

Constraint

Constraint represents a constraint to the domain of the parameters

Field Description Scheme Required
name The optional name of the constraint string false
order The ordering constraint to impose *OrderConstraint false
sum The sum constraint to impose *SumConstraint false

Back to TOC

Experiment

Experiment is the Schema for the experiments API

Field Description Scheme Required
metadata Standard object metadata ObjectMeta false
spec Specification of the desired behavior for an experiment ExperimentSpec false
status Current status of an experiment ExperimentStatus false

Back to TOC

ExperimentCondition

ExperimentCondition represents an observed condition of an experiment

Field Description Scheme Required
type The condition type ExperimentConditionType true
status The status of the condition, one of “True”, “False”, or “Unknown” corev1.ConditionStatus true
lastProbeTime The last known time the condition was checked metav1.Time true
lastTransitionTime The time at which the condition last changed status metav1.Time true
reason A reason code describing the why the condition occurred string false
message A human-readable message describing the transition string false

Back to TOC

ExperimentList

ExperimentList contains a list of Experiment

Field Description Scheme Required
metadata Standard list metadata ListMeta false
items The list of experiments []Experiment true

Back to TOC

ExperimentSpec

ExperimentSpec defines the desired state of Experiment

Field Description Scheme Required
replicas Replicas is the number of trials to execute concurrently; defaults to 1 *int32 false
optimization Optimization defines additional configuration for the optimization []Optimization false
parameters Parameters defines the search space for the experiment []Parameter true
constraints Constraints defines restrictions on the parameter domain for the experiment []Constraint false
metrics Metrics defines the outcomes for the experiment []Metric true
patches Patches is a sequence of templates written against the experiment parameters that will be used to put the cluster into the desired state []PatchTemplate false
namespaceSelector NamespaceSelector is used to locate existing namespaces for trials *LabelSelector false
namespaceTemplate NamespaceTemplate can be specified to create new namespaces for trials. If specified created namespaces must be matched by the namespace selector *NamespaceTemplateSpec false
selector Selector locates trial resources that are part of this experiment *LabelSelector false
trialTemplate TrialTemplate for creating a new trial. The resulting trial must be matched by Selector. The template can provide an initial namespace, however other namespaces (matched by NamespaceSelector) will be used if the effective replica count is more than 1 TrialTemplateSpec false

Back to TOC

ExperimentStatus

ExperimentStatus defines the observed state of Experiment

Field Description Scheme Required
phase Phase is a brief human-readable description of the experiment status string true
activeTrials ActiveTrials is the observed number of running trials int32 true
conditions Conditions is the current state of the experiment []ExperimentCondition false

Back to TOC

Metric

Metric represents an observable outcome from a trial run

Field Description Scheme Required
name The name of the metric string true
minimize Indicator that the goal of the experiment is to minimize the value of this metric bool false
min The inclusive minimum allowed value for the metric *resource.Quantity false
max The inclusive maximum allowed value for the metric *resource.Quantity false
optimize Indicator that this metric should be optimized (default: true) *bool false
type The metric collection type, one of: kubernetes|prometheus|datadog|jsonpath, default: kubernetes MetricType false
query Collection type specific query, e.g. Go template for “kubernetes”, PromQL for “prometheus” or a JSON pointer expression (with curly braces) for “jsonpath” string true
errorQuery Collection type specific query for the error associated with collected metric value string false
url URL to use when querying remote metric sources string false
target Target reference of the Kubernetes object to query for metric information *ResourceTarget false

Back to TOC

NamespaceTemplateSpec

NamespaceTemplateSpec is used as a template for creating new namespaces

Field Description Scheme Required
metadata Standard object metadata ObjectMeta false
spec Specification of the namespace corev1.NamespaceSpec false

Back to TOC

Optimization

Optimization is a configuration setting for the optimizer

Field Description Scheme Required
name Name is the name of the optimization configuration to set string true
value Value is string representation of the optimization configuration string true

Back to TOC

OrderConstraint

OrderConstraint defines a constraint between the ordering of two parameters in the experiment

Field Description Scheme Required
lowerParameter LowerParameter is the name of the parameter that must be the smaller of two parameters string true
upperParameter UpperParameter is the name of the parameter that must be the larger of two parameters string true

Back to TOC

Parameter

Parameter represents the domain of a single component of the experiment search space

Field Description Scheme Required
name The name of the parameter string true
baseline The baseline value for this parameter *intstr.IntOrString false
min The inclusive minimum value of the parameter int32 false
max The inclusive maximum value of the parameter int32 false
values The discrete allowed values of the parameter []string false

Back to TOC

PatchReadinessGate

PatchReadinessGate contains a reference to a condition

Field Description Scheme Required
conditionType ConditionType refers to a condition in the patched target’s condition list string true

Back to TOC

PatchTemplate

PatchTemplate defines a target resource and a patch template to apply

Field Description Scheme Required
type The patch type, one of: strategic|merge|json, default: strategic PatchType false
targetRef Direct reference to the object the patch should be applied to *ObjectReference false
patch A Go Template that evaluates to valid patch string true
readinessGates ReadinessGates will be evaluated for patch target readiness. A patch target is ready if all conditions specified in the readiness gates have a status equal to “True”. If no readiness gates are specified, some target types may have default gates assigned to them. Some condition checks may result in errors, e.g. a condition type of “Ready” is not allowed for a ConfigMap. Condition types starting with “stormforge.io/” may not appear in the patched target’s condition list but are still evaluated against the resource’s state. []PatchReadinessGate false

Back to TOC

ResourceTarget

ResourceTarget contains enough information to reference either a single target resource by name or a group of target resources by label.

Field Description Scheme Required
apiVersion API version of the referent string false
kind Kind of the referent string false
namespace Namespace of the referent string false
name Name of the referent, if blank then the selector is used to match a list of resources string false

Back to TOC

SumConstraint

SumConstraint defines a constraint between the sum of a collection of parameters

Field Description Scheme Required
bound Bound for the sum of the listed parameters resource.Quantity true
isUpperBound IsUpperBound determines if the bound values is an upper or lower bound on the sum bool false
parameters Parameters that should be summed []SumConstraintParameter true

Back to TOC

SumConstraintParameter

SumConstraintParameter is a weighted parameter specification in a sum constraint

Field Description Scheme Required
name Name of the parameter string true
weight Weight of the parameter resource.Quantity true

Back to TOC

TrialTemplateSpec

TrialTemplateSpec is used as a template for creating new trials

Field Description Scheme Required
metadata Standard object metadata ObjectMeta false
spec Specification of the desired behavior for the trial TrialSpec false

Back to TOC

Last modified January 12, 2023