Cluster-verify should report nodes in the same nodegroup with different values of the exclusive_storage flag.
Signed-off-by: Bernardo Dal Seno <[email protected]> --- qa/ganeti-qa.py | 2 ++ qa/qa_cluster.py | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/qa/ganeti-qa.py b/qa/ganeti-qa.py index 93ab049..ea70e0a 100755 --- a/qa/ganeti-qa.py +++ b/qa/ganeti-qa.py @@ -464,6 +464,8 @@ def RunExclusiveStorageTests(): node = qa_config.AcquireNode() try: + qa_cluster.TestExclStorSingleNode(node) + qa_cluster.TestSetExclStorCluster(True) if qa_config.TestEnabled("instance-add-plain-disk"): # Make sure that the cluster doesn't have any pre-existing problem diff --git a/qa/qa_cluster.py b/qa/qa_cluster.py index 30a2fd4..a91e51e 100644 --- a/qa/qa_cluster.py +++ b/qa/qa_cluster.py @@ -645,3 +645,21 @@ def TestSetExclStorCluster(newvalue): if effvalue != newvalue: raise qa_error.Error("exclusive_storage has the wrong value: %s instead" " of %s" % (effvalue, newvalue)) + + +def _BuildSetESCmd(value, node_name): + return ["gnt-node", "modify", "--node-parameters", + "exclusive_storage=%s" % value, node_name] + + +def TestExclStorSingleNode(node): + """cluster-verify reports exclusive_storage set only on one node. + + """ + node_name = node["primary"] + es_val = _GetBoolClusterField("exclusive_storage") + assert not es_val + AssertCommand(_BuildSetESCmd(True, node_name)) + AssertClusterVerify(fail=True, errors=[constants.CV_EGROUPMIXEDESFLAG]) + AssertCommand(_BuildSetESCmd("default", node_name)) + AssertClusterVerify() -- 1.8.1 -- You received this message because you are subscribed to the Google Groups "ganeti-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
