From: Alfredo Deza Date: Tue, 27 Nov 2018 14:45:17 +0000 (-0500) Subject: ceph-volume util.disk add a helper to remove partitions X-Git-Tag: v14.1.0~747^2~17 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=870f9e5b48a5fe13e213be86ee8947ca7207c3bf;p=ceph-ci.git ceph-volume util.disk add a helper to remove partitions Signed-off-by: Alfredo Deza --- diff --git a/src/ceph-volume/ceph_volume/util/disk.py b/src/ceph-volume/ceph_volume/util/disk.py index 995a9685649..3179e67b745 100644 --- a/src/ceph-volume/ceph_volume/util/disk.py +++ b/src/ceph-volume/ceph_volume/util/disk.py @@ -127,6 +127,23 @@ def get_device_from_partuuid(partuuid): return ' '.join(out).strip() +def remove_partition(device): + """ + Removes a partition using parted + + :param device: A ``Device()`` object + """ + parent_device = '/dev/%s' % device.disk_api['PKNAME'] + udev_info = udevadm_property(device.abspath) + partition_number = udev_info.get('ID_PART_ENTRY_NUMBER') + if not partition_number: + raise RuntimeError('Unable to detect the partition number for device: %s' % device_path) + + process.run( + ['parted', parent_device, '--script', '--', 'rm', partition_number] + ) + + def _stat_is_device(stat_obj): """ Helper function that will interpret ``os.stat`` output directly, so that other