def partition_usage()

in validations/image_validator/system.py [0:0]


def partition_usage(part_info):
    usage = dict()
    units = {'MB' : 2**20}
    for part in part_info:
        try:
            import shutil
            part["size"], part["used"], part["free"] = shutil.disk_usage(part["mountpoint"])
        except:
            stats = os.statvfs(part["mountpoint"])
            part["free"] = stats.f_bfree * stats.f_bsize
            part["size"] = stats.f_blocks * stats.f_bsize
            part["used"] = part["size"] - part["free"]

        part["size"], part["used"], part["free"] = part["size"]/units['MB'], part["used"]/units['MB'], part["free"]/units['MB']
        part["units"] = units
        
    return part_info