Commit Graph

660 Commits

Author SHA1 Message Date
Rishabh Dave
4022e2ba7d cephfs: allow only "good" characters
Allow only [A-Za-z0-9-_.] characters for FS, volume, subvolume and
subvolume group names and add test for the same.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2020-08-20 15:34:02 +05:30
Varsha Rao
bba2d66176 qa/tasks/cephfs/nfs: Add tests for cluster config set and reset
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-08-10 10:54:31 +00:00
Patrick Donnelly
f4fc138849
qa: add tests for mds_min_caps_working_set
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2020-08-06 19:17:03 -07:00
Patrick Donnelly
edc5c14d1c
qa: use config_set/config_get
It's simpler and does not require MDS restarts.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2020-08-06 19:17:03 -07:00
Patrick Donnelly
ac6c150eb0
qa: do not append file names to dirname
Otherwise the files generated are not actually under the sub-directory!
This is correcting a confusing aspect of the test infrastructure but
doesn't actually require any changes to the tests.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2020-08-06 19:17:02 -07:00
Patrick Donnelly
bc7571cc7e
Merge PR #36155 into master
* refs/pull/36155/head:
	qa: Fix traceback during fs cleanup between tests

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
2020-07-31 14:15:22 -07:00
Patrick Donnelly
ca7be68eff
Merge PR #35944 into master
* refs/pull/35944/head:
	qa: defer cleaning the mountpoint's netnses and the bridge
	qa/tasks/cephfs/mount.py: remove the stale netnses and bridge
	qa/tasks/cephfs/mount.py: try to flush the stale ceph-brx dev info
	qa/tasks/cephfs/mount.py: switch to run_shell_payload() helper
	qa/tasks/cephfs/mount.py: clean up the none used code

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
2020-07-31 14:12:53 -07:00
Patrick Donnelly
cd8457cbfd
Merge PR #35647 into master
* refs/pull/35647/head:
	mgr/volumes: Add documentation regarding --retain-snapshots option
	mgr/volumes: Avoid trashing retained subvolume on create errors
	mgr/volumes: Add subvolume v2 test cases
	mgr/volumes: Derive v2 from v1 to leverage common methods
	mgr/volumes: Introduce v2 subvolumes
	mgr/volumes: Use operation type during subvolume open

Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
2020-07-31 14:11:27 -07:00
Kotresh HR
381925d219 qa: Fix traceback during fs cleanup between tests
The 'mon_allow_pool_delete' option is set to 'True'
in 'setUp' of 'TestVolumes' and is cleared of in
corresponding 'tearDown' function. Hence, any pool
deletion in parent classes such as 'CephFSTestCase'
would fail. This patch fixes the same by setting
the config 'mon_allow_pool_delete' option in the
'CephFSTestCase'.

Fixes: https://tracker.ceph.com/issues/46597
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2020-07-30 13:09:24 +05:30
Patrick Donnelly
cd8571ea4a
Merge PR #36064 into master
* refs/pull/36064/head:
	mgr/volumes: Fix traceback of ops when volume doesn't exist

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2020-07-29 19:58:16 -07:00
Shyamsundar Ranganathan
63599e27f5 mgr/volumes: Add subvolume v2 test cases
Added test cases for v2 subvolumes

Signed-off-by: Shyamsundar Ranganathan <srangana@redhat.com>
2020-07-29 21:14:40 -04:00
Xiubo Li
47600028ae qa: defer cleaning the mountpoint's netnses and the bridge
The netnses maybe created/deleted many times in the whole test cases,
we can defer cleaning them untile the last mountpoint is unmounted
or when the test is exiting.

Fixes: https://tracker.ceph.com/issues/46282
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2020-07-29 20:58:36 -04:00
Xiubo Li
c0c5550ed7 qa/tasks/cephfs/mount.py: remove the stale netnses and bridge
If the previous test cases failed, the netnses and bridge will be
left. Here will remove them when new test cases begin.

