Skip to content
Snippets Groups Projects
Commit ebdefe95 authored by Iustin Pop's avatar Iustin Pop
Browse files

Merge branch 'devel-2.2'


* devel-2.2:
  Try again to fix the inter-cluster move QA test

Signed-off-by: default avatarIustin Pop <iustin@google.com>
Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
parents ed3920e3 638a7266
No related branches found
No related tags found
No related merge requests found
...@@ -203,9 +203,13 @@ def RunCommonInstanceTests(instance): ...@@ -203,9 +203,13 @@ def RunCommonInstanceTests(instance):
RunTest(qa_rapi.TestInstance, instance) RunTest(qa_rapi.TestInstance, instance)
def RunExportImportTests(instance, pnode): def RunExportImportTests(instance, pnode, snode):
"""Tries to export and import the instance. """Tries to export and import the instance.
@param pnode: current primary node of the instance
@param snode: current secondary node of the instance, if any,
otherwise None
""" """
if qa_config.TestEnabled('instance-export'): if qa_config.TestEnabled('instance-export'):
RunTest(qa_instance.TestInstanceExportNoTarget, instance) RunTest(qa_instance.TestInstanceExportNoTarget, instance)
...@@ -231,12 +235,16 @@ def RunExportImportTests(instance, pnode): ...@@ -231,12 +235,16 @@ def RunExportImportTests(instance, pnode):
qa_config.TestEnabled("inter-cluster-instance-move")): qa_config.TestEnabled("inter-cluster-instance-move")):
newinst = qa_config.AcquireInstance() newinst = qa_config.AcquireInstance()
try: try:
pnode2 = qa_config.AcquireNode(exclude=pnode) if snode is None:
excl = [pnode]
else:
excl = [pnode, snode]
tnode = qa_config.AcquireNode(exclude=excl)
try: try:
RunTest(qa_rapi.TestInterClusterInstanceMove, instance, newinst, RunTest(qa_rapi.TestInterClusterInstanceMove, instance, newinst,
pnode, pnode2) pnode, snode, tnode)
finally: finally:
qa_config.ReleaseNode(pnode2) qa_config.ReleaseNode(tnode)
finally: finally:
qa_config.ReleaseInstance(newinst) qa_config.ReleaseInstance(newinst)
...@@ -360,7 +368,7 @@ def main(): ...@@ -360,7 +368,7 @@ def main():
if qa_config.TestEnabled('instance-add-plain-disk'): if qa_config.TestEnabled('instance-add-plain-disk'):
instance = RunTest(qa_instance.TestInstanceAddWithPlainDisk, pnode) instance = RunTest(qa_instance.TestInstanceAddWithPlainDisk, pnode)
RunCommonInstanceTests(instance) RunCommonInstanceTests(instance)
RunExportImportTests(instance, pnode) RunExportImportTests(instance, pnode, None)
RunDaemonTests(instance, pnode) RunDaemonTests(instance, pnode)
RunTest(qa_instance.TestInstanceRemove, instance) RunTest(qa_instance.TestInstanceRemove, instance)
del instance del instance
...@@ -380,7 +388,7 @@ def main(): ...@@ -380,7 +388,7 @@ def main():
RunTest(qa_instance.TestInstanceShutdown, instance) RunTest(qa_instance.TestInstanceShutdown, instance)
RunTest(qa_instance.TestInstanceConvertDisk, instance, snode) RunTest(qa_instance.TestInstanceConvertDisk, instance, snode)
RunTest(qa_instance.TestInstanceStartup, instance) RunTest(qa_instance.TestInstanceStartup, instance)
RunExportImportTests(instance, pnode) RunExportImportTests(instance, pnode, snode)
RunHardwareFailureTests(instance, pnode, snode) RunHardwareFailureTests(instance, pnode, snode)
RunTest(qa_instance.TestInstanceRemove, instance) RunTest(qa_instance.TestInstanceRemove, instance)
del instance del instance
......
...@@ -396,7 +396,8 @@ def TestRapiInstanceModify(instance): ...@@ -396,7 +396,8 @@ def TestRapiInstanceModify(instance):
}) })
def TestInterClusterInstanceMove(src_instance, dest_instance, pnode, snode): def TestInterClusterInstanceMove(src_instance, dest_instance,
pnode, snode, tnode):
"""Test tools/move-instance""" """Test tools/move-instance"""
master = qa_config.GetMasterNode() master = qa_config.GetMasterNode()
...@@ -406,12 +407,18 @@ def TestInterClusterInstanceMove(src_instance, dest_instance, pnode, snode): ...@@ -406,12 +407,18 @@ def TestInterClusterInstanceMove(src_instance, dest_instance, pnode, snode):
# TODO: Run some instance tests before moving back # TODO: Run some instance tests before moving back
# note: pnode is the *current* primary node, so we move it first to if snode is None:
# snode, then back # instance is not redundant, but we still need to pass a node
# (which will be ignored)
fsec = tnode
else:
fsec = snode
# note: pnode:snode are the *current* nodes, so we move it first to
# tnode:pnode, then back to pnode:snode
for si, di, pn, sn in [(src_instance["name"], dest_instance["name"], for si, di, pn, sn in [(src_instance["name"], dest_instance["name"],
snode["primary"], pnode["primary"]), tnode["primary"], pnode["primary"]),
(dest_instance["name"], src_instance["name"], (dest_instance["name"], src_instance["name"],
pnode["primary"], snode["primary"])]: pnode["primary"], fsec["primary"])]:
cmd = [ cmd = [
"../tools/move-instance", "../tools/move-instance",
"--verbose", "--verbose",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment