diff --git a/htools/Ganeti/HTools/Cluster.hs b/htools/Ganeti/HTools/Cluster.hs index 77bfeb3369cc39adc41a8fefae696e05ebfe767c..c725fdf2fe9ca4d42739819a8da9f47f6cb7d2b7 100644 --- a/htools/Ganeti/HTools/Cluster.hs +++ b/htools/Ganeti/HTools/Cluster.hs @@ -909,6 +909,15 @@ nodeEvacInstance _ _ mode (Instance.Instance failOnSecondaryChange mode dt >> fail "Block device relocations not implemented yet" +nodeEvacInstance nl il ChangePrimary + inst@(Instance.Instance {Instance.diskTemplate = DTDrbd8}) _ = + do + (nl', inst', _, _) <- opToResult $ applyMove nl inst Failover + let idx = Instance.idx inst + il' = Container.add idx inst' il + ops = iMoveToJob nl' il' idx Failover + return (nl', il', ops) + nodeEvacInstance _ _ _ (Instance.Instance {Instance.diskTemplate = DTDrbd8}) _ = fail "DRBD relocations not implemented yet"