diff options
author | Valerii Ponomarov <vponomar@redhat.com> | 2018-11-20 20:19:56 +0530 |
---|---|---|
committer | Valerii Ponomarov <vponomar@redhat.com> | 2018-11-20 17:10:45 +0000 |
commit | 80e6057a8cc3d851b685c3afce1bc7a757b5a12c (patch) | |
tree | 010a42e6001c61c1f291b3c6b3bc600e80ff9f53 /tests/functional/common/heketi/heketi_tests | |
parent | 51cec40d9aae83448e594498adfeae71aa10c860 (diff) |
[CNS-778] Refactor and fix 'test_to_check_entry_in_fstab_file' TC
List of changes:
- Fixed bug, where test didn't fail in case volume brick was not
found in fstab file. It was only logging message related to it.
- Fixed bug, where we searched for all the brick paths in one single
Gluser POD, such thing should have been failing always. Above
mentioned bug has hidden this one.
- Fixed bug, where test was failing in case we didn't have passwordless
SSH connection between test-runner and heketi-client nodes.
- Added Heketi volume cleanup for case our test fails before the
step with Heketi volume deletion.
- Removed redundant copy operations of fstab files. Instead, used
'cat' shell command for getting inner data of fstab files.
Change-Id: I76c6a59ab9f40cc5e94923fcc82e5e15f640714a
Diffstat (limited to 'tests/functional/common/heketi/heketi_tests')
-rw-r--r-- | tests/functional/common/heketi/heketi_tests/test_check_entry.py | 132 |
1 files changed, 0 insertions, 132 deletions
diff --git a/tests/functional/common/heketi/heketi_tests/test_check_entry.py b/tests/functional/common/heketi/heketi_tests/test_check_entry.py deleted file mode 100644 index 47a0b3f2..00000000 --- a/tests/functional/common/heketi/heketi_tests/test_check_entry.py +++ /dev/null @@ -1,132 +0,0 @@ -from glusto.core import Glusto as g -from glustolibs.gluster.exceptions import ConfigError - -from cnslibs.common.heketi_libs import HeketiClientSetupBaseClass -from cnslibs.common.heketi_ops import (heketi_volume_create, - heketi_volume_list, - heketi_volume_delete) -from cnslibs.common.openshift_ops import get_ocp_gluster_pod_names -from cnslibs.common import podcmd - - -class TestHeketiVolume(HeketiClientSetupBaseClass): - """ - Check /etc/fstab entry - """ - @classmethod - def setUpClass(cls): - super(TestHeketiVolume, cls).setUpClass() - cls.volume_size = cls.heketi_volume['size'] - - @podcmd.GlustoPod() - def test_to_check_entry_in_fstab_file(self): - """ - Create a heketi volume and check entry - in /etc/fstab and delete heketi volume - and check corresponding brick entry must - be removed - """ - - # Create heketi volume - g.log.info("Creating a heketi volume") - out = heketi_volume_create(self.heketi_client_node, - self.heketi_server_url, - self.volume_size, json=True) - self.assertTrue(out, ("Failed to create heketi volume " - "of size %s" % str(self.volume_size))) - g.log.info("Heketi volume successfully created" % out) - self.volume_id = out["bricks"][0]["volume"] - path = [] - for i in out["bricks"]: - path.append(i["path"].rstrip("/brick")) - - # Listing heketi volumes - g.log.info("List heketi volumes") - out = heketi_volume_list(self.heketi_client_node, - self.heketi_server_url) - self.assertTrue(out, ("Failed to list heketi volumes")) - g.log.info("Heketi volume successfully listed") - - gluster_pod = get_ocp_gluster_pod_names( - self.heketi_client_node)[1] - - cmd = "oc rsync " + gluster_pod + ":/var/lib/heketi/fstab /tmp" - out = g.run(self.heketi_client_node, cmd) - self.assertTrue(out, ("Failed to copy the file")) - g.log.info("Copied the file") - out = g.run_local( - "scp -r root@%s:/tmp/fstab " - "/tmp/file.txt" % self.heketi_client_node) - self.assertTrue(out, ("Failed to copy a file to /tmp/file.txt")) - g.log.info("Successfully copied to /tmp/file.txt") - out = g.run_local("ls /tmp") - self.assertTrue(out, ("Failed to list")) - g.log.info("Successfully listed") - - # open /tmp/fstab file - datafile = open("/tmp/file.txt") - # Check if the brick is mounted - for i in path: - string_to_search = i - rcode, rout, rerr = g.run_local( - 'grep %s %s' % (string_to_search, "/tmp/file.txt")) - if rcode == 0: - g.log.info("Brick %s is mounted" % i) - datafile.close() - - out = g.run(self.heketi_client_node, "rm -rf /tmp/fstab") - self.assertTrue(out, ("Failed to delete a file /tmp/fstab")) - g.log.info("Successfully removed /tmp/fstab") - out = g.run_local("rm -rf /tmp/file.txt") - self.assertTrue(out, ("Failed to delete a file /tmp/file.txt")) - g.log.info("Successfully removed /tmp/file.txt") - - # Delete heketi volume - g.log.info("Deleting heketi volumes") - out = heketi_volume_delete(self.heketi_client_node, - self.heketi_server_url, - self.volume_id) - self.assertTrue(out, ("Failed to delete " - "heketi volume %s" % self.volume_id)) - g.log.info("Heketi volume successfully deleted %s" % self.volume_id) - - # Listing heketi volumes - g.log.info("List heketi volumes") - out = heketi_volume_list(self.heketi_client_node, - self.heketi_server_url) - self.assertTrue(out, ("Failed to list or No volumes to list")) - g.log.info("Heketi volume successfully listed") - - # Check entry /etc/fstab - gluster_pod = get_ocp_gluster_pod_names( - self.heketi_client_node)[0] - - cmd = "oc rsync " + gluster_pod + ":/var/lib/heketi/fstab /" - out = g.run(self.heketi_client_node, cmd) - self.assertTrue(out, ("Failed to copy the file")) - g.log.info("Copied the file") - out = g.run_local( - "scp -r root@%s:/fstab /tmp/newfile.txt" % self.heketi_client_node) - self.assertTrue(out, ("Failed to copy to the file newfile.txt")) - g.log.info("Successfully copied to the file newfile.txt") - out = g.run_local("ls /tmp") - self.assertTrue(out, ("Failed to list")) - g.log.info("Successfully listed") - - # open /tmp/newfile.txt file - datafile = open("/tmp/newfile.txt") - # Check if the brick is mounted - for i in path: - string_to_search = i - rcode, rout, rerr = g.run_local( - 'grep %s %s' % (string_to_search, "/tmp/newfile.txt")) - if rcode == 0: - raise ConfigError("Particular %s brick entry is found" % i) - datafile.close() - - out = g.run(self.heketi_client_node, "rm -rf /fstab") - self.assertTrue(out, ("Failed to delete a file /fstab")) - g.log.info("Successfully removed /fstab") - out = g.run_local("rm -rf /tmp/newfile.txt") - self.assertTrue(out, ("Failed to delete a file /tmp/newfile.txt")) - g.log.info("Successfully removed /tmp/file.txt") |