]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph-disk: prefer sgdisk to blkid to retrieve partition UUID
authorLoic Dachary <ldachary@redhat.com>
Sun, 20 Sep 2015 12:16:12 +0000 (14:16 +0200)
committerLoic Dachary <ldachary@redhat.com>
Tue, 22 Sep 2015 06:46:56 +0000 (08:46 +0200)
blkid 2.23.2 which is the default for official CentOS 7 cloud images
fails on journal device. It would be better to use blkid because it does
not trigger udev events, but it is more important to get reliable
results.

http://tracker.ceph.com/issues/13153 Fixes: #13153

Signed-off-by: Loic Dachary <ldachary@redhat.com>
src/ceph-disk

index d8f67ce615c74c746de27536450888f1a6ecf835..18abad40850e0c6f4f2d14314b7537b9d8fa951e 100755 (executable)
@@ -2675,31 +2675,10 @@ def split_dev_base_partnum(dev):
     return (base, partnum)
 
 def get_partition_type(part):
-    return get_blkid_partition_info(part, 'ID_PART_ENTRY_TYPE')
-    #return get_sgdisk_partition_info(part, 'Partition GUID code: (\S+)')
+    return get_sgdisk_partition_info(part, 'Partition GUID code: (\S+)')
 
 def get_partition_uuid(part):
-    return get_blkid_partition_info(part, 'ID_PART_ENTRY_UUID')
-    #return get_sgdisk_partition_info(part, 'Partition unique GUID: (\S+)')
-
-def get_blkid_partition_info(dev, what=None):
-    out, _ = command(
-        [
-            '/sbin/blkid',
-            '-o',
-            'udev',
-            '-p',
-            dev,
-        ]
-    )
-    p = {}
-    for line in out.splitlines():
-        (key, value) = line.split('=')
-        p[key] = value
-    if what:
-        return p.get(what)
-    else:
-        return p
+    return get_sgdisk_partition_info(part, 'Partition unique GUID: (\S+)')
 
 def get_sgdisk_partition_info(dev, regexp):
     (base, partnum) = split_dev_base_partnum(dev)