Fixes: https://tracker.ceph.com/issues/45806
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2020-07-29 08:41:18 +08:00
Xiubo Li
438aaf851f qa/tasks/cephfs/mount.py: try to flush the stale ceph-brx dev info
Once we have run the test cases and the ceph-brx bridge is setup,
it will save the config in "/etc/sysconfig/network-scripts/ifcfg-ceph-brx"
or somewhere else. It will be kept after the ceph-brx bridge removed.
So next time once the ceph-brx bridge is created or added, it will
read the config from it, then when we config it again we will get
error like:

    "RTNETLINK answers: File exists"

Here we need to flush it before config it.

Fixes: https://tracker.ceph.com/issues/45817
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2020-07-29 08:41:02 +08:00
Xiubo Li
f8d8e3083a qa/tasks/cephfs/mount.py: switch to run_shell_payload() helper
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2020-07-29 08:40:43 +08:00
Varsha Rao
801047f6cb qa/tasks/nfs:Add test for relative and just '/' pseudo path
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-07-23 13:03:38 +05:30
Kefu Chai
76c4e68be4 qa/tasks/cephfs: drop python2 support
Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-07-21 19:52:11 +08:00
Patrick Donnelly
c049d31540
Merge PR #35953 into master
* refs/pull/35953/head:
	qa: Fix name collisions

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
2020-07-17 20:20:47 -07:00
Kotresh HR
e4ebdb1a5d mgr/volumes: Fix traceback of ops when volume doesn't exist
Subvolume operations throw a traceback if the volume
doesn't exist. This patch fixes the same.

Fixes: https://tracker.ceph.com/issues/46496
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2020-07-14 18:38:14 +05:30
Xiubo Li
2524af9d7e qa/tasks/cephfs/mount.py: clean up the none used code
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2020-07-14 06:27:44 -04:00
Kotresh HR
3b6f6f1abf qa: Fix name collisions
Addresses the name collisions of volumes, subvolumes,
clones, subvolume groups and snapshots within the tests.

Fixes: https://tracker.ceph.com/issues/43517
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2020-07-14 15:39:34 +05:30
Patrick Donnelly
7f8bd09e88
Merge PR #35755 into master
* refs/pull/35755/head:
	mgr/volumes: Deprecate protect/unprotect CLI calls for subvolume snapshots

Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
Reviewed-by: Victoria Martinez de la Cruz <vkmc@redhat.com>
Reviewed-by: Goutham Pacha Ravi <gouthamr@redhat.com>
2020-07-13 19:58:13 -07:00
Patrick Donnelly
41d76856fa
Merge PR #35951 into master
* refs/pull/35951/head:
	qa/cephfs: set omit_sudo to False for wait_until_mounted() in...

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2020-07-13 11:10:00 -07:00
Shyamsundar Ranganathan
c52a7383d3 mgr/volumes: Deprecate protect/unprotect CLI calls for subvolume snapshots
Subvolume snapshots required to be protected, prior to cloning the same.

Also, protected snapshots were not allowed to be unprotected or removed,
if there were in-flight clones, whose source was the snapshot being
removed.

The protection of snapshots explicitly is not required, as these can be
prevented from being removed based only on the in-flight clones checks.

This commit hence deprecates the additional protect/unprotect requirements
prior to cloning a snapshot.

In addition to deprecating the above, support to query a subvolume for
supported features, via the info command, is added. The feature list
is set to "clone" and "auto-protect", where the latter is useful to
decide if protect/unprotect commands are required or not.

Fixes: https://tracker.ceph.com/issues/45371

