diff --git a/qa/qa_cluster.py b/qa/qa_cluster.py index ac576d5f256e4d23f36483e827b1ad478ec5133f..8f3f49af85b9b9b471c3e3f802a886e2b5014d52 100644 --- a/qa/qa_cluster.py +++ b/qa/qa_cluster.py @@ -60,6 +60,11 @@ def _CheckFileOnAllNodes(filename, content): def TestClusterInit(rapi_user, rapi_secret): """gnt-cluster init""" + # data for testing failures due to bad keys/values for disk parameters + fail_params = ("-D nonexistent:resync-rate=1", + "-D drbd:nonexistent=1", + "-D drbd:resync-rate=invalid") + master = qa_config.GetMasterNode() rapi_dir = os.path.dirname(constants.RAPI_USERS_FILE) @@ -97,11 +102,23 @@ def TestClusterInit(rapi_user, rapi_secret): if htype: cmd.append("--enabled-hypervisors=%s" % htype) - cmd.append(qa_config.get("name")) + # test gnt-cluster init failures due to bad keys/values in disk parameters + for param in fail_params: + cmd.extend([param, qa_config.get("name")]) + AssertCommand(cmd, fail=True) + cmd.pop() + cmd.pop() + cmd.append(qa_config.get("name")) AssertCommand(cmd) cmd = ["gnt-cluster", "modify"] + # test gnt-cluster modify failures due to bad keys/values in disk parameters + for param in fail_params: + cmd.append(param) + AssertCommand(cmd, fail=True) + cmd.pop() + # hypervisor parameter modifications hvp = qa_config.get("hypervisor-parameters", {}) for k, v in hvp.items():