1 # Copyright (C) The Arvados Authors. All rights reserved.
3 # SPDX-License-Identifier: AGPL-3.0
5 # cpan -I -T install Graph::Easy
6 # (eval `perl -I ~/perl5/lib/perl5 -Mlocal::lib`; cpan -T install Graph::Easy)
7 # graph-easy --as=svg < readme_states.txt
9 [Nonexistent] - appears in cloud list -> [Unknown]
10 [Nonexistent] - create() returns ID -> [Booting]
11 [Unknown] - create() returns ID -> [Booting]
12 [Unknown] - boot timeout -> [Shutdown]
13 [Booting] - boot+run probes succeed -> [Idle]
14 [Idle] - idle timeout -> [Shutdown]
15 [Idle] - probe timeout -> [Shutdown]
16 [Idle] - want=drain -> [Shutdown]
17 [Idle] - container starts -> [Running]
18 [Running] - container ends -> [Idle]
19 [Running] - container ends, want=drain -> [Shutdown]
20 [Shutdown] - instance disappears from cloud -> [Gone]
22 # Layouter fails if we add these
23 #[Hold] - want=run -> [Booting]
24 #[Hold] - want=drain -> [Shutdown]
25 #[Running] - container ends, want=hold -> [Hold]
26 #[Unknown] - want=hold -> [Hold]
27 #[Booting] - want=hold -> [Hold]
28 #[Idle] - want=hold -> [Hold]
31 #[Booting] - boot probe succeeds, run probe fails -> [Booting]