Revision deadfa13 qa/ganeti-qa.py
b/qa/ganeti-qa.py | ||
---|---|---|
482 | 482 |
qa_config.ReleaseNode(node) |
483 | 483 |
|
484 | 484 |
|
485 |
def RunInstanceTests(): |
|
486 |
"""Create and exercise instances.""" |
|
487 |
instance_tests = [ |
|
488 |
("instance-add-plain-disk", constants.DT_PLAIN, |
|
489 |
qa_instance.TestInstanceAddWithPlainDisk, 1), |
|
490 |
("instance-add-drbd-disk", constants.DT_DRBD8, |
|
491 |
qa_instance.TestInstanceAddWithDrbdDisk, 2), |
|
492 |
] |
|
493 |
|
|
494 |
for (test_name, templ, create_fun, num_nodes) in instance_tests: |
|
495 |
if (qa_config.TestEnabled(test_name) and |
|
496 |
qa_config.IsTemplateSupported(templ)): |
|
497 |
inodes = qa_config.AcquireManyNodes(num_nodes) |
|
498 |
try: |
|
499 |
instance = RunTest(create_fun, inodes) |
|
500 |
|
|
501 |
RunTestIf("cluster-epo", qa_cluster.TestClusterEpo) |
|
502 |
RunDaemonTests(instance) |
|
503 |
for node in inodes: |
|
504 |
RunTestIf("haskell-confd", qa_node.TestNodeListDrbd, node) |
|
505 |
if len(inodes) > 1: |
|
506 |
RunTestIf("group-rwops", qa_group.TestAssignNodesIncludingSplit, |
|
507 |
constants.INITIAL_NODE_GROUP_NAME, |
|
508 |
inodes[0]["primary"], inodes[1]["primary"]) |
|
509 |
if qa_config.TestEnabled("instance-convert-disk"): |
|
510 |
RunTest(qa_instance.TestInstanceShutdown, instance) |
|
511 |
RunTest(qa_instance.TestInstanceConvertDiskToPlain, instance, inodes) |
|
512 |
RunTest(qa_instance.TestInstanceStartup, instance) |
|
513 |
RunCommonInstanceTests(instance) |
|
514 |
RunGroupListTests() |
|
515 |
RunExportImportTests(instance, inodes) |
|
516 |
RunHardwareFailureTests(instance, inodes) |
|
517 |
RunRepairDiskSizes() |
|
518 |
RunTest(qa_instance.TestInstanceRemove, instance) |
|
519 |
del instance |
|
520 |
finally: |
|
521 |
qa_config.ReleaseManyNodes(inodes) |
|
522 |
qa_cluster.AssertClusterVerify() |
|
523 |
|
|
524 |
|
|
485 | 525 |
def RunQa(): |
486 | 526 |
"""Main QA body. |
487 | 527 |
|
... | ... | |
536 | 576 |
finally: |
537 | 577 |
qa_config.ReleaseNode(pnode) |
538 | 578 |
|
539 |
instance_tests = [
|
|
540 |
("instance-add-plain-disk", constants.DT_PLAIN,
|
|
541 |
qa_instance.TestInstanceAddWithPlainDisk, 1),
|
|
542 |
("instance-add-drbd-disk", constants.DT_DRBD8,
|
|
543 |
qa_instance.TestInstanceAddWithDrbdDisk, 2),
|
|
579 |
config_list = [
|
|
580 |
("default-instance-tests", lambda: None, lambda _: None),
|
|
581 |
("exclusive-storage-instance-tests",
|
|
582 |
lambda: qa_cluster.TestSetExclStorCluster(True),
|
|
583 |
qa_cluster.TestSetExclStorCluster),
|
|
544 | 584 |
] |
545 |
|
|
546 |
for (test_name, templ, create_fun, num_nodes) in instance_tests: |
|
547 |
if (qa_config.TestEnabled(test_name) and |
|
548 |
qa_config.IsTemplateSupported(templ)): |
|
549 |
inodes = qa_config.AcquireManyNodes(num_nodes) |
|
550 |
try: |
|
551 |
instance = RunTest(create_fun, inodes) |
|
552 |
|
|
553 |
RunTestIf("cluster-epo", qa_cluster.TestClusterEpo) |
|
554 |
RunDaemonTests(instance) |
|
555 |
for node in inodes: |
|
556 |
RunTestIf("haskell-confd", qa_node.TestNodeListDrbd, node) |
|
557 |
if len(inodes) > 1: |
|
558 |
RunTestIf("group-rwops", qa_group.TestAssignNodesIncludingSplit, |
|
559 |
constants.INITIAL_NODE_GROUP_NAME, |
|
560 |
inodes[0]["primary"], inodes[1]["primary"]) |
|
561 |
if qa_config.TestEnabled("instance-convert-disk"): |
|
562 |
RunTest(qa_instance.TestInstanceShutdown, instance) |
|
563 |
RunTest(qa_instance.TestInstanceConvertDiskToPlain, instance, inodes) |
|
564 |
RunTest(qa_instance.TestInstanceStartup, instance) |
|
565 |
RunCommonInstanceTests(instance) |
|
566 |
RunGroupListTests() |
|
567 |
RunExportImportTests(instance, inodes) |
|
568 |
RunHardwareFailureTests(instance, inodes) |
|
569 |
RunRepairDiskSizes() |
|
570 |
RunTest(qa_instance.TestInstanceRemove, instance) |
|
571 |
del instance |
|
572 |
finally: |
|
573 |
qa_config.ReleaseManyNodes(inodes) |
|
574 |
qa_cluster.AssertClusterVerify() |
|
585 |
for (conf_name, setup_conf_f, restore_conf_f) in config_list: |
|
586 |
if qa_config.TestEnabled(conf_name): |
|
587 |
oldconf = setup_conf_f() |
|
588 |
RunInstanceTests() |
|
589 |
restore_conf_f(oldconf) |
|
575 | 590 |
|
576 | 591 |
pnode = qa_config.AcquireNode() |
577 | 592 |
try: |
Also available in: Unified diff