forked from mint-metrics/mojito-js-delivery
-
Notifications
You must be signed in to change notification settings - Fork 0
/
config-template.yml
136 lines (124 loc) · 3.33 KB
/
config-template.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
--- # Experiment configuration
### Experiment status ###
# Key:
# state
# Acceptable values:
# "live"
# "staging"
# Description:
# Controls status of experiment.
# "live" - experiment is LIVE
# "staging" - experiment is OFF and in staging/preview mode
# "inactive" - experiment is ignored by the gulp/YAML build process
###
state: "staging"
### Experiment traffic allocation ###
# Key:
# sampleRate
# Acceptable values:
# float between 0 and 1 (representing 0 - 100%)
# Description:
# Controls portion of overall traffic to be allocated to the experiment. e.g.
# 0 - experiment allocated to 0% of traffic, i.e. soft OFF
# 1 - experiment allocated to 100% of traffic
# 0.9 - experiment allocated to 90% of traffic, i.e. 10% holdback group
###
sampleRate: 0
### Experiment id & name ###
# Key:
# id
# Acceptable values:
# any string
# Description:
# Experiment Id, used by Mojito for reporting and forcing variants in preview mode
###
# Key:
# name
# Acceptable values:
# any string
# Description:
# Descriptive experiment name
###
id: "wX"
name: "WX My Cool Experiment"
#############################################################################
### DO NOT EDIT VALUES PAST THIS POINT UNLESS YOU KNOW WHAT YOU ARE DOING ###
#############################################################################
### Experiement variants ###
# Key:
# recipes
# Acceptable values / nested structure:
# "{recipeId}":
# name: "{recipeName}"
# js: "{recipe.js}" (optional)
# css: "{receipe.css}" (optional)
# sampleRate: {float between 0 and 1} (optional)
# Description:
# Lists out all experiment variants by their id and name.
# Optional values to define per variant: JS and CSS filenames, sampleRate.
###
recipes:
"0":
name: "Control"
"1":
name: "Treatment"
js: "1.js"
css: "1.css"
### Experiment trigger ###
# Key:
# trigger
# Acceptable values / nested structure:
# "{trigger.js}"
# Description:
# Points to the JS file containing trigger function to activate the experiment.
###
trigger: "trigger.js"
#################
# OPTIONAL KEYS #
#################
### Experiment shared JS and CSS ###
# Key:
# js
# Acceptable values:
# "{shared.js}"
# Description:
# Points to the JS file containing trigger function to activate the experiment.
# Can be accessed with test.options.js.{function}
###
# Key:
# css
# Acceptable values:
# "{shared.css}"
# Description:
# Points to the CSS file containing trigger function to activate the experiment.
# CSS is injected where ever experiment is activated.
###
#js: "shared.js"
#css: "shared.css"
### Experiment divert ###
# Key:
# divertTo
# Acceptable values:
# "{recipeId}"
# Description:
# Allows diverting 100% of traffic to the specified recipeId.
###
#divertTo: null
### Experiment status ###
# Key:
# manualExposure
# Acceptable values:
# true
# false
# Description:
# Controls automatic exposure tracking for an experiment.
# true - (Default) Automatically track exposures
# false - Switch off automatic exposure tracking
###
#manualExposure: false
### Experiment custom key:value pairs ###
# Description:
# Add any additional key:value pairs here
# Can be accessed with test.options.{key}
###
#foo: "bar"