From e98b218d48d3e1b58ef165c79a108cadb20e7a84 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 10 Aug 2011 13:36:34 -0700 Subject: [PATCH] restructure in terms of collections --- README | 45 ++++++++++++------- collections/basic/clusters/fixed-3.yaml | 1 + .../basic/tasks}/cfuse_dbench.yaml | 0 .../cfuse_workunit_kernel_untar_build.yaml | 0 .../basic/tasks}/cfuse_workunit_misc.yaml | 0 .../basic/tasks}/cfuse_workunit_snaps.yaml | 0 .../cfuse_workunit_suites_blogbench.yaml | 0 .../tasks}/cfuse_workunit_suites_dbench.yaml | 0 .../tasks}/cfuse_workunit_suites_ffsb.yaml | 0 .../cfuse_workunit_suites_fsstress.yaml | 0 .../tasks}/cfuse_workunit_suites_iozone.yaml | 0 .../tasks}/cfuse_workunit_suites_pjd.yaml | 0 .../cfuse_workunit_suites_tiobench.yaml | 0 .../tasks}/cfuse_workunit_trivial_sync.yaml | 0 .../basic/tasks}/kclient_dbench.yaml | 0 .../tasks}/kclient_workunit_direct_io.yaml | 0 .../tasks}/kclient_workunit_kclient.yaml | 0 .../kclient_workunit_kernel_untar_build.yaml | 0 .../basic/tasks}/kclient_workunit_misc.yaml | 0 .../tasks}/kclient_workunit_trivial_sync.yaml | 0 .../basic/tasks}/rbd_dbench.yaml | 0 .../rbd_workunit_kernel_untar_build.yaml | 0 .../tasks}/rbd_workunit_suites_ffsb.yaml | 0 .../tasks}/rbd_workunit_suites_fsstress.yaml | 0 .../tasks}/rbd_workunit_suites_iozone.yaml | 0 .../tasks}/rbd_workunit_suites_tiobench.yaml | 0 .../tasks}/rbd_workunit_trivial_sync.yaml | 0 .../basic/tasks}/rgw_s3tests.yaml | 0 28 files changed, 30 insertions(+), 16 deletions(-) create mode 120000 collections/basic/clusters/fixed-3.yaml rename {tasks => collections/basic/tasks}/cfuse_dbench.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_kernel_untar_build.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_misc.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_snaps.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_suites_blogbench.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_suites_dbench.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_suites_ffsb.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_suites_fsstress.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_suites_iozone.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_suites_pjd.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_suites_tiobench.yaml (100%) rename {tasks => collections/basic/tasks}/cfuse_workunit_trivial_sync.yaml (100%) rename {tasks => collections/basic/tasks}/kclient_dbench.yaml (100%) rename {tasks => collections/basic/tasks}/kclient_workunit_direct_io.yaml (100%) rename {tasks => collections/basic/tasks}/kclient_workunit_kclient.yaml (100%) rename {tasks => collections/basic/tasks}/kclient_workunit_kernel_untar_build.yaml (100%) rename {tasks => collections/basic/tasks}/kclient_workunit_misc.yaml (100%) rename {tasks => collections/basic/tasks}/kclient_workunit_trivial_sync.yaml (100%) rename {tasks => collections/basic/tasks}/rbd_dbench.yaml (100%) rename {tasks => collections/basic/tasks}/rbd_workunit_kernel_untar_build.yaml (100%) rename {tasks => collections/basic/tasks}/rbd_workunit_suites_ffsb.yaml (100%) rename {tasks => collections/basic/tasks}/rbd_workunit_suites_fsstress.yaml (100%) rename {tasks => collections/basic/tasks}/rbd_workunit_suites_iozone.yaml (100%) rename {tasks => collections/basic/tasks}/rbd_workunit_suites_tiobench.yaml (100%) rename {tasks => collections/basic/tasks}/rbd_workunit_trivial_sync.yaml (100%) rename {tasks => collections/basic/tasks}/rgw_s3tests.yaml (100%) diff --git a/README b/README index 9c9969ecb2898..f72bed6554f45 100644 --- a/README +++ b/README @@ -1,21 +1,35 @@ ceph-qa-suite ------------- -The basic idea is that the set of tests to run consists of all +clusters/ - some predefined cluster layouts +tasks/ - some predefined task fragments +collections/ - collections of tests to actually run + +We have several collections, each a subdirectory within collections/. +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. -Each directory represents a facet. For example, given the files +For example, given the files - clusters/ - clusters/fixed-3.yaml - clusters/fixed-9.yaml - tasks/ - tasks/a - tasks/b - tasks/c + 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 -teuthology-suite would run tasks a, b, and c on both fixed-3 and fixed-9 -clusters. +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 +cluster. Note that the 'clusters' and 'tasks' terminology is actually meaningless here. All teuthology-suite does is stick the yaml @@ -23,8 +37,7 @@ fragments together (one from each facet) and run teuthology on the result (optionally combined with any additional fragments passed on the command line). - -That is the current approach. Eventually we may want something -smarter, like different collections of facets, or some other way to -limit the total size of the test space (e.g., running certain tasks -only on certain clusters). +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. diff --git a/collections/basic/clusters/fixed-3.yaml b/collections/basic/clusters/fixed-3.yaml new file mode 120000 index 0000000000000..19a55d249138a --- /dev/null +++ b/collections/basic/clusters/fixed-3.yaml @@ -0,0 +1 @@ +../../../clusters/fixed-3.yaml \ No newline at end of file diff --git a/tasks/cfuse_dbench.yaml b/collections/basic/tasks/cfuse_dbench.yaml similarity index 100% rename from tasks/cfuse_dbench.yaml rename to collections/basic/tasks/cfuse_dbench.yaml diff --git a/tasks/cfuse_workunit_kernel_untar_build.yaml b/collections/basic/tasks/cfuse_workunit_kernel_untar_build.yaml similarity index 100% rename from tasks/cfuse_workunit_kernel_untar_build.yaml rename to collections/basic/tasks/cfuse_workunit_kernel_untar_build.yaml diff --git a/tasks/cfuse_workunit_misc.yaml b/collections/basic/tasks/cfuse_workunit_misc.yaml similarity index 100% rename from tasks/cfuse_workunit_misc.yaml rename to collections/basic/tasks/cfuse_workunit_misc.yaml diff --git a/tasks/cfuse_workunit_snaps.yaml b/collections/basic/tasks/cfuse_workunit_snaps.yaml similarity index 100% rename from tasks/cfuse_workunit_snaps.yaml rename to collections/basic/tasks/cfuse_workunit_snaps.yaml diff --git a/tasks/cfuse_workunit_suites_blogbench.yaml b/collections/basic/tasks/cfuse_workunit_suites_blogbench.yaml similarity index 100% rename from tasks/cfuse_workunit_suites_blogbench.yaml rename to collections/basic/tasks/cfuse_workunit_suites_blogbench.yaml diff --git a/tasks/cfuse_workunit_suites_dbench.yaml b/collections/basic/tasks/cfuse_workunit_suites_dbench.yaml similarity index 100% rename from tasks/cfuse_workunit_suites_dbench.yaml rename to collections/basic/tasks/cfuse_workunit_suites_dbench.yaml diff --git a/tasks/cfuse_workunit_suites_ffsb.yaml b/collections/basic/tasks/cfuse_workunit_suites_ffsb.yaml similarity index 100% rename from tasks/cfuse_workunit_suites_ffsb.yaml rename to collections/basic/tasks/cfuse_workunit_suites_ffsb.yaml diff --git a/tasks/cfuse_workunit_suites_fsstress.yaml b/collections/basic/tasks/cfuse_workunit_suites_fsstress.yaml similarity index 100% rename from tasks/cfuse_workunit_suites_fsstress.yaml rename to collections/basic/tasks/cfuse_workunit_suites_fsstress.yaml diff --git a/tasks/cfuse_workunit_suites_iozone.yaml b/collections/basic/tasks/cfuse_workunit_suites_iozone.yaml similarity index 100% rename from tasks/cfuse_workunit_suites_iozone.yaml rename to collections/basic/tasks/cfuse_workunit_suites_iozone.yaml diff --git a/tasks/cfuse_workunit_suites_pjd.yaml b/collections/basic/tasks/cfuse_workunit_suites_pjd.yaml similarity index 100% rename from tasks/cfuse_workunit_suites_pjd.yaml rename to collections/basic/tasks/cfuse_workunit_suites_pjd.yaml diff --git a/tasks/cfuse_workunit_suites_tiobench.yaml b/collections/basic/tasks/cfuse_workunit_suites_tiobench.yaml similarity index 100% rename from tasks/cfuse_workunit_suites_tiobench.yaml rename to collections/basic/tasks/cfuse_workunit_suites_tiobench.yaml diff --git a/tasks/cfuse_workunit_trivial_sync.yaml b/collections/basic/tasks/cfuse_workunit_trivial_sync.yaml similarity index 100% rename from tasks/cfuse_workunit_trivial_sync.yaml rename to collections/basic/tasks/cfuse_workunit_trivial_sync.yaml diff --git a/tasks/kclient_dbench.yaml b/collections/basic/tasks/kclient_dbench.yaml similarity index 100% rename from tasks/kclient_dbench.yaml rename to collections/basic/tasks/kclient_dbench.yaml diff --git a/tasks/kclient_workunit_direct_io.yaml b/collections/basic/tasks/kclient_workunit_direct_io.yaml similarity index 100% rename from tasks/kclient_workunit_direct_io.yaml rename to collections/basic/tasks/kclient_workunit_direct_io.yaml diff --git a/tasks/kclient_workunit_kclient.yaml b/collections/basic/tasks/kclient_workunit_kclient.yaml similarity index 100% rename from tasks/kclient_workunit_kclient.yaml rename to collections/basic/tasks/kclient_workunit_kclient.yaml diff --git a/tasks/kclient_workunit_kernel_untar_build.yaml b/collections/basic/tasks/kclient_workunit_kernel_untar_build.yaml similarity index 100% rename from tasks/kclient_workunit_kernel_untar_build.yaml rename to collections/basic/tasks/kclient_workunit_kernel_untar_build.yaml diff --git a/tasks/kclient_workunit_misc.yaml b/collections/basic/tasks/kclient_workunit_misc.yaml similarity index 100% rename from tasks/kclient_workunit_misc.yaml rename to collections/basic/tasks/kclient_workunit_misc.yaml diff --git a/tasks/kclient_workunit_trivial_sync.yaml b/collections/basic/tasks/kclient_workunit_trivial_sync.yaml similarity index 100% rename from tasks/kclient_workunit_trivial_sync.yaml rename to collections/basic/tasks/kclient_workunit_trivial_sync.yaml diff --git a/tasks/rbd_dbench.yaml b/collections/basic/tasks/rbd_dbench.yaml similarity index 100% rename from tasks/rbd_dbench.yaml rename to collections/basic/tasks/rbd_dbench.yaml diff --git a/tasks/rbd_workunit_kernel_untar_build.yaml b/collections/basic/tasks/rbd_workunit_kernel_untar_build.yaml similarity index 100% rename from tasks/rbd_workunit_kernel_untar_build.yaml rename to collections/basic/tasks/rbd_workunit_kernel_untar_build.yaml diff --git a/tasks/rbd_workunit_suites_ffsb.yaml b/collections/basic/tasks/rbd_workunit_suites_ffsb.yaml similarity index 100% rename from tasks/rbd_workunit_suites_ffsb.yaml rename to collections/basic/tasks/rbd_workunit_suites_ffsb.yaml diff --git a/tasks/rbd_workunit_suites_fsstress.yaml b/collections/basic/tasks/rbd_workunit_suites_fsstress.yaml similarity index 100% rename from tasks/rbd_workunit_suites_fsstress.yaml rename to collections/basic/tasks/rbd_workunit_suites_fsstress.yaml diff --git a/tasks/rbd_workunit_suites_iozone.yaml b/collections/basic/tasks/rbd_workunit_suites_iozone.yaml similarity index 100% rename from tasks/rbd_workunit_suites_iozone.yaml rename to collections/basic/tasks/rbd_workunit_suites_iozone.yaml diff --git a/tasks/rbd_workunit_suites_tiobench.yaml b/collections/basic/tasks/rbd_workunit_suites_tiobench.yaml similarity index 100% rename from tasks/rbd_workunit_suites_tiobench.yaml rename to collections/basic/tasks/rbd_workunit_suites_tiobench.yaml diff --git a/tasks/rbd_workunit_trivial_sync.yaml b/collections/basic/tasks/rbd_workunit_trivial_sync.yaml similarity index 100% rename from tasks/rbd_workunit_trivial_sync.yaml rename to collections/basic/tasks/rbd_workunit_trivial_sync.yaml diff --git a/tasks/rgw_s3tests.yaml b/collections/basic/tasks/rgw_s3tests.yaml similarity index 100% rename from tasks/rgw_s3tests.yaml rename to collections/basic/tasks/rgw_s3tests.yaml -- 2.39.5