55
59
super(NovaComputeUtilsTests, self).setUp(utils, TO_PATCH)
56
60
self.config.side_effect = self.test_config.get
61
self.charm_dir.return_value = 'mycharm'
58
63
@patch.object(utils, 'enable_nova_metadata')
59
64
@patch.object(utils, 'network_manager')
708
713
'iputils-arping', 'kpartx', 'kvm', 'netcat', 'open-iscsi',
709
714
'parted', 'python-libvirt', 'qemu', 'qemu-system',
710
715
'qemu-utils', 'vlan', 'xen-system-amd64'], fatal=True)
717
@patch('psutil.virtual_memory')
718
@patch('subprocess.check_call')
719
@patch('subprocess.call')
720
def test_install_hugepages(self, _call, _check_call, _virt_mem):
723
self.total = 10000000
724
self.test_config.set('hugepages', '10%')
725
_virt_mem.side_effect = mem
726
_call.return_value = 1
727
utils.install_hugepages()
728
self.hugepage_support.assert_called_with(
730
mnt_point='/run/hugepages/kvm',
736
call('/etc/init.d/qemu-hugefsdir'),
737
call(['update-rc.d', 'qemu-hugefsdir', 'defaults']),
739
_check_call.assert_has_calls(check_call_calls)
740
self.fstab_mount.assert_called_with('/run/hugepages/kvm')
742
@patch('psutil.virtual_memory')
743
@patch('subprocess.check_call')
744
@patch('subprocess.call')
745
def test_install_hugepages_explicit_size(self, _call, _check_call,
747
self.test_config.set('hugepages', '2048')
748
utils.install_hugepages()
749
self.hugepage_support.assert_called_with(
751
mnt_point='/run/hugepages/kvm',
757
@patch('psutil.virtual_memory')
758
@patch('subprocess.check_call')
759
@patch('subprocess.call')
760
def test_install_hugepages_already_mounted(self, _call, _check_call,
762
self.test_config.set('hugepages', '2048')
763
_call.return_value = 0
764
utils.install_hugepages()
765
self.assertEqual(self.fstab_mount.call_args_list, [])