diff --git a/htools/Ganeti/HTools/Instance.hs b/htools/Ganeti/HTools/Instance.hs index 873275595cdafaa6ad4c31d7867557c3b3527ff7..4f8d5f56a4da428dd9f8fcb8abf623624e22e380 100644 --- a/htools/Ganeti/HTools/Instance.hs +++ b/htools/Ganeti/HTools/Instance.hs @@ -42,6 +42,7 @@ module Ganeti.HTools.Instance , shrinkByType , runningStates , requiredNodes + , allNodes ) where import qualified Ganeti.HTools.Types as T @@ -189,3 +190,9 @@ specOf Instance { mem = m, dsk = d, vcpus = c } = requiredNodes :: T.DiskTemplate -> Int requiredNodes T.DTDrbd8 = 2 requiredNodes _ = 1 + +-- | Computes all nodes of an instance. +allNodes :: Instance -> [T.Ndx] +allNodes inst = case diskTemplate inst of + T.DTDrbd8 -> [pNode inst, sNode inst] + _ -> [pNode inst]