summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* [LibFix][TestFix] Add function get_unique_lv_list_from_all_serversSri Vignesh2020-01-281-11/+7
| | | | | | | | Added library to cleanup lv created after snapshot clone and made modifications with cleanup. Change-Id: I71a437bf99eac1170895510475ddb30748771672 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [Testfix] Reduced number of created files. Deleted not needed loggingkshithijiyer2020-01-271-109/+40
| | | | | | | Change-Id: Id0cdda175865c84bef917211560acee8ea10fe7b Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test]Creating/Deleting sparse files should be consistent to reflect ↵kshithijiyer2020-01-241-0/+164
| | | | | | | | | | | | | | | | | | available space Testcase: - note the current available space on the mount - create 1M file on the mount - note the current available space on the mountpoint and compare with space before creation - remove the file - note the current available space on the mountpoint and compare with space before creation Change-Id: Iff017039d1888d03f067ee2a9f26aff327bd4059 Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test] Added test case to copy directorykshithijiyer2020-01-241-0/+227
| | | | | | | | | | | Description: This test creates directories and subdirectories and their copies at mount point and checks for layout and directory information at all subvols. Change-Id: Iabce046e7ce63c5428061bcefb98d06359dac8bd Co-authored-by: Kartik_Burmee <kburmee@redhat.com> Signed-off-by: Kartik_Burmee <kburmee@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [testfix] Use library methods in test_256_snapsVinayak Papnoi2020-01-231-109/+101
| | | | | | | | | | | | | | The test case 'test_256_snapshots.py' contains hard-coded commands which can be run using the existing library functions from the snap_ops.py library, such as: * snap_create * set_snap_config This patch includes usage of appropriate functions in place of the hard-coded commands along with various cosmetic changes. Change-Id: I6da7444d903efd1be6582c8fea037a5c4fddc111 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [Test] Adding testcase to verify volume sanitykshithijiyer2020-01-221-0/+84
| | | | | | | | | | | | | | | | | Summary: Verify file/directory creation or deletion on volume doesn't leave behind any broken symlinks on the bricks. Steps: 1.Create 10 files and directories. 2.Check if broken symlinks are present on brick path. 3.Remove files and directories. 4.Check if broken symlinks are present on brick path. Change-Id: If65a5eaa0fe0e1b96f002496744580e0ede5a4af Co-authored-by: Sunil Kumar Acharya <sheggodu@redhat.com> Signed-off-by: Sunil Kumar Acharya <sheggodu@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [libfix][testfix] Add waiter function for glusterd and peer connected ↵Sri Vignesh2020-01-211-32/+12
| | | | | | | | | library files Moving waiters from testcase and adding it as function in library in gluster_init and peer_ops. Change-Id: I5ab1e42a5a0366fadb399789da1c156d8d96ec18 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [test] Use assertion inside test_snap_auto_deleteVinayak Papnoi2020-01-211-108/+128
| | | | | | | | | | | | | | | | | | | 'ExecutionError' must not be used inside the test case function. Replacing 'ExecutionError' raised in test case function with assert statements. Changed the name of the snapshots being created to something specific to the test case to avoid redundancy with the other test cases. Segregating the setUp and tearDown functions. Adding the description for the test case function. Changing the test case name for something specific to the component (snapshot). Fixing the typo errors and various cosmetic changes. Change-Id: I24f271cdb7a180ecde8efa21185b4a8f807be203 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [lib] Adding geo-rep params in gluster_base_class.pykshithijiyer2020-01-162-9/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | Adding params in gluster_base_class.py to store value of root user's password and non-root user's name, group and password. sync_method will be mentioned inside the testcase as there are testcases which are only specific to one of the sync type and it doesn't make sense to add it in the config file. Instead we'll write testcase as shown below: ``` class georeptestcase(baseclass): run_chmod_with_changelog_crawl(sync_type): # Steps of the testcase test_chmod_with_changelog_crawl_rsync(): # Calling function with rsync as sync_type. run_chmod_with_changelog_crawl('rsync') test_chmod_with_changelog_crawl_tarssh(): # Calling function with tarssh as sync_type. run_chmod_with_changelog_crawl('tarssh') ``` Change-Id: Ie65f542e76bfbee89ac2914bdcd086e1bd08dfdb Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Fix] Removing additonal underscore(_) from testcase name.kshithijiyer2020-01-161-2/+2
| | | | | Change-Id: Idcc40442869cb3e44873625887409592d9e0710d Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Quota] Verify quota is honored during rebalanceVinayak Papnoi2020-01-161-0/+207
| | | | | | | | | | | | When quota limit is reached, if an add-brick followed by rebalance is performed, then the previous quota limits should be honoured. No new files should be created because the quota limits have reached. Change-Id: I37da02ce292e6a7bc614cf888aac69ea109f84f5 Signed-off-by: Sanoj Unnikrishnan <sunnikri@redhat.com> Co-authored-by: Sanoj Unnikrishnan <sunnikri@redhat.com> Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [TC] Snapshot + glusterd: Status of snapshot after glusterd restartkshithijiyer2020-01-161-0/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Checking the status of snapshot informations before and after restarting glusterd. Test case: 1. Create volume 2. Create two snapshots with description 3. Check snapshot status informations with snapname, volume name and without snap name/volname. 4. Restart glusterd on all nodes 5. Follow step3 again and validate snapshot History of the patch: The testcase was failing in CentOS-ci due to bug [1], However this bug was defered for fix. Post updating the code with the workaround mentioned below, it was observed that glusterd restart was failing due to bug [2]. And now as the both the bugs are fixed this patch is safe to merge. Workaround: Now the only possible workaround for this is to modify the function get_snap_info_by_volname() to not use --xml option and directly run the command which will dump the output as string which can be directly used in the testcase. This modification in the library function will not impact any other testcase. Links: [1] https://bugzilla.redhat.com/show_bug.cgi?id=1590797 [2] https://bugzilla.redhat.com/show_bug.cgi?id=1782200 Change-Id: I26ac0aaa5f6c8849fd9de41f506d6d13fc55e166 Co-authored-by: srivickynesh <sselvan@redhat.com> Signed-off-by: srivickynesh <sselvan@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* TC to check if EC version and size updates when another brick is downubansal2020-01-081-0/+258
| | | | | Change-Id: I33e75fe773ee26a2d205f5ebd29198968bfe6c59 Signed-off-by: ubansal <ubansal@redhat.com>
* [Doc] Changing all text files to markdown fileskshithijiyer2020-01-085-56/+65
| | | | | Change-Id: I36949296607b09e66ce0a56029359481c0b76b8b Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [TC] Validation of brick status after node rebootBala Konda Reddy M2020-01-071-0/+178
| | | | | Change-Id: I0c20652d598c198b58871724e354f2fe803c1243 Signed-off-by: Bala Konda Reddy M <bmekala@redhat.com>
* [Fix] Remove variable script_local_path/script_abs_path(Part 4)kshithijiyer2020-01-0718-52/+26
| | | | | | | | Please refer to the commit message of the below patch: https://review.gluster.org/#/c/glusto-tests/+/23902/ Change-Id: I1df0324dac2da5aad4064cc72ef77dcb5bf67e4f Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Fix] Remove variable script_local_path(Part 3)kshithijiyer2020-01-0729-89/+29
| | | | | | | | Please refer to the commit message of the below patch: https://review.gluster.org/#/c/glusto-tests/+/23902/ Change-Id: Icf32bb20b7eaf2eabb07b59be813997a28872565 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Fix] Remove variable script_local_path(Part 2)kshithijiyer2020-01-0732-96/+32
| | | | | | | | Please refer to the commit message of the below patch: https://review.gluster.org/#/c/glusto-tests/+/23902/ Change-Id: I0d2eeb978c6757d6d910ebfe21b07811bf74b80a Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Fix] Remove variable script_local_path(Part 1)kshithijiyer2020-01-0730-93/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing script_local_path as both script_local_path and cls.script_upload_path hold the same values which makes each script slow. This will help decrease the execution time of the test suite. PoC: $cat test.py a = ("/usr/share/glustolibs/io/scripts/" "file_dir_ops.py") b = ("/usr/share/glustolibs/io/scripts/" "file_dir_ops.py") $time python test.py real 0m0.063s user 0m0.039s sys 0m0.019s $cat test.py a = ("/usr/share/glustolibs/io/scripts/" "file_dir_ops.py") $time python test.py real 0m0.013s user 0m0.009s sys 0m0.003s Code changes needed: From: script_local_path = ("/usr/share/glustolibs/io/scripts/" "file_dir_ops.py") cls.script_upload_path = ("/usr/share/glustolibs/io/scripts/" "file_dir_ops.py") ret = upload_scripts(cls.clients, script_local_path) To: cls.script_upload_path = ("/usr/share/glustolibs/io/scripts/" "file_dir_ops.py") ret = upload_scripts(cls.clients, cls.script_upload_path) Change-Id: I7908b3b418bbc929b7cc3ff81e3675310eecdbeb Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [py2to3] Fix bunch of py3 incompatibilitiesValerii Ponomarov2020-01-027-42/+66
| | | | | Change-Id: I2e85670e50e3dab8727295c34aa6ec4f1326c19d Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [TC] Gluster cli reset commands behaviour with brick muxkshithijiyer2019-12-231-0/+213
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Test case steps: 1. Set cluster.brick-multiplex to enabled. 2. Create and start 2 volumes of type 1x3 and 2x3. 3. Check if cluster.brick-multiplex is enabled. 4. Reset the cluster using "gluster v reset all". 5. Check if cluster.brick-multiplex is disabled. 6. Create a new volume of type 2x3. 7. Set cluster.brick-multiplex to enabled. 8. Stop and start all three volumes. 9. Check the if pids match and check if more than one pids of glusterfsd is present. Additional library fix: Changing the command in check_brick_pid_matches_glusterfsd_pid() as it won't work when brick-mux is enabled. From: cmd = ("ps -eaf | grep glusterfsd | " "grep %s.%s | grep -v 'grep %s.%s'" % (volname, brick_node, volname, brick_node)) To: cmd = "pidof glusterfsd" Change-Id: If7bdde13071732b176a0a2289635319571872e47 Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/glusterd'. Part 2Valerii Ponomarov2019-12-1830-109/+125
| | | | | Change-Id: I1395e14d8d0aa0cc6097e51c64262fb481f36f05 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/glusterd'. Part 1Valerii Ponomarov2019-12-1832-95/+94
| | | | | Change-Id: Ib414b8496ca65a48bbe42936e32a863c9c1072e4 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/dht'Valerii Ponomarov2019-12-1824-109/+134
| | | | | Change-Id: I44fe85519c8fd381064670e54dac8736107b0928 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support for tests in 'tests/functional/afr'Valerii Ponomarov2019-12-1831-284/+408
| | | | | Change-Id: Ic14be81f1cd42c470d2bb5c15505fc1bc168a393 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/nfs_ganesha'Valerii Ponomarov2019-12-189-83/+91
| | | | | Change-Id: I7a76e0c2e491caffd7ba1b648b47c4c6a687c89a Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/arbiter'Valerii Ponomarov2019-12-1716-124/+171
| | | | | Change-Id: I5a60646b984557ed024cb4b3a8088ce7dfb7622c Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [TC] Adding tc to verify data corruption during full heal with reboot.kshithijiyer2019-12-171-0/+250
| | | | | | | | | | | | | | | | | | | | | This test case verifies that disruption during full heal doesn't result in data corruption. Testcase steps: 1.Create IO from mountpoint. 2.Calculate arequal from mount. 3.Delete data from backend from the EC volume. 4.Trigger heal full. 5.Disable Heal. 6.Again Enable and do Heal full. 7.Reboot a Node. 8.Calculate arequal checksum and compare it. Change-Id: I1fac53df30106ff98fdd270b210aca90a53a1ac5 Co-authored-by: Sunil Kumar Acharya <sheggodu@redhat.com> Signed-off-by: Sunil Kumar Acharya <sheggodu@redhat.com> Signed-off-by: Karan Sandha <ksandha@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/snapshot'Valerii Ponomarov2019-12-1734-156/+230
| | | | | Change-Id: Ie408d7972452123b63eb5cc17c61bc319a99e304 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/samba'Valerii Ponomarov2019-12-171-4/+8
| | | | | Change-Id: Iae0f6e729c26e466d82c4133439bdd7021485e7f Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/arbiter/brick_cases'Valerii Ponomarov2019-12-175-33/+43
| | | | | Change-Id: Ieecf4707ee6cb7b3c58380306bf105e282986b1b Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* This test case verifies reset of brick for an EC volumeubansal2019-12-121-0/+596
| | | | | Change-Id: Iafa09988617e2e29942aa6ceb003eac2ddf2b561 Signed-off-by: ubansal <ubansal@redhat.com>
* [py2to3] Add py3 support for tests in 'tests/functional/afr/heal'Valerii Ponomarov2019-12-127-42/+60
| | | | | Change-Id: Id4df838565ec3f9ad765cf223bb5115e43dac1c5 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/fuse_subdir'Valerii Ponomarov2019-12-1214-32/+56
| | | | | Change-Id: I56194047ac6105cddb43d3f413b03bcdbbcde587 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support for tests in 'tests/functional/quota'Valerii Ponomarov2019-12-1218-61/+74
| | | | | Change-Id: I39ed09ee91a345daae7bb675184a8a30d48575fa Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/disperse'Valerii Ponomarov2019-12-125-27/+44
| | | | | Change-Id: I308f95d16ac18ec80c5c78aac9152d9ae41449bb Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support in 'tests/functional/glusterfind'Valerii Ponomarov2019-12-127-25/+25
| | | | | Change-Id: I5b36fe5144ebca05d17fb14e05b5dc75c63f7a29 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support for tests in 'tests/functional/authentication'Valerii Ponomarov2019-12-127-9/+9
| | | | | Change-Id: I1c568a43bb635720a4aedc75ba844a4f499130fe Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* This TC is to check FOP in a EC volume with redundant bricks downubansal2019-12-101-0/+350
| | | | | Change-Id: I97bcbc3f9b75129be833ffa7def1b00cfd32a474 Signed-off-by: ubansal <ubansal@redhat.com>
* [py2to3] Add py3 support for tests in 'tests/functional/bvt'Valerii Ponomarov2019-12-093-8/+8
| | | | | Change-Id: I8b8aad4c3e4a2ad924478f1842498289323b7098 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [Fix] Rename testcase test_enabling_brix_mux.py to test_enabling_brick_mux.pykshithijiyer2019-12-091-1/+1
| | | | | Change-Id: I5c9693008d0f26dda2a51916ee9a637b310f4d5d Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [TC] CLI Check for brick multiplexingVitalii Koriakov2019-12-092-0/+127
| | | | | | | | | | | | | | | | Test case: - check if brick multiplex is disable by default - check for warning message triggering by setting brick-multiplex and choosing 'n' in y/n - check if brick multiplex is disabled after triggering warning message - check brick multiplex for all possible statuses (positive and negative) - check for brick multiplex status in /var/lib/glusterd/options file Change-Id: If1f2cba0b932837716f577bd6c4d113659975f91 Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [DHT] : Changing the arguments passed to a function.sayaleeraut2019-12-091-2/+2
| | | | | | | | | | | | Earlier arguments passed to function log_volume_info_and_status in the code were (self.mnode, self.volume), which is incorrect. The function takes arguments as (mnode, volname). Changing the second incorrect argument self.volume to self.volname for the function log_volume_info_and_status at all its occurances in the code. Change-Id: If9bca96679f37c2d7cbcf0f34a16df8549110e21 Signed-off-by: sayaleeraut <saraut@redhat.com>
* [lib]:Adding the default configs for arbiter and dist-arbitersayaleeraut2019-11-291-0/+11
| | | | | | | | | | | Adding the default configurations for arbiter and distributed- arbiter volume types, as it was missing from the gluster_base_class.py. Adding Arbiter and Distributed arbiter configuration in the glusto_tests_config.yml Change-Id: Ic078505975ff1a1171a4bc6ee6ad2c67f0fb45f1 Signed-off-by: sayaleeraut <saraut@redhat.com>
* [py2to3] Refactor gluster_base_class.pyValerii Ponomarov2019-11-281-2/+2
| | | | | | | | | | | | | | | | | | Following changes were implemented: - Delete unused imports and place used ones in the alphabetical order. Imports are splitted into 3 groups: built-ins, third-parties and local modules/libs. - Make changes to support py3 in addition to py2. - Minimize number of code lines keeping the same behaviour and improving readability. - Add possibility to get 'bound' (cls) methods using 'get_super_method' staticmethod from base class. Before it was possible to call only unbound (self) methods. - Update 'test_add_brick.py' module as PoC for running base class bound methods in both - py2 and py3. Now this module py2/3 compatible. Change-Id: I1b66b3a91084b2487c26bec8763ab2b4e12ac482 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add method to the base class for proper calling of it's methodsValerii Ponomarov2019-11-221-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lots of test classes are wrapped by the 'runs_on' decorator. This decorator replaces original test class with it's copy where parent class is original test class if we use py3. Such situation leads to the impossibility to use following approach in py3: super(SomeClass, some_class_instance).some_method() And, the above approach is py2/3 compatible approach for calling parent class's methods. The problem we face is that we fall into the unexpected recursion here. So, add 'get_super_method' to the base class, which detects such situation and returns proper method of a proper parent class. Also, fix test class located at 'glusterd/test_peer_status.py' module to have proof of concept. With this change 'test_peer_probe_status' test case becomes completely py2/3 compatible. Example of new method usage: @runs_on([['distributed'], ['glusterfs']]) class TestDecoratedClass(GlusterBaseClass): ... def setUp(self): self.get_super_method(self, 'setUp')() ... This approach must be used instead of existing calls of 'im_func' function if we want to support both at once - python2 and python3. Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com> Change-Id: I23f4462b64f9d4dd90812273f08fb756d073ab76
* [py2to3] Replace usage of ".iteitems()" attr with ".items()"Valerii Ponomarov2019-11-211-2/+2
| | | | | | | | Dict attribute called "iteritems()" is not supported in the py3. So, replace it's usage with another similar attr called "items()". Change-Id: I130b7f67f0a2d5da5ed6c3d792f5ff024ba148f4 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [Snapshot] Fix teardown for test_snap_scheduler_statusVinayak Papnoi2019-11-211-57/+83
| | | | | | | | | | | | The tearDown function was incomplete where, since the test case has enabled the shared storage, it needs to be disabled as part of the tear down. This fix includes the addition of the necessary tearDown parts along with some cosmetic changes. Change-Id: Id421c840a1c7606ecf185c9520ca436d47911f45 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [TC] Resubmitting testcase test_glusterd_quorum_validation after bug fixkshithijiyer2019-11-211-0/+301
| | | | | | | | | | | | | | | | | | | As the below mentioned bug is fixed resubmitting testcase: https://bugzilla.redhat.com/show_bug.cgi?id=1690753 Test case: -> Creating two volumes and starting them, stop the second volume -> Set the server quorum and set the ratio to 90 -> Stop the glusterd in one of the node, so the quorum won't meet -> Peer probing a new node should fail -> Volume stop will fail -> Volume delete will fail -> Volume reset will fail -> Start the glusterd on the node where it is stopped -> Volume stop, start, delete will succeed once quorum is met Change-Id: Ic9dea44364d4cb84b6170eb1f1cfeff1398b7a9b Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* Adding test case : test_no_glustershd_with_distributeMilind Waykole2019-11-201-0/+176
| | | | | | | Change-Id: I12b5586bdcef128df64fcd8a0ba80f193395f313 Co-authored-by: Vijay Avuthu <vavuthu@redhat.com> Signed-off-by: Vijay Avuthu <vavuthu@redhat.com> Signed-off-by: Milind Waykole <milindwaykole96@gmail.com>