summaryrefslogtreecommitdiffstats
path: root/glustolibs-gluster/glustolibs/gluster/layout.py
Commit message (Collapse)AuthorAgeFilesLines
* [Libfix] Remove get_gluster_version() checkskshithijiyer2020-07-271-17/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: When run for nightly gluster builds dht cases fails with below traceback: ``` def get_gluster_version(host): """Checks the gluster version on the nodes Args: host(str): IP of the host whose gluster version has to be checked. Returns: (float): The gluster version value. """ command = 'gluster --version' _, out, _ = g.run(host, command) g.log.info("The Gluster verion of the cluster under test is %s", out) > return float(out.split(' ')[1]) E ValueError: could not convert string to float: '20200719.9334a8d\nRepository ``` This is due to nightly builds returning the below output: ``` $ gluster --version glusterfs 20200708.cdf01cc Repository revision: git://git.gluster.org/glusterfs.git Copyright (c) 2006-2016 Red Hat, Inc. <https://www.gluster.org/> GlusterFS comes with ABSOLUTELY NO WARRANTY. It is licensed to you under your choice of the GNU Lesser General Public License, version 3 or any later version (LGPLv3 or later), or the GNU General Public License, version 2 (GPLv2), in all cases as published by the Free Software Foundation. ``` Instead of: ``` $ gluster --version glusterfs 6.0 ``` This is caused as while building the we use `VERSION="${GIT_DATE}.${GIT_HASH}` which causes the version API to return new output. Solution: Remove the checks and modify the function to return string instead of float. Fixes: https://github.com/gluster/glusto-tests/issues/22 Change-Id: I2e889bd0354a1aa75de25aedf8b14eb5ff5ecbe6 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [LibFix] Adding code to fix issues caused by DHT pass-throughsayaleeraut2020-02-281-45/+74
| | | | | | | | | | | | | | | | | The issue earlier was that whenever a TC called the _get_layout() and _is_complete() methods, it failed on Replicate/Arbiter/Disperse volume types because of DHT pass-through. The functions,get_layout() and is_complete() have been modified to check for the Gluster version and volume type before running, in order to fix the issue. About DHT pass-through : Please refer to- https://github.com/gluster/glusterfs/issues/405 for the details. Change-Id: I0b0dc0ac3cbdef070a20854fbc89442fee1da8b6 Signed-off-by: sayaleeraut <saraut@redhat.com>
* initial dht libsJonathan Holloway2018-02-261-0/+149
* glusterfile.py - helper for gluster client and backend files. * glusterdir.py - helper for gluster client and backend dirs. * brickdir.py - helper for collection and hashing of brickdirs (from pathinfo data). * layout.py - base class for simple DHT layout validation. * dht_test_util.py - utility module to walk a directory tree and run tests against files. * constants.py - definitions for constants used in DHT libraries. * exceptions.py - definitions for exceptions raised in DHT libraries. Change-Id: I44770a822e0ec79561b3aa048e555320f622116a Signed-off-by: Jonathan Holloway <jholloway@redhat.com>