def test_device_is_lvm_member_fails(self, fakedevice, factory, conf_ceph): conf_ceph(get_safe=lambda *a: '5120') args = factory(osds_per_device=1) devices = [ fakedevice(is_lvm_member=True, sys_api=dict(rotational='1', size=12073740000)) ] with pytest.raises(RuntimeError) as error: filestore.SingleType(devices, args) assert 'Unable to use device, already a member of LVM' in str(error)
def test_ssd_device_with_small_configured_journal(self, fakedevice, factory, conf_ceph): conf_ceph(get_safe=lambda *a: '120') args = factory(osds_per_device=1) devices = [ fakedevice(is_lvm_member=False, sys_api=dict(rotational='0', size=6073740000)) ] with pytest.raises(RuntimeError) as error: filestore.SingleType(devices, args) msg = "journal sizes must be larger than 2GB, detected: 120.00 MB" assert msg in str(error)
def test_hdd_device_multi_osd(self, fakedevice, factory, conf_ceph): conf_ceph(get_safe=lambda *a: '5120') args = factory(osds_per_device=4) devices = [ fakedevice(is_lvm_member=False, sys_api=dict(rotational='1', size=16073740000)) ] with pytest.raises(RuntimeError) as error: filestore.SingleType(devices, args) msg = "Unable to use device 14.97 GB /dev/sda, LVs would be smaller than 5GB" assert msg in str(error)
def test_ssd_device_with_large_journal(self, fakedevice, factory, conf_ceph): conf_ceph(get_safe=lambda *a: '5120') args = factory(filtered_devices=[], osds_per_device=1, journal_size=None) devices = [ fakedevice(used_by_ceph=False, is_lvm_member=False, sys_api=dict(rotational='0', size=6073740000)) ] with pytest.raises(RuntimeError) as error: filestore.SingleType(devices, args) msg = "Unable to use device 5.66 GB /dev/sda, LVs would be smaller than 5GB" assert msg in str(error)
def test_hdd_device_is_large_enough(self, fakedevice, factory, conf_ceph): conf_ceph(get_safe=lambda *a: '5120') args = factory(osds_per_device=1) devices = [ fakedevice(is_lvm_member=False, sys_api=dict(rotational='1', size=12073740000)) ] computed_osd = filestore.SingleType(devices, args).computed['osds'][0] assert computed_osd['data']['percentage'] == 55 assert computed_osd['data']['parts'] == 1 assert computed_osd['data']['human_readable_size'] == '6.24 GB' assert computed_osd['data']['path'] == '/dev/sda'
def test_device_is_lvm_member_fails(self, fakedevice, factory, conf_ceph): conf_ceph(get_safe=lambda *a: '5120') args = factory(filtered_devices=[], osds_per_device=1, journal_size=None) devices = [ fakedevice(used_by_ceph=False, is_lvm_member=True, rotational=True, sys_api=dict(size=12073740000)) ] with pytest.raises(RuntimeError) as error: filestore.SingleType(devices, args) assert 'Unable to use device, already a member of LVM' in str( error.value)