-------------
clusters/ - some predefined cluster layouts
-tasks/ - some predefined task fragments
-collections/ - collections of tests to actually run
+suites/ - sets of collections
-We have several collections, each a subdirectory within collections/.
+We have several collections, each a subdirectory within suites/*/.
Each collection directory consists of a set facets. The basic idea is
that, for each collection, the set of tests to run consists of all
combinations of taking one yaml fragment from each facet.
For example, given the files
- collections/
- collections/foo/
- collections/foo/clusters/
- collections/foo/clusters/fixed-3.yaml
- collections/foo/clusters/fixed-9.yaml
- collections/foo/tasks/
- collections/foo/tasks/a
- collections/foo/tasks/b
- collections/foo/tasks/c
- collections/bar/
- collections/bar/clusters/fixed-3.yaml
- collections/bar/tasks/
- collections/bar/tasks/d
- collections/bar/tasks/e
+ suite/collection/
+ suite/collection/foo/
+ suite/collection/foo/clusters/
+ suite/collection/foo/clusters/fixed-3.yaml
+ suite/collection/foo/clusters/fixed-9.yaml
+ suite/collection/foo/tasks/
+ suite/collection/foo/tasks/a
+ suite/collection/foo/tasks/b
+ suite/collection/foo/tasks/c
+ suite/collection/bar/
+ suite/collection/bar/clusters/fixed-3.yaml
+ suite/collection/bar/tasks/
+ suite/collection/bar/tasks/d
+ suite/collection/bar/tasks/e
teuthology-suite would run tasks a, b, and c on both fixed-3 and
fixed-9 clusters. It would also run tasks d and e on the fixed-3
the command line).
In practice, we can keep common/shared task and cluster definitions in
-the top-level clusters/ and tasks/ directories (which are otherwise
-ignored), and symlink to them from the collections that want to use
-them.
+the top-level clusters/ (which are otherwise ignored), and symlink to
+them from the collections that want to use them.
+++ /dev/null
-../../../clusters/fixed-3.yaml
\ No newline at end of file
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- autotest:
- all: [dbench]
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - kernel_untar_build.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - misc
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - snaps
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - suites/blogbench.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - suites/dbench.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - suites/ffsb.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - suites/fsstress.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - suites/fsx.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse: [client.0]
-- workunit:
- all:
- - suites/iozone.sh
\ No newline at end of file
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - suites/pjd.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all:
- - suites/tiobench.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- all: [misc/trivial_sync.sh]
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- autotest:
- all: [dbench]
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - direct_io
-
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all: [kclient]
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - kernel_untar_build.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - misc
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - suites/blogbench.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - suites/ffsb.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - suites/fsstress.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - suites/fsx.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - suites/iozone.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - suites/pjd.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all:
- - suites/tiobench.sh
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- workunit:
- all: [misc/trivial_sync.sh]
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- client.0:
- - libcephfs/test.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- client.0:
- - rados/test.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- client.0:
- - rados/test_python.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- client.0:
- - rbd/test_librbd.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- client.0:
- - rbd/copy.sh
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- client.0:
- - rbd/import_export.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
-- autotest:
- all: [dbench]
+++ /dev/null
-tasks:
-- ceph:
-- cfuse:
-- workunit:
- client.0:
- - rbd/test_librbd_python.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
-- workunit:
- all:
- - kernel_untar_build.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
- image_size: 20480
-- workunit:
- all:
- - suites/ffsb.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
-- workunit:
- all:
- - suites/fsstress.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
-- workunit:
- all:
- - suites/fsx.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
- image_size: 20480
-- workunit:
- all:
- - suites/iozone.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
-- workunit:
- all:
- - suites/tiobench.sh
+++ /dev/null
-tasks:
-- ceph:
-- rbd:
- all:
-- workunit:
- all: [misc/trivial_sync.sh]
+++ /dev/null
-tasks:
-- ceph:
-- rgw: [client.0]
-- s3tests:
- client.0:
- rgw_server: client.0
+++ /dev/null
-roles:
-- [mon.0, mds.0, osd.0, osd.1]
-- [mon.1, client.1]
-- [mon.2, client.0]
+++ /dev/null
-kernel:
-tasks:
-- ceph:
-- kclient:
-- lockfile: [{client: client.0, lockfile: testfile, holdtime: 5, maxwait: 6},
- {client: client.1, lockfile: testfile, holdtime: 5, maxwait: 12},
- {client: client.1, lockfile: testfile, holdtime: 0, maxwait: 3, expectfail: True},
- 20,
- {client: client.0, lockfile: testfile, holdtime: 5, maxwait: 15},
- {client: client.1, lockfile: testfile, holdtime: 5, maxwait: 3, expectfail: True},
- {client: client.1, lockfile: testfile, holdtime: 5, maxwait: 15}]
+++ /dev/null
-kernel:
-tasks:
-- ceph:
-- kclient:
-- lockfile: [{client: client.0, lockfile: testfile, holdtime: 4, maxwait: 5, offset: 0, length: 5},
- {client: client.1, lockfile: testfile, holdtime: 4, maxwait: 5, offset: 10, length: 1},
- {client: client.1, lockfile: testfile, holdtime: 2, maxwait: 4, offset: 0, length: 15, expectfail: True},
- {client: client.1, lockfile: testfile, holdtime: 4, maxwait: 10, offset: 0, length: 15},
- 10,
- {client: client.0, lockfile: testfile, holdtime: 3, maxwait: 4, offset: 0, length: 15}]
+++ /dev/null
-tasks:
-- ceph:
-- kclient:
-- locktest: [client.0, client.1]
+++ /dev/null
-roles:
-- [mon.a, mds.a, mds.a-s]
-- [mon.b, mds.b, mds.b-s]
-- [mon.c, mds.c, mds.c-s]
-- [osd.0]
-- [osd.1]
-- [osd.2]
-- [client.0]
+++ /dev/null
-tasks:
-- ceph:
- conf:
- mds:
- mds thrash exports: 1
- mds debug subtrees: 1
- mds debug scatterstat: 1
- mds verify scatter: 1
-- cfuse:
-- workunit:
- client.0:
- - suites/fsstress.sh
-
+++ /dev/null
-roles:
-- [mon.a, mon.d, mon.g, mon.j, mon.m, mon.p, mon.s, osd.0]
-- [mon.b, mon.e, mon.h, mon.k, mon.n, mon.q, mon.t, mds.a]
-- [mon.c, mon.f, mon.i, mon.l, mon.o, mon.r, mon.u, osd.1]
+++ /dev/null
-roles:
-- [mon.0, osd.0]
-- [mon.1, mds.a]
-- [mon.2, osd.1]
+++ /dev/null
-roles:
-- [mon.a, mon.d, osd.0]
-- [mon.b, mon.e, mds.a]
-- [mon.c, mon.f, osd.1]
+++ /dev/null
-roles:
-- [mon.a, mon.d, mon.g, osd.0]
-- [mon.b, mon.e, mon.h, mds.a]
-- [mon.c, mon.f, mon.i, osd.1]
+++ /dev/null
-tasks:
-- ceph:
-- mon_recovery:
+++ /dev/null
-roles:
-- [mon.0, osd.0, osd.1, mds.0, client.0]
-tasks:
-- ceph:
-- filestore_idempotent:
+++ /dev/null
-roles:
-- - mon.0
- - mds.0
- - osd.0
-- - mon.1
- - osd.1
-- - mon.2
- - osd.2
-tasks:
-- ceph:
- log-whitelist:
- - objects unfound and apparently lost
-- lost_unfound:
+++ /dev/null
-overrides:
- ceph:
- btrfs: 1
+++ /dev/null
-roles:
-- [mon.0, mds.0, osd.0]
-- [mon.1, osd.1]
-- [mon.2, osd.2]
-- [osd.3]
-- [osd.4]
-- [osd.5]
-- [osd.6]
-- [osd.7]
-- [osd.8]
-- [osd.9]
-- [osd.10]
-- [osd.11]
-- [osd.12]
-- [osd.13]
-- [osd.14]
-- [osd.15]
-- [client.0]
+++ /dev/null
-roles:
-- [mon.0, mds.0, osd.0, osd.1, osd.2]
-- [mon.1, mon.2, client.0]
+++ /dev/null
-roles:
-- [mon.0, mds.0, osd.0]
-- [mon.1, osd.1]
-- [mon.2, osd.2]
-- [osd.3]
-- [osd.4]
-- [osd.5]
-- [osd.6]
-- [osd.7]
-- [client.0]
+++ /dev/null
-tasks:
-- ceph:
- log-whitelist:
- - wrongly marked me down or wrong addr
-- thrashosds:
+++ /dev/null
-tasks:
-- ceph:
- log-whitelist:
- - wrongly marked me down or wrong addr
-- thrashosds:
- op_delay: 1
- chance_down: 10
+++ /dev/null
-tasks:
-- ceph:
- log-whitelist:
- - wrongly marked me down or wrong addr
-- thrashosds:
- chance_down: 50
+++ /dev/null
-tasks:
-- cfuse:
-- workunit:
- all:
- - suites/bonnie.sh
+++ /dev/null
-tasks:
-- cfuse:
-- workunit:
- all:
- - suites/iozone.sh
+++ /dev/null
-tasks:
-- radosbench:
- clients: [client.0]
- time: 1800
+++ /dev/null
-tasks:
-- testrados:
- clients: [client.0]
- ops: 4000
- objects: 500
+++ /dev/null
-tasks:
-- testrados:
- snaps: True
- clients: [client.0]
- ops: 4000
- objects: 500
--- /dev/null
+../../../../clusters/fixed-3.yaml
\ No newline at end of file
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- autotest:
+ all: [dbench]
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - kernel_untar_build.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - misc
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - suites/blogbench.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - suites/dbench.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - suites/ffsb.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - suites/fsstress.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse: [client.0]
+- workunit:
+ all:
+ - suites/iozone.sh
\ No newline at end of file
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - suites/pjd.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - suites/tiobench.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all: [misc/trivial_sync.sh]
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- autotest:
+ all: [dbench]
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - direct_io
+
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all: [kclient]
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - kernel_untar_build.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - misc
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - suites/blogbench.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - suites/ffsb.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - suites/fsstress.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - suites/iozone.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - suites/pjd.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - suites/tiobench.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all: [misc/trivial_sync.sh]
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ client.0:
+ - libcephfs/test.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ client.0:
+ - rados/test.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ client.0:
+ - rados/test_python.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ client.0:
+ - rbd/test_librbd.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ client.0:
+ - rbd/copy.sh
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ client.0:
+ - rbd/import_export.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+- autotest:
+ all: [dbench]
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ client.0:
+ - rbd/test_librbd_python.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ all:
+ - kernel_untar_build.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+ image_size: 20480
+- workunit:
+ all:
+ - suites/ffsb.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ all:
+ - suites/fsstress.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ all:
+ - suites/fsx.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+ image_size: 20480
+- workunit:
+ all:
+ - suites/iozone.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ all:
+ - suites/tiobench.sh
--- /dev/null
+tasks:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ all: [misc/trivial_sync.sh]
--- /dev/null
+tasks:
+- ceph:
+- rgw: [client.0]
+- s3tests:
+ client.0:
+ rgw_server: client.0
--- /dev/null
+roles:
+- [mon.0, mds.0, osd.0, osd.1]
+- [mon.1, client.1]
+- [mon.2, client.0]
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- locktest: [client.0, client.1]
--- /dev/null
+roles:
+- [mon.0, osd.0, osd.1, mds.0, client.0]
+tasks:
+- ceph:
+- filestore_idempotent:
--- /dev/null
+roles:
+- - mon.0
+ - mds.0
+ - osd.0
+- - mon.1
+ - osd.1
+- - mon.2
+ - osd.2
+tasks:
+- ceph:
+ log-whitelist:
+ - objects unfound and apparently lost
+- lost_unfound:
--- /dev/null
+../../../../clusters/fixed-3.yaml
\ No newline at end of file
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - snaps
--- /dev/null
+tasks:
+- ceph:
+- cfuse:
+- workunit:
+ all:
+ - suites/fsx.sh
--- /dev/null
+tasks:
+- ceph:
+- kclient:
+- workunit:
+ all:
+ - suites/fsx.sh
--- /dev/null
+roles:
+- [mon.a, mds.a, mds.a-s]
+- [mon.b, mds.b, mds.b-s]
+- [mon.c, mds.c, mds.c-s]
+- [osd.0]
+- [osd.1]
+- [osd.2]
+- [client.0]
--- /dev/null
+tasks:
+- ceph:
+ conf:
+ mds:
+ mds thrash exports: 1
+ mds debug subtrees: 1
+ mds debug scatterstat: 1
+ mds verify scatter: 1
+- cfuse:
+- workunit:
+ client.0:
+ - suites/fsstress.sh
+
--- /dev/null
+roles:
+- [mon.a, mon.d, mon.g, mon.j, mon.m, mon.p, mon.s, osd.0]
+- [mon.b, mon.e, mon.h, mon.k, mon.n, mon.q, mon.t, mds.a]
+- [mon.c, mon.f, mon.i, mon.l, mon.o, mon.r, mon.u, osd.1]
--- /dev/null
+roles:
+- [mon.0, osd.0]
+- [mon.1, mds.a]
+- [mon.2, osd.1]
--- /dev/null
+roles:
+- [mon.a, mon.d, osd.0]
+- [mon.b, mon.e, mds.a]
+- [mon.c, mon.f, osd.1]
--- /dev/null
+roles:
+- [mon.a, mon.d, mon.g, osd.0]
+- [mon.b, mon.e, mon.h, mds.a]
+- [mon.c, mon.f, mon.i, osd.1]
--- /dev/null
+tasks:
+- ceph:
+- mon_recovery:
--- /dev/null
+overrides:
+ ceph:
+ btrfs: 1
--- /dev/null
+roles:
+- [mon.0, mds.0, osd.0]
+- [mon.1, osd.1]
+- [mon.2, osd.2]
+- [osd.3]
+- [osd.4]
+- [osd.5]
+- [osd.6]
+- [osd.7]
+- [osd.8]
+- [osd.9]
+- [osd.10]
+- [osd.11]
+- [osd.12]
+- [osd.13]
+- [osd.14]
+- [osd.15]
+- [client.0]
--- /dev/null
+roles:
+- [mon.0, mds.0, osd.0, osd.1, osd.2]
+- [mon.1, mon.2, client.0]
--- /dev/null
+roles:
+- [mon.0, mds.0, osd.0]
+- [mon.1, osd.1]
+- [mon.2, osd.2]
+- [osd.3]
+- [osd.4]
+- [osd.5]
+- [osd.6]
+- [osd.7]
+- [client.0]
--- /dev/null
+tasks:
+- ceph:
+ log-whitelist:
+ - wrongly marked me down or wrong addr
+- thrashosds:
--- /dev/null
+tasks:
+- ceph:
+ log-whitelist:
+ - wrongly marked me down or wrong addr
+- thrashosds:
+ op_delay: 1
+ chance_down: 10
--- /dev/null
+tasks:
+- ceph:
+ log-whitelist:
+ - wrongly marked me down or wrong addr
+- thrashosds:
+ chance_down: 50
--- /dev/null
+tasks:
+- cfuse:
+- workunit:
+ all:
+ - suites/bonnie.sh
--- /dev/null
+tasks:
+- cfuse:
+- workunit:
+ all:
+ - suites/iozone.sh
--- /dev/null
+tasks:
+- radosbench:
+ clients: [client.0]
+ time: 1800
--- /dev/null
+tasks:
+- testrados:
+ clients: [client.0]
+ ops: 4000
+ objects: 500
--- /dev/null
+tasks:
+- testrados:
+ snaps: True
+ clients: [client.0]
+ ops: 4000
+ objects: 500