Bugfix: HA test case baremetal down ipmi power off failed - dovetail 29/60029/2
authorrexlee8776 <limingjiang@huawei.com>
Fri, 20 Jul 2018 03:34:52 +0000 (03:34 +0000)
committerrexlee8776 <limingjiang@huawei.com>
Fri, 20 Jul 2018 03:56:28 +0000 (03:56 +0000)
Test case tc025 baremetal down failed to ipmi power off the node.
This patch target to solve:
    ipmi_password is not correctly fetched

JIRA: YARDSTICK-1326

Change-Id: Ia915cd07cba420643fa9a679975178328be55700
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
yardstick/benchmark/scenarios/availability/attacker/attacker_baremetal.py
yardstick/tests/unit/benchmark/scenarios/availability/test_attacker_baremetal.py

index 979e3ab..53abd58 100644 (file)
@@ -23,7 +23,7 @@ def _execute_shell_command(command, stdin=None):
     output = []
     try:
         output = subprocess.check_output(command, stdin=stdin, shell=True)
-    except Exception:
+    except Exception:  # pylint: disable=broad-except
         exitcode = -1
         LOG.error("exec command '%s' error:\n ", command, exc_info=True)
 
@@ -49,8 +49,7 @@ class BaremetalAttacker(BaseAttacker):
             LOG.debug("jump_host ip:%s user:%s", jump_host['ip'], jump_host['user'])
             self.jump_connection = ssh.SSH.from_node(
                 jump_host,
-                # why do we allow pwd for password?
-                defaults={"user": "root", "password": jump_host.get("pwd")}
+                defaults={"user": "root", "password": jump_host.get("password")}
             )
             self.jump_connection.wait(timeout=600)
             LOG.debug("ssh jump host success!")
@@ -59,7 +58,7 @@ class BaremetalAttacker(BaseAttacker):
 
         self.ipmi_ip = host.get("ipmi_ip", None)
         self.ipmi_user = host.get("ipmi_user", "root")
-        self.ipmi_pwd = host.get("ipmi_pwd", None)
+        self.ipmi_pwd = host.get("ipmi_password", None)
 
         self.fault_cfg = BaseAttacker.attacker_cfgs.get('bare-metal-down')
         self.check_script = self.get_script_fullpath(
@@ -107,26 +106,3 @@ class BaremetalAttacker(BaseAttacker):
             else:
                 _execute_shell_command(cmd, stdin=stdin_file)
         LOG.info("Recover fault END")
-
-
-def _test():  # pragma: no cover
-    host = {
-        "ipmi_ip": "10.20.0.5",
-        "ipmi_user": "root",
-        "ipmi_pwd": "123456",
-        "ip": "10.20.0.5",
-        "user": "root",
-        "key_filename": "/root/.ssh/id_rsa"
-    }
-    context = {"node1": host}
-    attacker_cfg = {
-        'fault_type': 'bear-metal-down',
-        'host': 'node1',
-    }
-    ins = BaremetalAttacker(attacker_cfg, context)
-    ins.setup()
-    ins.inject_fault()
-
-
-if __name__ == '__main__':  # pragma: no cover
-    _test()
index d5c95a0..0f68753 100644 (file)
@@ -48,7 +48,7 @@ class AttackerBaremetalTestCase(unittest.TestCase):
         host = {
             "ipmi_ip": "10.20.0.5",
             "ipmi_user": "root",
-            "ipmi_pwd": "123456",
+            "ipmi_password": "123456",
             "ip": "10.20.0.5",
             "user": "root",
             "key_filename": "/root/.ssh/id_rsa"
@@ -77,7 +77,7 @@ class AttackerBaremetalTestCase(unittest.TestCase):
     def test__attacker_baremetal_recover_successful(self, mock_ssh, mock_subprocess):
 
         self.attacker_cfg["jump_host"] = 'node1'
-        self.context["node1"]["pwd"] = "123456"
+        self.context["node1"]["password"] = "123456"
         mock_ssh.SSH.from_node().execute.return_value = (0, "running", '')
         ins = attacker_baremetal.BaremetalAttacker(self.attacker_cfg,
                                                    self.context)