Example #1
0
 def setUp(self):
     super(SSHPrivateMethodsTestCase, self).setUp()
     self.node = obj_utils.get_test_node(
         self.context,
         driver='fake_ssh',
         driver_info=db_utils.get_test_ssh_info())
     self.sshclient = paramiko.SSHClient()
Example #2
0
 def test__parse_driver_info_too_many(self):
     info = db_utils.get_test_ssh_info('too_many')
     node = obj_utils.get_test_node(self.context,
                                    driver='fake_ssh',
                                    driver_info=info)
     self.assertRaises(exception.InvalidParameterValue,
                       ssh._parse_driver_info, node)
Example #3
0
 def test__parse_driver_info_ssh_port_wrong_type(self):
     # make sure error is raised when ssh_port is not integer
     info = db_utils.get_test_ssh_info()
     info['ssh_port'] = 'wrong_port_value'
     node = obj_utils.get_test_node(self.context, driver_info=info)
     self.assertRaises(exception.InvalidParameterValue,
                       ssh._parse_driver_info, node)
Example #4
0
 def test__parse_driver_info_missing_virt_type(self):
     # make sure error is raised when info is missing
     info = db_utils.get_test_ssh_info()
     del info['ssh_virt_type']
     node = obj_utils.get_test_node(self.context, driver_info=info)
     self.assertRaises(exception.MissingParameterValue,
                       ssh._parse_driver_info, node)
Example #5
0
 def test__parse_driver_info_bad_file(self):
     # A filename that doesn't exist errors.
     info = db_utils.get_test_ssh_info('file')
     node = obj_utils.get_test_node(self.context,
                                    driver='fake_ssh',
                                    driver_info=info)
     self.assertRaises(exception.InvalidParameterValue,
                       ssh._parse_driver_info, node)
Example #6
0
 def test_validate_fail_no_port(self):
     new_node = obj_utils.create_test_node(
         self.context,
         uuid='aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee',
         driver='fake_ssh',
         driver_info=db_utils.get_test_ssh_info())
     with task_manager.acquire(self.context, new_node.uuid,
                               shared=True) as task:
         self.assertRaises(exception.MissingParameterValue,
                           task.driver.power.validate, task)
Example #7
0
 def setUp(self):
     super(SSHDriverTestCase, self).setUp()
     mgr_utils.mock_the_extension_manager(driver="fake_ssh")
     self.driver = driver_factory.get_driver("fake_ssh")
     self.node = obj_utils.create_test_node(
         self.context,
         driver='fake_ssh',
         driver_info=db_utils.get_test_ssh_info())
     self.port = obj_utils.create_test_port(self.context,
                                            node_id=self.node.id)
     self.sshclient = paramiko.SSHClient()
Example #8
0
    def test__parse_driver_info_with_custom_libvirt_uri(self):
        CONF.set_override('libvirt_uri', 'qemu:///foo', 'ssh')
        expected_base_cmd = "LC_ALL=C /usr/bin/virsh --connect qemu:///foo"

        node = obj_utils.get_test_node(
            self.context,
            driver='fake_ssh',
            driver_info=db_utils.get_test_ssh_info())
        node['driver_info']['ssh_virt_type'] = 'virsh'
        info = ssh._parse_driver_info(node)
        self.assertEqual(expected_base_cmd, info['cmd_set']['base_cmd'])
Example #9
0
 def test__parse_driver_info_good_key(self):
     # make sure we get back the expected things
     node = obj_utils.get_test_node(
         self.context,
         driver='fake_ssh',
         driver_info=db_utils.get_test_ssh_info('key'))
     info = ssh._parse_driver_info(node)
     self.assertIsNotNone(info.get('host'))
     self.assertIsNotNone(info.get('username'))
     self.assertIsNotNone(info.get('key_contents'))
     self.assertIsNotNone(info.get('port'))
     self.assertIsNotNone(info.get('virt_type'))
     self.assertIsNotNone(info.get('cmd_set'))
     self.assertIsNotNone(info.get('uuid'))
Example #10
0
 def test__parse_driver_info_good_file(self):
     # make sure we get back the expected things
     d_info = db_utils.get_test_ssh_info('file')
     tempdir = tempfile.mkdtemp()
     key_path = tempdir + '/foo'
     open(key_path, 'wt').close()
     d_info['ssh_key_filename'] = key_path
     node = obj_utils.get_test_node(self.context,
                                    driver='fake_ssh',
                                    driver_info=d_info)
     info = ssh._parse_driver_info(node)
     self.assertIsNotNone(info.get('host'))
     self.assertIsNotNone(info.get('username'))
     self.assertIsNotNone(info.get('key_filename'))
     self.assertIsNotNone(info.get('port'))
     self.assertIsNotNone(info.get('virt_type'))
     self.assertIsNotNone(info.get('cmd_set'))
     self.assertIsNotNone(info.get('uuid'))
Example #11
0
 def test__parse_driver_info_invalid_creds(self):
     # make sure error is raised when info is missing
     info = db_utils.get_test_ssh_info('no-creds')
     node = obj_utils.get_test_node(self.context, driver_info=info)
     self.assertRaises(exception.InvalidParameterValue,
                       ssh._parse_driver_info, node)