summaryrefslogtreecommitdiffstats
path: root/openshift-storage-libs
Commit message (Collapse)AuthorAgeFilesLines
* Fix test cases skipped due to closed bugsvamahaja2019-08-192-1/+98
| | | | | | | | Add fix to test cases which are skipped due to bugs - BZ-1644685, BZ-1652913, BZ-1634745, BZ-1635736, BZ-1636477, BZ-1641668 Change-Id: I03a7f7dddaba5d3e41770969352b2263c84cb920 Signed-off-by: vamahaja <vamahaja@redhat.com>
* Add OCS version check for test casesvamahaja2019-08-141-0/+179
| | | | Change-Id: I4196cb1395a3720e03f62473d11e5f46d797c355
* Add TC restart app pod when target node is downNitin Goyal2019-08-134-0/+375
| | | | | | | | | | | New TC insures that app pod is restarted properly when one of the target node is down. This patch includes libs of vmware api These libraries can perform VM operations like power on and off via vmware client api's. Change-Id: I11ad4dc3318cb0583de5882d8067ed7e30ea9962
* Reuse more common functions in the GlusterStabilityTestSetupvamahaja2019-08-131-1/+4
| | | | | Change-Id: Ia4e0fb737b16ea7bdc8ffd5ae44cdd418471552a Signed-off-by: vamahaja <vamahaja@redhat.com>
* Move "node reboot" logic from test case to librarySri Vignesh2019-08-121-0/+47
| | | | | | | | | Separate node reboot functionality from single test case to re-use it at other places. Update test case accordingly. Change-Id: Ib9a7f15d29237e4f21aafc408c074e799e706740 Signed-off-by: Sri Vignesh <sselvan@redhat.com> Signed-off-by: vamahaja <vamahaja@redhat.com>
* Workaround BZ-1727360 in the "get_gluster_pod_names_by_pvc_name" funcvamahaja2019-08-072-63/+71
| | | | | | | | | | "get_gluster_pod_names_by_pvc_name" function depends on the ocp3.11 specific shell command, which fails on old OCP versions. So, fix it by getting info in compatible way. Also, update usages of this function with new return data structure. Change-Id: Ibb8559590a1288c032630b3292f631d28bc87263 Signed-off-by: vamahaja <vamahaja@redhat.com>
* Add test case where BHV and BV are created and deletedkasturiNarra2019-07-191-0/+30
| | | | | Change-Id: I7ead23c46a472fee70d684c45f32f5e4efb0674f Signed-off-by: kasturiNarra <knarra@redhat.com>
* Add TC run IOs when tcmu-runner service is downNitin Goyal2019-07-191-5/+10
| | | | | | | | This test case verifies that when tcmu-runner is down we are able to run IOs on block volumes, and stoping tcmu-runner would effect gluster-blockd and gluster-block-target services. Change-Id: I0b4a23f7c2dce909f07a22893f83a6c1d0285091
* Fix logic for recreation of SSH connectionsValerii Ponomarov2019-07-161-9/+51
| | | | | | | | | | Before, in case we had some constant networking issue trying to connect to a host, we were falling into the endless loop of connection recreation. The error we got after it is the 'recursion limit exceeded'. It is unexpected. So, change this logic making it avoid recursion and do just one connection recreation attempt which is useful to fix broken connections. Change-Id: Id808edbad7e6d69ad58a75bfbae176fddb173d18
* Make Heketi commands run on a Heketi POD when main command failsValerii Ponomarov2019-07-111-295/+126
| | | | | | | | It happens that heketi client located out of the Heketi POD may fail not reaching the server side. So, add back-up approach where we run Heketi commands on a Heketi POD when main commands fail. Change-Id: Ie6ae5be82082f34426f9288b02575e3abd4940f5
* Add TC run IOs when gluster-blockd service is downnigoyal2019-07-091-0/+15
| | | | | | | New TC verifies that it is possible to run IOs on block volumes when gluster-blockd service is down. Change-Id: Ia1de14d2990f833221f6725e9b0e48d77ef85c10
* Separate out gluster-block stability TCNitin Goyal2019-07-051-0/+52
| | | | | | | move gluster-block stability TC to new module named 'gluster_stability/test_gluster_block_stability.py'. Change-Id: Iac1f432e438a2815bdc2115ab19e0170e46930c1
* Add state arg in *_service_status_* libs in openshift-ops moduleNitin Goyal2019-07-021-5/+14
| | | | | | | | Before, these libraries could be used for 'active' state only. Make it accept one additional 'state' argument for possibility to use it for any state, not just one. Change-Id: I6d4fbd7584b308e3ad248213cb0ec3f4996f6437
* Add TC resize PVC with invalid sizeArun Kumar2019-07-011-1/+1
| | | | | | | | This test case checks if invalid size is passed, size of PVC does not change. Verify the size of PVC and I/O can be performed on the volume attached to PVC. Change-Id: Ia833c76a6d9990ebbac78759c54dc7d28f530ec6
* Fix 'get_active_and_enabled_devices_from_mpath' libraryNitin Goyal2019-06-211-1/+1
| | | | | | | Sometimes grep cmd shows '--' symbol. Which is breaking code. So changed the code to exclude '--' via grep cmd. Change-Id: I3ef903e19196b2d0d70e074a676881725240983b
* Use 'cmd_run' func instead of 'g.run' func in openshift_ops.pyValerii Ponomarov2019-05-293-150/+46
| | | | | | | | | | | | | It will allow us to recreate SSH connections when it is broken. Also, do following additional things: - Fix 'podcmd' module, where 'user' argument for 'g.run' is missing in it's wrapper. - Use "g.log.error" command to log errors when they appear inside of the 'cmd_run' func. - Delete several unused commands, instead of fixing them. - Update several test cases's logic due to the changes in the libraries. Change-Id: I908e5adcff739b6ab3a4aefaebfe46abdee22655
* Make g.run recreate SSH connection in case of it's breakageValerii Ponomarov2019-05-291-0/+25
| | | | | | | | | | It happens, that saved SSH connection gets corrupted and we get errors trying to run commands on remote machines. So, to avoid such problem, monkey-patch Glusto's special method for getting SSH connections with ourselves-crafted method which recreates SSH connection in case it is broken. Change-Id: Iee69d21f3e23541480653205d86fefef2d842d34
* Fix 'test_pv_resize_by_exact_free_space' tcValerii Ponomarov2019-05-292-2/+12
| | | | | | | | | | | | It was broken it 2 places: - It is first tc in the 'resize' test suite, which runs right after OCP API restart. And it happens to fail to talk to the OCP API. So, fix it by adding API service waiter in place where we restart it. - In this tc we delete huge volume which consumes almost whole disk space. And happens that this operation takes up to the 6 minutes. But we were waiting only for 5 minutes. So, just increase timeout. Change-Id: Ic6ada67b96ac8a37d13f57c0576e862226517b0d
* Make 'validate_multipath_pod' func raise exceptions in case of errorsValerii Ponomarov2019-05-281-39/+21
| | | | | | | | | Now, this function hides info about the real problem which caused error So, make it raise exceptions in place with info about error for ease of debugging. Also, fix it's usage providing mpath always. Change-Id: I8cbc62a12f3999e3d64fb6b504865f30b1602cf1
* Make 'command.cmd_run' func be resistable to broken SSH connectionsValerii Ponomarov2019-05-241-0/+4
| | | | | | | It happens that we get "No ssh connection" errors from time to time. So, avoid such errors recreating SSH connections if such error appears. Change-Id: Idc71c4ceece6b3040c396b25da1deadcefd29b60
* Add TC expansion of block hosting volume using heketiNitin Goyal2019-05-231-0/+34
| | | | | | | This TC verify the expanshion of BHV and after expanding volume verify that space is usable. Change-Id: I2621aedc1cbddcad374fe52013aba2d48acfd1e0
* Add TCs creation of block vol greater than default size of BHVNitin Goyal2019-05-031-0/+39
| | | | | | | The purpose of TCs is to validate that block device size cannot be more than the block hosting volume. Change-Id: I35aac44bdc2b3e72f1de9ab167e1468ece932f14
* Use py2/3 compatible string type checksNitin Goyal2019-04-152-4/+4
| | | | | | | Replace usage of "types.StringTypes" with "six.string_types", because the latter one is compatible with both - py2 and py3. Change-Id: Ie8f9495914fca527da086af0915130470e3fd3e0
* Fix 'get_events' func for 3.9-3.11 OCP versionsNitin Goyal2019-04-151-1/+1
| | | | | | | As part of the fix we are fixing "AttributeError: 'str' object has no attribute 'append'" in 'get_events' func Change-Id: Ica2489e2d48f9ec8065fe0863b6c5d1633e93860
* Fix support of OCP3.6 and 3.7Valerii Ponomarov2019-04-113-6/+30
| | | | | | | Project has lots of inconsistencies with OCP3.6 and 3.7 So, fix it. Change-Id: I8d38773637b779e1c2e1631568f100c1ab1fdd50
* Add py3 support to our tox config and fix several incompatibilitiesValerii Ponomarov2019-04-117-17/+39
| | | | | | | | | | | | | | | | | | Required steps to run test cases using py3: 1) Install py3 2) Install 'tox' package using "pip3" 3) Run test cases using tox package installed via pip3 Note that full py3 support is not tested yet. It only allows you to run it on py3 not providing any guarantees. Example: $ python3 -m tox -e functional3 -- \ glusto -c /path/to/the/config/file.yaml \ '--pytest=-v -rsx tests -k test_glusterblock_logs' Change-Id: I610faac0b75364c401734b6f892649893ca2320e
* Unskip TCs with recreation of Gluster PODsValerii Ponomarov2019-03-191-0/+7
| | | | | | | | BZ-1632873 was fixed, hence, unskip test cases which were skipped due to this BZ. Also, make it run only on containerized Gluster clusters. Change-Id: Iee49a303c4f191652d1c94c18e830e6d2fb4e381
* Add timeouts for heketi commandsValerii Ponomarov2019-03-191-0/+32
| | | | | | | | | | | | | | | It happens, that Heketi commands hang. So, to avoid cancelling of whole test runs, add timeouts for Heketi commands. By default, timeout is 120 sec (2 min). If it is needed to change default value, then define following config option: common: heketi_command_timeout: 180 Change-Id: I79f33daa05bde9a37245e94e66042944c6cd9242
* Reorder lib files removing redundant dir layerValerii Ponomarov2019-03-1816-0/+4600
Move all the files of 'cns-libs/cnslibs/common' dir to the 'openshift-storage-libs/openshiftstoragelibs', because 'common' is the only dir there, which doesn't really makes sense. And "cns" is old project name, so, replace it with "openshift-storage-libs". Also, fix all the imports of these libs. Change-Id: Ife00a73554e73b21b214b15016b0c8dbbf423446