diff --git a/htools/Ganeti/HTools/Luxi.hs b/htools/Ganeti/HTools/Luxi.hs index 1f29baad98de52538aee235f70bf0cb619db39f4..d918ecfebe830abc331741f82808166c5cb087eb 100644 --- a/htools/Ganeti/HTools/Luxi.hs +++ b/htools/Ganeti/HTools/Luxi.hs @@ -75,7 +75,8 @@ queryNodesMsg = queryInstancesMsg :: L.LuxiOp queryInstancesMsg = L.QueryInstances [] ["name", "disk_usage", "be/memory", "be/vcpus", - "status", "pnode", "snodes", "tags", "oper_ram"] False + "status", "pnode", "snodes", "tags", "oper_ram", + "be/auto_balance"] False -- | The input data for cluster query. queryClusterInfoMsg :: L.LuxiOp @@ -112,7 +113,8 @@ parseInstance :: NameAssoc -> JSValue -> Result (String, Instance.Instance) parseInstance ktn (JSArray [ name, disk, mem, vcpus - , status, pnode, snodes, tags, oram ]) = do + , status, pnode, snodes, tags, oram + , auto_balance ]) = do xname <- annotateResult "Parsing new instance" (fromJVal name) let convert a = genericConvert "Instance" xname a xdisk <- convert "disk_usage" disk @@ -126,8 +128,9 @@ parseInstance ktn (JSArray [ name, disk, mem, vcpus else lookupNode ktn xname (fromJSString $ head xsnodes)) xrunning <- convert "status" status xtags <- convert "tags" tags + xauto_balance <- convert "auto_balance" auto_balance let inst = Instance.create xname xmem xdisk xvcpus - xrunning xtags True xpnode snode + xrunning xtags xauto_balance xpnode snode return (xname, inst) parseInstance _ v = fail ("Invalid instance query result: " ++ show v)