From: Alfredo Deza Date: Tue, 14 Aug 2018 15:59:25 +0000 (-0400) Subject: ceph-volume lvm.zap loop over all vgs from a pv to destroy them X-Git-Tag: v14.0.1~520^2~3^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F23532%2Fhead;p=ceph.git ceph-volume lvm.zap loop over all vgs from a pv to destroy them Signed-off-by: Alfredo Deza --- diff --git a/src/ceph-volume/ceph_volume/devices/lvm/zap.py b/src/ceph-volume/ceph_volume/devices/lvm/zap.py index 475be18a6b83..b640f76d4a94 100644 --- a/src/ceph-volume/ceph_volume/devices/lvm/zap.py +++ b/src/ceph-volume/ceph_volume/devices/lvm/zap.py @@ -86,6 +86,7 @@ class Zap(object): # name of device pvs = api.PVolumes() pvs.filter(pv_name=device) + vgs = set([pv.vg_name for pv in pvs]) for pv in pvs: vg_name = pv.vg_name lv = api.get_lv(vg_name=vg_name, lv_uuid=pv.lv_uuid) @@ -93,15 +94,12 @@ class Zap(object): if lv: self.unmount_lv(lv) - if args.destroy and pvs: - logger.info("Found a physical volume created from %s, will destroy all it's vgs and lvs", device) - vg_name = pv.vg_name - mlogger.info("Destroying volume group %s because --destroy was given", vg_name) - api.remove_vg(vg_name) + if args.destroy: + for vg_name in vgs: + mlogger.info("Destroying volume group %s because --destroy was given", vg_name) + api.remove_vg(vg_name) mlogger.info("Destroying physical volume %s because --destroy was given", device) api.remove_pv(device) - elif args.destroy and not pvs: - mlogger.info("Skipping --destroy because no associated physical volumes are found for %s", device) wipefs(path) zap_data(path)