From 858a0227eb57d8ca5409b5bf105ac254ce79a124 Mon Sep 17 00:00:00 2001 From: kshithijiyer Date: Thu, 29 Oct 2020 15:18:19 +0530 Subject: [Lib] Add get_usable_size_per_disk() to library Changes done in this patch: 1. Adding get_usable_size_per_disk() to lib_utils.py. 2. Removing the redundant code from dht/test_rename_with_brick_min_free_limit_crossed.py. Change-Id: I80c1d6124b7f0ce562d8608565f7c46fd8612d0d Signed-off-by: kshithijiyer --- glustolibs-gluster/glustolibs/gluster/lib_utils.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'glustolibs-gluster/glustolibs/gluster/lib_utils.py') diff --git a/glustolibs-gluster/glustolibs/gluster/lib_utils.py b/glustolibs-gluster/glustolibs/gluster/lib_utils.py index 7299874d0..26f2ad904 100755 --- a/glustolibs-gluster/glustolibs/gluster/lib_utils.py +++ b/glustolibs-gluster/glustolibs/gluster/lib_utils.py @@ -1199,3 +1199,25 @@ def collect_bricks_arequal(bricks_list): arequal_list.append(arequal) return (return_code, arequal_list) + + +def get_usable_size_per_disk(brickpath, min_free_limit=10): + """Get the usable size per disk + + Args: + brickpath(str): Brick path to be used to calculate usable size + + Kwargs: + min_free_limit(int): Min free disk limit to be used + + Returns: + (int): Usable size in GB. None in case of errors. + """ + node, brick_path = brickpath.split(':') + size = get_size_of_mountpoint(node, brick_path) + if not size: + return None + size = int(size) + min_free_size = size * min_free_limit // 100 + usable_size = ((size - min_free_size) // 1048576) + 1 + return usable_size -- cgit