diff --git a/qa/ganeti-qa.py b/qa/ganeti-qa.py index dffcbab5d76cbc8c75765d96361f5ed7f34b6587..f44dbec72804192f6aeb81507ce921376c68387d 100755 --- a/qa/ganeti-qa.py +++ b/qa/ganeti-qa.py @@ -137,6 +137,9 @@ def RunCommonInstanceTests(instance): if qa_config.TestEnabled('instance-info'): RunTest(qa_instance.TestInstanceInfo, instance) + if qa_config.TestEnabled('instance-modify'): + RunTest(qa_instance.TestInstanceModify, instance) + if qa_config.TestEnabled('instance-reinstall'): RunTest(qa_instance.TestInstanceShutdown, instance) RunTest(qa_instance.TestInstanceReinstall, instance) diff --git a/qa/qa-sample.yaml b/qa/qa-sample.yaml index a5795d705e6ee1071aa3f2e8d2063ef0625513ce..57fe764b5191abcc2d0727916ea451e371a242f6 100644 --- a/qa/qa-sample.yaml +++ b/qa/qa-sample.yaml @@ -58,6 +58,7 @@ tests: instance-list: True instance-failover: True instance-info: True + instance-modify: True instance-export: True instance-import: True instance-reinstall: True diff --git a/qa/qa_instance.py b/qa/qa_instance.py index 132c6d4da42b2832aa3971d2982ef9fb5a618a22..12906bb105a00d741ce8d3e9141fc199148e6697 100644 --- a/qa/qa_instance.py +++ b/qa/qa_instance.py @@ -151,6 +151,39 @@ def TestInstanceInfo(instance): utils.ShellQuoteArgs(cmd)).wait(), 0) +@qa_utils.DefineHook('instance-modify') +def TestInstanceModify(instance): + """gnt-instance modify""" + master = qa_config.GetMasterNode() + + orig_memory = qa_config.get('mem') + orig_bridge = qa_config.get('bridge', 'xen-br0') + args = [ + ["--memory", "128"], + ["--memory", str(orig_memory)], + ["--cpu", "2"], + ["--cpu", "1"], + ["--bridge", "xen-br1"], + ["--bridge", orig_bridge], + ["--kernel", "/dev/null"], + ["--kernel", "default"], + ["--initrd", "/dev/null"], + ["--initrd", "none"], + ["--initrd", "default"], + ["--hvm-boot-order", "acn"], + ["--hvm-boot-order", "default"], + ] + for alist in args: + cmd = ['gnt-instance', 'modify'] + alist + [instance['name']] + AssertEqual(StartSSH(master['primary'], + utils.ShellQuoteArgs(cmd)).wait(), 0) + + # check no-modify + cmd = ['gnt-instance', 'modify', instance['name']] + AssertNotEqual(StartSSH(master['primary'], + utils.ShellQuoteArgs(cmd)).wait(), 0) + + @qa_utils.DefineHook('instance-list') def TestInstanceList(): """gnt-instance list"""