def test_determine_block_device_with_missing(self, _ensure): _ensure.side_effect = self._fake_ensure bdevs = '/dev/vdb /srv/swift.img|20G /dev/vdz' self.test_config.set('block-device', bdevs) result = swift_utils.determine_block_devices() ex = ['/dev/vdb', '/srv/swift.img'] self.assertEqual(ex, result)
def test_determine_block_device_multi_dev(self, _ensure): _ensure.side_effect = self._fake_ensure bdevs = '/dev/vdb /dev/vdc /tmp/swift.img|1G' self.test_config.set('block-device', bdevs) result = swift_utils.determine_block_devices() ex = ['/dev/vdb', '/dev/vdc', '/tmp/swift.img'] self.assertEquals(ex, result)
def test_determine_block_device_with_missing(self, _ensure): _ensure.side_effect = self._fake_ensure bdevs = '/dev/vdb /srv/swift.img|20G /dev/vdz' self.test_config.set('block-device', bdevs) result = swift_utils.determine_block_devices() ex = ['/dev/vdb', '/srv/swift.img'] self.assertEqual(ex, result)
def test_determine_block_device_duplicate_dev(self, _ensure): _ensure.side_effect = self._fake_ensure bdevs = '/dev/vdb /dev/vdc /dev/vdc /dev/vdb /tmp/swift.img|1G' self.test_config.set('block-device', bdevs) result = swift_utils.determine_block_devices() ex = ['/dev/vdb', '/dev/vdc', '/tmp/swift.img'] ex = list(set(ex)) self.assertEqual(ex, result)
def test_determine_block_device_guess_dev(self, _ensure, _find, _check_output): "Devices already mounted under /srv/node/ should be returned" def _findmnt(cmd): dev = cmd[1].split('/')[-1] mnt_point = '/srv/node/' + dev return FINDMNT_FOUND_TEMPLATE.format(mnt_point, dev) _check_output.side_effect = _findmnt _ensure.side_effect = self._fake_ensure self.test_config.set('block-device', 'guess') _find.return_value = ['/dev/vdb', '/dev/sdb'] result = swift_utils.determine_block_devices() self.assertTrue(_find.called) self.assertEquals(result, ['/dev/vdb', '/dev/sdb'])
def test_determine_block_device_guess_dev_not_eligable( self, _ensure, _find, _check_output): "Devices not mounted under /srv/node/ should not be returned" def _findmnt(cmd): dev = cmd[1].split('/')[-1] mnt_point = '/' return FINDMNT_FOUND_TEMPLATE.format(mnt_point, dev) _check_output.side_effect = _findmnt _ensure.side_effect = self._fake_ensure self.test_config.set('block-device', 'guess') _find.return_value = ['/dev/vdb'] result = swift_utils.determine_block_devices() self.assertTrue(_find.called) self.assertEqual(result, [])
def test_determine_block_device_guess_dev_not_eligable(self, _ensure, _find, _check_output): "Devices not mounted under /srv/node/ should not be returned" def _findmnt(cmd): dev = cmd[1].split('/')[-1] mnt_point = '/' return (FINDMNT_FOUND_TEMPLATE .format(mnt_point, dev).encode('ascii')) _check_output.side_effect = _findmnt _ensure.side_effect = self._fake_ensure self.test_config.set('block-device', 'guess') _find.return_value = ['/dev/vdb'] result = swift_utils.determine_block_devices() self.assertTrue(_find.called) self.assertEqual(result, [])
def swift_storage_relation_joined(rid=None): rel_settings = { 'zone': config('zone'), 'object_port': config('object-server-port'), 'container_port': config('container-server-port'), 'account_port': config('account-server-port'), } devs = determine_block_devices() or [] devs = [os.path.basename(d) for d in devs] rel_settings['device'] = ':'.join(devs) # Keep a reference of devices we are adding to the ring remember_devices(devs) rel_settings['private-address'] = get_relation_ip('swift-storage') relation_set(relation_id=rid, relation_settings=rel_settings)
def test_determine_block_device_guess_dev(self, _ensure, _find, _check_output): "Devices already mounted under /srv/node/ should be returned" def _findmnt(cmd): dev = cmd[1].split('/')[-1] mnt_point = '/srv/node/' + dev return (FINDMNT_FOUND_TEMPLATE.format(mnt_point, dev).encode('ascii')) _check_output.side_effect = _findmnt _ensure.side_effect = self._fake_ensure self.test_config.set('block-device', 'guess') _find.return_value = ['/dev/vdb', '/dev/sdb'] result = swift_utils.determine_block_devices() self.assertTrue(_find.called) # always returns sorted results self.assertEqual(result, ['/dev/sdb', '/dev/vdb'])
def test_determine_block_device_single_dev(self, _ensure): _ensure.side_effect = self._fake_ensure bdevs = '/dev/vdb' self.test_config.set('block-device', bdevs) result = swift_utils.determine_block_devices() self.assertEqual(['/dev/vdb'], result)
def test_determine_block_device_no_config(self): self.test_config.set('block-device', None) self.assertEqual(swift_utils.determine_block_devices(), None)
def test_determine_block_device_single_dev(self, _ensure): _ensure.side_effect = self._fake_ensure bdevs = '/dev/vdb' self.test_config.set('block-device', bdevs) result = swift_utils.determine_block_devices() self.assertEqual(['/dev/vdb'], result)
def test_determine_block_device_no_config(self): self.test_config.set('block-device', None) self.assertIsNone(swift_utils.determine_block_devices())