import os
from functools import total_ordering
-from ceph_volume import sys_info
+from ceph_volume import sys_info, process
from ceph_volume.api import lvm
from ceph_volume.util import disk
from ceph_volume.util.constants import ceph_disk_guids
break
return is_member
+ @property
+ def has_bluestore_label(self):
+ out, err, ret = process.call([
+ 'ceph-bluestore-tool', 'show-label',
+ '--dev', self.path])
+ if ret:
+ return False
+ return True
+
@property
def is_mapper(self):
return self.path.startswith(('/dev/mapper', '/dev/dm-'))
self.sys_api.get(k, '') == v]
if self.is_ceph_disk_member:
rejected.append("Used by ceph-disk")
+ if self.has_bluestore_label:
+ rejected.append('Has BlueStore device label')
return len(rejected) == 0, rejected