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
|
<deployment version='1.0'>
<parallel>
<instance id="omega"> <!-- Eats extra system tests -->
<upgrade policy='conservative' revision-target='next' revision-change='when-failing' rollout='separate' />
<test />
<staging />
<!--block-change revision="false" days="sun,mon,tue,thu,fri,sat" hours="0-23" time-zone="UTC"/-->
</instance>
<steps>
<instance id="alpha"> <!-- Runs system and stress tests -->
<upgrade policy='conservative' revision-target='next' revision-change='when-failing' rollout='separate' />
<test />
<staging />
<!--block-change revision="false" days="sun,mon,tue,thu,fri,sat" hours="0-23" time-zone="UTC"/-->
<prod>
<region>us-west-1</region> <!-- Not really a production deployment, but used in stress tests -->
</prod>
</instance>
<instance id="beta">
<!-- Consider allowing risk based rollout with when-failing ... -->
<upgrade policy='conservative' revision-target='next' revision-change='when-clear' rollout='separate' min-risk='3' max-risk='12' max-idle-hours='8' />
<!--block-change revision="false" days="sun,mon,tue,thu,fri,sat" hours="0-23" time-zone="UTC"/-->
<prod>
<region>us-west-1</region>
<delay hours='1' />
<test>us-west-1</test>
</prod>
</instance>
<instance id="prod">
<upgrade policy='conservative' revision-target='next' revision-change='when-clear' rollout='separate' min-risk='6' max-risk='12' max-idle-hours='32' />
<!--block-change version="false" days="thu,fri,sat" hours="0-23" time-zone="UTC"/-->
<!--block-change revision="false" days="sun,mon,tue,wed,fri,sat" hours="0-23" time-zone="UTC"/-->
<prod>
<region>us-west-1</region>
</prod>
</instance>
</steps>
</parallel>
</deployment>
|