---
 htools/Ganeti/HTools/Loader.hs |    8 ++++++++
 htools/hail.hs                 |    1 +
 2 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/htools/Ganeti/HTools/Loader.hs b/htools/Ganeti/HTools/Loader.hs
index 186c133..b53d79c 100644
--- a/htools/Ganeti/HTools/Loader.hs
+++ b/htools/Ganeti/HTools/Loader.hs
@@ -34,6 +34,7 @@ module Ganeti.HTools.Loader
     , lookupInstance
     , lookupGroup
     , commonSuffix
+    , RelocMode(..)
     , RqType(..)
     , Request(..)
     , ClusterData(..)
@@ -59,6 +60,12 @@ exTagsPrefix = "htools:iextags:"
 
 -- * Types
 
+-- | The iallocator multi-evac group mode type.
+data RelocMode = KeepGroup
+               | ChangeGroup [Gdx]
+               | AnyGroup
+                 deriving (Show, Read)
+
 {-| The iallocator request type.
 
 This type denotes what request we got from Ganeti and also holds
@@ -70,6 +77,7 @@ data RqType
     | Relocate Idx Int [Ndx]         -- ^ Move an instance to a new
                                      -- secondary node
     | Evacuate [Ndx]                 -- ^ Evacuate nodes
+    | MultiReloc [Idx] RelocMode     -- ^ Multi-relocate mode
     deriving (Show, Read)
 
 -- | A complete request, as received from Ganeti.
diff --git a/htools/hail.hs b/htools/hail.hs
index 1831837..646cdcf 100644
--- a/htools/hail.hs
+++ b/htools/hail.hs
@@ -74,6 +74,7 @@ processRequest request =
        Relocate idx reqn exnodes -> Cluster.tryMGReloc gl nl il
                                     idx reqn exnodes
        Evacuate exnodes -> Cluster.tryMGEvac gl nl il exnodes
+       MultiReloc _ _ -> fail "multi-reloc not handled"
 
 -- | Reads the request from the data file(s)
 readRequest :: Options -> [String] -> IO Request
-- 
1.7.3.1

Reply via email to