summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [py2to3] Delete 'GlusterBlockBaseClass'Valerii Ponomarov2019-11-281-646/+1
| | | | | | | | | For following reasons: - It is unused. - It is not compatible with py3. Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com> Change-Id: Ied6373c398406ffd08d7673892fde89ec6e04fe2
* [py2to3] Replace "print" statement with "print()" functionValerii Ponomarov2019-11-223-48/+50
| | | | | | | | "print" statement is not supported in py3. So, start using "print()" function everywhere in the code. Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com> Change-Id: I5b3e39ce5d4973959d7cedd0aac6fc744e2fe7ef
* Add possibility to run functional cases in py2/3 using toxkasturiNarra2019-11-221-0/+22
| | | | | | | | | | | | e.g: tox -e functional -- glusto -c config.yaml \ --pytest='-v -x tests -k test_foo' and tox -e functional3 -- glusto -c config.yaml \ --pytest='-v -x tests -k test_foo' Change-Id: I7ffd0beb5787b65a8e26a25a441ecc415f581df6 Signed-off-by: kasturiNarra <knarra@redhat.com>
* [Tool] Adding tool to setup passwordless ssh from glusto-test conf file.kshithijiyer2019-11-223-0/+225
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As glusto-tests needs passwordless ssh configured for all severs and clients. This can sometime be an issue when you have a large number of nodes. Adding this tool would enable us to setup passwordless ssh to all the nodes from any given glusto-tests config file. The tool is a simple python3 commandline tool which will take glusto-tests config file and password and use sshpass and ssh-copy-id to setup passwordless ssh to all nodes from the master node. Pasting the help menu of the tool to give a better picture of what can be done with the tool. usage: setup_passwordless_ssh [-h] [-c CONFIG_FILE] [-p PASSWORD] [-u USERNAME] Tool to setup passwordless ssh to all nodes. optional arguments: -h, --help show this help message and exit -c CONFIG_FILE, --config_file CONFIG_FILE A glusto-tests configuration file. -p PASSWORD, --password PASSWORD Password of servers. -u USERNAME, --username USERNAME User to be used to setup passwordless ssh. Change-Id: I491cdd975719e29b7e8f43ce548b42f2ad59a4b9 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [py2to3] Add method to the base class for proper calling of it's methodsValerii Ponomarov2019-11-222-3/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-215-9/+9
| | | | | | | | 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>
* [TC] Test quota limits are honored on rebalance + healkshithijiyer2019-11-181-0/+196
| | | | | | | | | | | | | | | | | | | | Test case: * Enable quota on the volume. * Set hard and soft time out to zero. * Create some files and directories from mount point so that the limits are reached. * Perform add-brick operation on the volume. * Start rebalance on the volume. * While rebalance is running, kill one of the bricks of the volume and start after a while. * While rebalance + self heal is in progress, create some more files and directories from the mount point until limit is hit. Change-Id: Ic7d2ac92b4e132ab1018242c17bed5e888e86cf3 Co-authored-by: Sanoj Unnikrishnan <sunnikri@redhat.com> Signed-off-by: Sanoj Unnikrishnan <sunnikri@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [TC] Testcase to test that statvfs calls honor quota limits.Sanoj Unnikrishnan2019-11-181-0/+120
| | | | | | | | | | | | | | Test statvfs calls return appropriate avaialable size with quota. * Enable Quota * Save the result from statvfs call * Set Quota limit of 1 GB on the root of the volume * Validate statvfs call honors quota * Remove quota limit from the Volume * Validate statvfs call reports old value of avialable space Change-Id: I5f6271e0acdba13d483eb321f62ca9fdc5360859 Signed-off-by: Sanoj Unnikrishnan <sunnikri@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [TC] Posix Compliancekshithijiyer2019-11-041-3/+94
| | | | | | | | | Adding test case to check posix compliance for nfs ganesha Change-Id: I8188fba9245cfe27ae30b7818cfe7d2b624e9d87 Signed-off-by: Ambarish Soman <asoman@redhat.com> Signed-off-by: Arjun Sharma <arjsharm@redhat.com>
* Test to verify failover when sub directories are mounted on fuse clientsJilju Joy2019-11-041-0/+196
| | | | Change-Id: Iec8471de0add8cb6eaf6c80fb24c631e992aad4d
* [fix] Turning off only client side heal option at the start of the testMilind Waykole2019-10-231-8/+10
| | | | | | | | | | | | | | Earlier in the testcase we were turning off shd which is not correct and we have to turn off only client side heal options as mentioned below metadata-self-heal entry-self-heal data-self-heal After renaming files we have to turn on these options while doing a look up from client Change-Id: I8c76abb8e79620c412e5991f5d8255b6b2a850e8 Signed-off-by: Milind Waykole <milindwaykole96@gmail.com>
* nfs-ganesha: Modifying test case based on latest librariesJilju Joy2019-10-231-8/+58
| | | | | Change-Id: I2afd326fe0df1959a8fd20bc7325159688c1a73e Signed-off-by: Jilju Joy <jijoy@redhat.com>
* TC: test_add_brick_while_remove_brick_is_in_progressPrasad Desala2019-10-201-1/+10
| | | | | | | | | | Add-brick command failure is leaving the directories created on the backend bricks which is resulting in the failure of the subsequent cases. Added some changes to clean the bricks. Change-Id: I108efbcaef2010f6fd52c334446059f96fff3741 Signed-off-by: Prasad Desala <tdesala@redhat.com>
* Test rebalance operation when quorum not metRajesh Madaka2019-10-161-0/+161
| | | | | | | | | | | | | | | -> Create volume -> Stop the volume -> Enabling serve quorum -> start the volume -> Set server quorum ratio to 95% -> Stop the glusterd of any one of the node -> Perform rebalance operation operation -> Check gluster volume status -> start glusterd Change-Id: I3bb42a83414dbcabdc61178e11d584eaf90c3b40 Signed-off-by: Rajesh Madaka <rmadaka@redhat.com>
* [Fix] Adding count++ to prevent test from running in infinite loopyinkui2019-10-152-0/+4
| | | | | | | | | In a few testcases in glusterd count++ is missing due to which the testcase in an infinite loop. Fixing that and sending patch. Change-Id: I56a355f6ea3ae79231e09d7aee80031da3ebec52 Signed-off-by: yinkui <13965432176@163.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* Enabling client side heal,as client side heal is disabled by default in RHGS 3.5milindw962019-10-151-5/+42
| | | | | | Change-Id: I7f8769defd34d55d8eec720c40ed55e69523f917 Signed-off-by: Anees Patel <anepatel@redhat.com> Signed-off-by: milindw96 <milindwaykole96@gmail.com>
* Modifying ACL test fileArjun Sharma2019-10-101-8/+50
| | | | | | | | | Since the NfsGaneshaVolumeBaseClass has been removed the ACL test needs to be modified to use the alternative method to the above mentioned class. Change-Id: I398dfef6dd334a3e3f3871d44705af312d81318a Signed-off-by: Arjun Sharma <arjsharm@redhat.com>
* fuse-subdir: Revertig the change made in patch 22019Jilju Joy2019-10-071-3/+4
| | | | | | | | | * The issue with disperse and distributed-disperse volume types are now fixed. * Reference : Bugzilla 1663375 * Using mount object instead of clients list for setting authentication Change-Id: I914cee7fb790dc65e947e0b6db40d02e23575e65 Signed-off-by: Jilju Joy <jijoy@redhat.com>
* Using set_acl in the testcase as existing functions are removedBala Konda Reddy M2019-10-031-3/+5
| | | | | | | | | | | Earlier in nfs_ganesha_ops, two library functions enable_acl, disable_acl were implemented and later with changes to NFS Ganesha Base class both the functions are removed and made into single function set_acl. Change-Id: I5456adeeffa49c35a5ea19c8d11272f91ec4bdbf Signed-off-by: Bala Konda Reddy M <bmekala@redhat.com>
* Using egrep instead of grepArjun Sharma2019-09-261-1/+1
| | | | | | | | | Since egrep treats a pattern as extended regular expression it is more suited to be used in this case. The current usage of grep fails to identify the expression after the first pipe. Change-Id: Id02f884356048c56066a406937f8d86456ee8bd7 Signed-off-by: Arjun Sharma <arjsharm@redhat.com>
* Added AD integration, winbind services nmb services ctdb servicesvivek das2019-09-261-5/+410
| | | | | | | Change-Id: I5c9c6ce48a973c6c902186f4e62afda196faf442 Signed-off-by: vivek das <vdas@redhat.com> Signed-off-by: srivickynesh <sselvan@redhat.com> Signed-off-by: vivek das <vdas@redhat.com>
* Removing redundant classes:Arjun Sharma2019-09-251-247/+1
| | | | | | | | NfsGaneshaVolumeBaseClass and NfsGaneshaIOBaseClass are essentially not needed and act as redundant. Change-Id: I45f95e018daa4bf9575f4e831111f91615085bdc Signed-off-by: Arjun Sharma <arjsharm@redhat.com>
* Removing redundant method 'run_refresh_config'Jilju Joy2019-09-201-51/+0
| | | | | | | The method 'refresh_config' can be used instead of 'run_refresh_config' Change-Id: I6c70b4dff1fd4531fdf6eaa4f044d2d1992d8151 Signed-off-by: Jilju Joy <jijoy@redhat.com>
* [Fix] Fixing string formatting errors and client heal errorskshithijiyer2019-09-191-37/+51
| | | | | | Change-Id: Ifef2ffe022accf59edcbc949c505f47931b19fe4 Signed-off-by: Anees Patel <anepatel@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* nfs-ganesha: Modifying test case based on latest libraryJilju Joy2019-09-191-45/+94
| | | | | Change-Id: I5372caf852b41e127c46f6afa697435dcde9dbf6 Signed-off-by: Jilju Joy <jijoy@redhat.com>
* nfs-ganesha: Test case to verify replace brick operation while IO is in progressJilju Joy2019-09-191-0/+176
| | | | | Change-Id: I40e36e1d4d404fcb9709fa9e50d33cad77172350 Signed-off-by: Jilju Joy <jijoy@redhat.com>
* nfs_ganesha: Test case to validate add brick operation while IO is in progressJilju Joy2019-09-191-0/+185
| | | | | | | | | | | Steps 1. Start IO on mount points 2. Add bricks to expand the volume 3. Start rebalance and wait for its completion 4. Validate IOs Change-Id: I97c09c9fc226afeff1446d225959730715f89aef Signed-off-by: Jilju Joy <jijoy@redhat.com>
* nfs-ganesha:Testcase to create and export new volume while IOs are in progressJilju Joy2019-09-191-0/+250
| | | | | | | | | | | Steps 1. Start IO on mount points 2. Create another volume 'volume_new' 3. Export volume_new through nfs-ganesha 4. Mount the volume on clients Change-Id: I2c4fe59e9a85e6668672d31a0a6c27d11c7f03f8 Signed-off-by: Jilju Joy <jijoy@redhat.com>
* [Doc] Adding numpy requirement for client.kshithijiyer2019-09-181-1/+2
| | | | | | | | | | After modifying file_dir_ops.py as per patch [1] we would need to install numpy on clients. Hence making the changes to the Readme.md. [1]https://review.gluster.org/#/c/glusto-tests/+/23143/ Change-Id: Id3d6f4972e24317e470a8c68ed7172c516f53fc8 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [lib] Merging functions to make generic library.kshithijiyer2019-09-171-184/+181
| | | | | | | | | | | | | | | | | | | | | At present there are 2 different functions for prerequisites and create session merging them and adding checks to make the functions more effective when called from a conftest.py file. By doing so we also avoid the possibility of running the same function twice which might lead to problems. For example when commands like: $ gluster system:: execute gsec_create it would make 2 entries in authorized keys files leading to workers getting into faulty state. Note: This patch should only be merged after merging the below mentioned patches: [1] https://review.gluster.org/#/c/glusto-tests/+/23291/ [2] https://review.gluster.org/#/c/glusto-tests/+/23293/ Change-Id: I3f8cda7b589c86de4dab8c66d033b364dd495b9b Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [lib] Modifying georep libraries as per changes in lib_utils.kshithijiyer2019-09-172-191/+66
| | | | | | | | | | | | | | | | | | | | THIS PATCH IS DEPENDENT ON THE BELOW PATCH: https://review.gluster.org/#/c/glusto-tests/+/23291/ Removing the below functions as a more generic function is added in lib_utils: georep_ssh_keygen georep_ssh_copyid georep_groupadd georep_geoaccount georep_geoaccount_setpasswd Adding georep_mountbroker_remove_user to remove users from mountbroker which will be needed in teardown. Change-Id: I5b484b93cbc1660cdf223cfa4bac2a32acc8fc77 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [lib] Adding group_add,ssh_keygen,ssh_copy_id, set_passwd to lib_utils.kshithijiyer2019-09-171-12/+130
| | | | | | | | | | | | | | | | Adding the following functions tot lib_utils.py: 1.ssh_keygen(): Creates a pair of ssh private and public key if not present. 2.set_passwd(): Sets password for a given username. 3.ssh_copy_id(): Copies the default ssh public key. 4.group_add(): Creates a group in all the servers. Modifying add_user() to create and add user to a specific group. Also modifying the code in add_user() to take list of servers. Change-Id: I58cdef967293204073aa912fa98adb9606f6885d Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* Cthon test case for NFS GaneshaArjun Sharma2019-09-124-1/+201
| | | | | Change-Id: I3fb826bd0ecbe46bee4b9f8594b23f16921adbec Signed-off-by: Arjun Sharma <arjsharm@redhat.com>
* Add 7 negative scenarios for EC volume createubansal2019-09-111-1/+73
| | | | | | | | | With redundancy count as negative or disperse count with negative(different permutations) and disperse data count equal to disperse count Change-Id: I761851c64833256532464f56a9a78e20ceb8a4e1 Signed-off-by: ubansal <ubansal@redhat.com>
* Fix AFR test case tearDown and library importVinayak Papnoi2019-09-111-3/+16
| | | | | | | | | | | | | The test case 'test_client_side_quorum_with_fixed_validate_max_bricks' does not have a tearDown part where the volume options which have been set inside the test case have not been reset to default. The library function 'set_volume_options' was being imported from a wrong library. This fix includes this change along with the tearDown steps. Change-Id: Ic57494e7a7e8a25303b7979f98cc2dfbc9a7d7b6 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* Checking quota daemon and self heal daemon process after rebootkshithijiyer2019-09-111-0/+167
| | | | | | | | | | | | | For each node should have one self heal daemon and one quota daemon should be up running that means total number of self heal daemon and quota daemon to be up and ruuning is (number of nodes *2), in code i am checking that count should be equalent to (number of nodes * 2) Change-Id: I79d40467edc255a479a369f19a6fd1fec9111f53 Signed-off-by: Rajesh Madaka <rmadaka@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [DHT] : Modifying the messages in g.log.info and ExecutionErrorsayaleeraut2019-09-111-4/+4
| | | | | | | | | | | | The ExecutionError msg at line 66 should be "failed to clean-up volume" because it is under tearDownClass. The g.log.info msg at line 123 should be "Checking if gfid xattr of directories is displayed and is same on all the bricks on the server node" as the code below it checks for the gfid xattr on the bricks on server node and not if it is displayed on mount point. Change-Id: If4e20e3487a44c1cc7047504d19cc9859424ccd4 Signed-off-by: sayaleeraut <saraut@redhat.com>
* do getfattr in brick_path rather than m_pointyinkui2019-09-111-2/+3
| | | | | Change-Id: I240ecb0b4a9c99134b7a5cd237a59c2857d0fb7b Signed-off-by: yinkui <13965432176@163.com>
* glusto-test:generate_io.py code not correctyinkui2019-09-051-2/+1
| | | | | | | | | | According to generate_io.py the function "def check_if_percent_to_fill_or_timeout_is_met" will never return false, the "flag" empty or not empty also return true. Change-Id: I2d70b2987112bd3a6404e5f13f0c6d320d01e7fc Signed-off-by: yinkui <13965432176@163.com>
* access self.mnod so we must get layout in mount_point/dirpath, and change ↵yinkui2019-09-041-2/+2
| | | | | | | the log. Change-Id: I361b2c59108b19480906f6dfd49b023ed1eb05cd Signed-off-by: yinkui <13965432176@163.com>
* Added a library for daemon reload and fixing testcaseBala Konda Reddy M2019-09-042-8/+53
| | | | | | | | | | | | | | After changing the type of unit file from INFO to DEBUG. Performing daemon reload. Earlier using running commands continuosly to generated debug messages instead of running continuosly, restarted glusterd in one of the nodes so that while handshake the logs will be in Debug mode. After validating reverting back the unit file to INFO and daemon reload Change-Id: I8c99407eff2ea98a836f37fc2d89bb99f7eeccb7 Signed-off-by: Bala Konda Reddy M <bmekala@redhat.com>
* Fixes: changed triggering heal by getting md5sumkshithijiyer2019-09-041-8/+7
| | | | | | Change-Id: I4d056b94b4ea59beee7eb24e7e5d5f65d7256b4a Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* Optimized glustolibs-io/shared_files/scripts/file_dir_ops.py.hadarsharon2019-08-281-46/+66
| | | | | | | | | Made the IO process more efficient for better performance, as lots of randomizations and conditionals within loops made the whole process very slow. Change-Id: Ie99340d6e5fae7ee88198a646f5b46f868c816ae Signed-off-by: hadarsharon <hsharon@redhat.com>
* Adding library to run_crefi() to glustolibs-IO.kshithijiyer2019-08-272-1/+136
| | | | | | | | | | | | | | | | | | | | | | | What is crefi? Crefi is a Python command-line tool to create multi threaded workload on a filesystem and do file operations on created data. It provides basic operations to create files of different sizes, different types, in different directory structures, along with creating symlinks, hardlinks to files, and also rename, truncate, chmod, chown, chgrp and setxattr on the created files. Typical use involves creating large number of files of different sizes, over different layout, and do different operations on the created files. Which components need this tool? - Geo-rep - AFR Changes needed in infrastructure: https://github.com/gluster/centosci/commit/1fe330d34a62b56438f6eb86538286962b1abd90 Change-Id: I1e579f6f1f2c6ef0d018c055234abbf0f147e621 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [glusterfind] Test case to verify file renamesVinayak Papnoi2019-08-201-0/+231
| | | | | | | | | | | | | | | | | | Verifying the glusterfind functionality with renames of files. * Create a session on the volume * Create various files from mount point * Perform glusterfind pre * Perform glusterfind post * Check the contents of outfile * Rename the files created from mount point * Perform glusterfind pre * Perform glusterfind post * Check the contents of outfile Files renamed must be listed Change-Id: Ib7682e86d59f0519b267ec01cda999920a30de86 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [glusterfind] Test case to verify file deletesVinayak Papnoi2019-08-201-0/+239
| | | | | | | | | | | | | | | | | | Verifying the glusterfind functionality with deletion of files. * Create a session on the volume * Create various files from mount point * Perform glusterfind pre * Perform glusterfind post * Check the contents of outfile * Delete the files created from mount point * Perform glusterfind pre * Perform glusterfind post * Check the contents of outfile Files deleted must be listed Change-Id: I2ee05a2c97983fb521648e372db21c8361a2c835 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* Fixing issues in deploy-glusto.yaml playbook.kshithijiyer2019-08-191-33/+17
| | | | | | | | | | | There were a large number of mistakes due to which if we try to run the above playbook it failed on the first task itself. As well as the format of the playbook is as per a older version of ansible. Fixing and submitting a patch for the same. Change-Id: Ia8bd3264c290ff7abd12a9fa325d40673791ea11 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>