Signed-off-by: Shyamsundar Ranganathan <srangana@redhat.com>
2020-07-10 11:08:44 -04:00
Venky Shankar
ff63624a17 test: adjust scrub control tests for optional scrub status
Fixes: http://tracker.ceph.com/issues/45349
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2020-07-08 23:50:34 -04:00
Patrick Donnelly
4ec68680bd
Merge PR #33827 into master
* refs/pull/33827/head:
	mon: add 'ceph fs required_client_feature <fs_name> add/rm' command

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2020-07-08 17:06:16 -07:00
Patrick Donnelly
fb436e9fbe
Merge PR #35361 into master
* refs/pull/35361/head:
	mgr/volumes: Validate mon_allow_pool_delete before volume deletion

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2020-07-08 15:30:20 -07:00
Varsha Rao
93aa5e4012 qa/tasks/test_nfs: Add test for cluster info
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-07-07 10:50:22 +05:30
Rishabh Dave
aad0cfcb49 qa/cephfs: set omit_sudo to False for wait_until_mounted() in...
fuse_mount.py. This isn't critical at all to vstart_runner.py runs but
this patch must dramatically reduce the time it takes in case the
command fails with "permission denied" due to lack of superuser
privileges since in this case the command is re-run 9 more times, each
separated by a sleep for 5 seconds.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2020-07-07 09:45:28 +05:30
Yan, Zheng
c4a335d7c6 mon: add 'ceph fs required_client_feature <fs_name> add/rm' command
Fixes: https://tracker.ceph.com/issues/43817
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2020-07-07 09:05:56 +08:00
Kefu Chai
a045778d5b qa/tasks/cephfs: drop six dependency
Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-07-05 10:58:28 +08:00
Kefu Chai
ee90f40905 qa/tasks/cephfs: drop py2 support
Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-07-05 10:58:28 +08:00
Kotresh HR
e770bb9075 mgr/volumes: Validate mon_allow_pool_delete before volume deletion
Volume deletion wasn't validating mon_allow_pool_delete config
before destroying volume metadata. Hence when mon_allow_pool_delete
is set to false, it was deleting metadata but failed to delete pool
resulting in inconsistent state. This patch validates the config
before going ahead with deletion.

Fixes: https://tracker.ceph.com/issues/45662
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2020-07-02 20:19:00 +05:30
Varsha Rao
d7396fdc0f qa/tasks/test_nfs: Add todo note for cluster update test
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
5f506e3969 qa/tasks/cephfs/test_nfs: Add test for get and list detailed export
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
1aa2a660bd qa/tasks/cephfs/test_nfs: Add test for export user id
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
dfa3ab4349 qa/tasks/cephfs/test_nfs: Add description for each test
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
eab60b5fad qa/tasks/cephfs: Add tests for export create with non-existing fsname and cluster id
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
285ab1b4ae qa/tasks/cephfs: Add tests for invalid cluster id, export type and modify list cluster
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
9418b42b29 qa/tasks/cephfs: Add test for listing exports
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
eb2cd16fbe qa/tasks/cephfs: Add test for nfs cluster ls command
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
3b554f2310 qa/tasks/cephfs: Add test to check if export is available on restarting mgr
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Varsha Rao
1a55888b1b qa/tasks/cephfs: Add idempotency test for nfs commands
Signed-off-by: Varsha Rao <varao@redhat.com>
2020-06-30 23:17:38 +05:30
Patrick Donnelly
95332d5fab
Merge PR #35038 into master
* refs/pull/35038/head:
	qa/tasks/cephfs/cephfs_test_case.py: skip cleaning the core dumps

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2020-06-30 10:36:36 -07:00
Patrick Donnelly
bba0cb878a
Merge PR #35420 into master
* refs/pull/35420/head:
	mgr/volumes: Fix pool removal on volume deletion

Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Jos Collin <jcollin@redhat.com>
2020-06-25 14:33:12 -07:00
Patrick Donnelly
4636a1bda8
Merge PR #35664 into master
* refs/pull/35664/head:
	qa: add omit_sudo=False for commands ran with sudo

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
2020-06-25 14:31:33 -07:00
Patrick Donnelly
683153c56e
qa: fix flake8 warnings
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2020-06-24 15:43:33 -07:00
Patrick Donnelly
982041e89d
pybind/mgr/volumes: wire up pinning subvolumes/subvolumegroups
Fixes: https://tracker.ceph.com/issues/41541
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2020-06-24 15:43:32 -07:00
Patrick Donnelly
69e3f556a7
qa: adapt tests for empty pinned dir export
Previously, empty pinned directories were not migrated.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2020-06-24 15:43:32 -07:00
Patrick Donnelly
091e8ffd9d
qa: break export pin tests into discrete tests
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2020-06-24 15:43:32 -07:00