Repository navigation
Expand file tree
/
Copy pathdeployment-release.lifecycle.json
More file actions
72 lines (72 loc) · 4.06 KB
/
Copy pathdeployment-release.lifecycle.json
File metadata and controls
72 lines (72 loc) · 4.06 KB
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
{
"schema_version": 3,
"diagram_type": "lifecycle",
"meta": {
"title": "Deployment Release Lifecycle",
"output": "examples/deployment-release.html",
"animation": "trace",
"visual_preset": "signal-flow",
"quality_profile": "showcase"
},
"mainPath": ["queued", "building", "verifying", "ready", "live"],
"states": [
{ "id": "queued", "type": "start", "label": "Queued", "sublabel": "change accepted", "tag": "pending", "step": "01" },
{ "id": "building", "type": "active", "label": "Building", "sublabel": "immutable image", "tag": "running", "step": "02" },
{ "id": "verifying", "type": "decision", "label": "Verifying", "sublabel": "tests + policy", "tag": "gate", "step": "03" },
{ "id": "ready", "type": "waiting", "label": "Ready", "sublabel": "promotion pending", "tag": "approved", "step": "04" },
{ "id": "live", "type": "success", "label": "Live", "sublabel": "production healthy", "tag": "success", "step": "05" },
{ "id": "approval", "type": "waiting", "label": "Needs Approval", "sublabel": "release owner", "tag": "pause" },
{ "id": "cancelled", "type": "failure", "label": "Cancelled", "sublabel": "approval denied", "tag": "terminal" },
{ "id": "paused", "type": "waiting", "label": "Health Paused", "sublabel": "SLO regression", "tag": "observe" },
{ "id": "rollback", "type": "active", "label": "Rolling Back", "sublabel": "last good image", "tag": "automatic" },
{ "id": "rolled_back", "type": "success", "label": "Rolled Back", "sublabel": "service restored", "tag": "terminal" },
{ "id": "failed", "type": "failure", "label": "Failed", "sublabel": "rollback failed", "tag": "terminal" },
{ "id": "aborted", "type": "neutral", "label": "Aborted", "sublabel": "change withdrawn", "tag": "terminal" }
],
"transitions": [
{ "id": "queued-building", "from": "queued", "to": "building", "label": "pick up" },
{ "id": "building-verifying", "from": "building", "to": "verifying", "label": "image built" },
{ "id": "verifying-ready", "from": "verifying", "to": "ready", "label": "checks pass" },
{ "id": "ready-live", "from": "ready", "to": "live", "label": "promote" },
{ "id": "verifying-building", "from": "verifying", "to": "building", "label": "tests fail" },
{ "id": "verifying-approval", "from": "verifying", "to": "approval", "label": "needs sign-off", "variant": "security" },
{ "id": "approval-ready", "from": "approval", "to": "ready", "label": "approved" },
{ "id": "approval-cancelled", "from": "approval", "to": "cancelled", "label": "denied", "variant": "security" },
{ "id": "live-paused", "from": "live", "to": "paused", "label": "SLO alert", "variant": "dashed" },
{ "id": "paused-live", "from": "paused", "to": "live", "label": "recovered" },
{ "id": "paused-rollback", "from": "paused", "to": "rollback", "label": "breach persists", "variant": "security" },
{ "id": "rollback-rolled-back", "from": "rollback", "to": "rolled_back", "label": "restored", "variant": "emphasis" },
{ "id": "rollback-failed", "from": "rollback", "to": "failed", "label": "rollback error", "variant": "security" },
{ "id": "building-aborted", "from": "building", "to": "aborted", "label": "abort" },
{ "id": "verifying-aborted", "from": "verifying", "to": "aborted", "label": "abort" }
],
"cards": [
{
"dot": "cyan",
"title": "Promotion Path",
"items": [
"The release object moves through five ordered phases",
"Verification and approval remain distinct states",
"Live means production health is currently proven"
]
},
{
"dot": "amber",
"title": "Wait States",
"items": [
"Human approval can pause without consuming a worker",
"A health regression pauses further rollout",
"Every wait exposes the event required to continue"
]
},
{
"dot": "rose",
"title": "Explicit Endings",
"items": [
"Denied approval ends as Cancelled",
"Rollback controller failure ends as Failed",
"Successful rollback is a terminal restored outcome"
]
}
]
}