From c6bf42d07f4b45d7ec8ce6ebb007f398dc6e0b57 Mon Sep 17 00:00:00 2001 From: Sam Yaple Date: Sun, 11 Oct 2015 10:21:32 +0000 Subject: [PATCH] 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 --- ansible/library/find_disks.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/ansible/library/find_disks.py b/ansible/library/find_disks.py index fe2a638b25..d7f166fc90 100644 --- a/ansible/library/find_disks.py +++ b/ansible/library/find_disks.py @@ -63,17 +63,19 @@ def main(): for line in disks: d = line.split(' ') - if d[0] == 'Disk': + if d[0] == 'Disk' and d[1] != 'Flags:': dev = d[1][:-1] if line.find(partition_name) != -1: # This process returns an error code when no results return # We can ignore that, it is safe 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 - if fs_uuid: - fs_uuid = fs_uuid.split('"')[1] + if ' UUID=' in blkid_out: + fs_uuid = blkid_out.split(' UUID="')[1].split('"')[0] + else: + fs_uuid = '' ret.append({'device': dev, 'fs_uuid': fs_uuid}) module.exit_json(disks=ret)