Ignore the 'Disk Flags:' line in parted

This is a difference between different versions of parted and since we
since we are screen scraping this is a clean solution.

backport: liberty
Change-Id: I4c441bb16cfba7f405d2a41233d0129e61715c62
Closes-Bug: #1504920
This commit is contained in:
Sam Yaple 2015-10-11 10:21:32 +00:00
parent 952ea3d888
commit c6bf42d07f

View File

@ -63,17 +63,19 @@ def main():
for line in disks: for line in disks:
d = line.split(' ') d = line.split(' ')
if d[0] == 'Disk': if d[0] == 'Disk' and d[1] != 'Flags:':
dev = d[1][:-1] dev = d[1][:-1]
if line.find(partition_name) != -1: if line.find(partition_name) != -1:
# This process returns an error code when no results return # This process returns an error code when no results return
# We can ignore that, it is safe # We can ignore that, it is safe
p = subprocess.Popen("blkid " + dev + "*", shell=True, stdout=subprocess.PIPE) p = subprocess.Popen("blkid " + dev + "*", shell=True, stdout=subprocess.PIPE)
fs_uuid = p.communicate()[0] blkid_out = p.communicate()[0]
# The dev doesn't need to have a uuid, will be '' otherwise # The dev doesn't need to have a uuid, will be '' otherwise
if fs_uuid: if ' UUID=' in blkid_out:
fs_uuid = fs_uuid.split('"')[1] fs_uuid = blkid_out.split(' UUID="')[1].split('"')[0]
else:
fs_uuid = ''
ret.append({'device': dev, 'fs_uuid': fs_uuid}) ret.append({'device': dev, 'fs_uuid': fs_uuid})
module.exit_json(disks=ret) module.exit_json(disks=ret)