Unit states
The unit status is the way to know what is happening with a unit. You can use thetsuru app-info -a <appname> to see the unit status:
- $ tsuru app-info -a tsuru-dashboard
- Application: tsuru-dashboard
- Repository: git@localhost:tsuru-dashboard.git
- Platform: python
- ...
- Units: 1
- +------------+---------+
- | Unit | State |
- +------------+---------+
- | 9cf863c2c1 | started |
- +------------+---------+
The unit state flow is:
- +----------+ start +---------+
- | building | +---------------------+| stopped |
- +----------+ | +---------+
- ^ | ^
- | | |
- deploy unit | stop
- | | |
- + v RegisterUnit +
- +---------+ app unit +----------+ SetUnitStatus +---------+
- | created | +---------> | starting | +-------------> | started |
- +---------+ +----------+ +---------+
- + ^ +
- | | |
- SetUnitStatus | |
- | | |
- v | |
- +-------+ SetUnitStatus | |
- | error | +-------------------+ |
- +-------+ <---------------------+
- created: is the initial status of an unit.
- building: is the status for units being provisioned by the provisioner, like during deployment.
- error: is the status for units that failed to start, because of an application error.
- starting: is set when the container is started in docker.
- started: is for cases where the unit is up and running.
- stopped: is for cases where the unit has been stopped.