The Helmex schema for the Helm values.yaml file is described below. It is intended for applications that are templated using Helm and use Iter8 experiments during releases. In addition to the below requirements, an application may impose additional application-specific schema requirements on values.yaml.
Information about the candidate version. Iter8 experiment resource will be created only if this field is present. If this field is modified, any existing experiment for the application will be replaced by a new experiment.
The following Helm values file is an instance of the Helmex schema.
# values meant for both baseline and candidate versions of the application;common:application:hellorepo:"gcr.io/google-samples/hello-app"serviceType:ClusterIPservicePortInfo:port:8080regularLabels:app.kubernetes.io/managed-by:Iter8selectorLabels:app.kubernetes.io/name:hello# values meant for baseline version of the application only;# baseline version is required by Helmex schemabaseline:name:helloselectorLabels:app.kubernetes.io/track:baseline# required field for baseline versiondynamic:# unique alpha-numeric version ID is strongly recommendedid:"mn82l82"tag:"1.0"# values meant for candidate version of the application only;# optional section; Iter8 experiment will be deployed if this section is presentcandidate:name:hello-candidateselectorLabels:app.kubernetes.io/track:candidate# required field for candidate version# if candidate is promoted, the dynamic field from candidate will be copied over to baseline, and candidate will be set to nulldynamic:# unique alpha-numeric version ID is strongly recommendedid:"8s72oa"tag:"2.0"# this section is used in the creation of the Iter8 experiment# the specific experiment section below is used in the context of an SLO validation experimentexperiment:# The SLO validation experiment will collect Iter8's built-in latency and error metrics.# There will be 8.0 * 5 = 40 queries sent during metrics collection.# time is the duration over which queries are sent during metrics collection.time:5s# QPS is number of queries per second sent during metrics collection.QPS:8.0# (msec) acceptable limit for mean latency of the applicationlimitMeanLatency:500.0# (msec) acceptable error rate for the application (1%)limitErrorRate:0.01# (msec) acceptable limit for 95th percentile latency of the applicationlimit95thPercentileLatency:1000.0