Revision afa0fca4 src/Ganeti/Query/Instance.hs
b/src/Ganeti/Query/Instance.hs | ||
---|---|---|
628 | 628 |
case instanceState of |
629 | 629 |
InstanceStateRunning | adminState == AdminUp -> Running |
630 | 630 |
| otherwise -> ErrorUp |
631 |
InstanceStateShutdown | adminState == AdminUp -> UserDown |
|
631 |
InstanceStateShutdown | adminState == AdminUp && allowDown -> UserDown
|
|
632 | 632 |
| otherwise -> StatusDown |
633 | 633 |
where adminState = instAdminState inst |
634 | 634 |
instanceState = instInfoState instInfo |
635 | 635 |
|
636 |
hvparams = fromContainer $ instHvparams inst |
|
637 |
|
|
638 |
allowDown = |
|
639 |
instHypervisor inst /= Kvm || |
|
640 |
(Map.member C.hvKvmUserShutdown hvparams && |
|
641 |
hvparams Map.! C.hvKvmUserShutdown == J.JSBool True) |
|
642 |
|
|
636 | 643 |
-- | Determines the status of a dead instance. |
637 | 644 |
deadInstanceStatus :: Instance -> InstanceStatus |
638 | 645 |
deadInstanceStatus inst = |
Also available in: Unified diff