---
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