ceph/qa
Jason Dillaman 65c8733b56 librados: revert librados3/libradoscc back to librados2
For backwards compatibility and upgrade reasons, the librados2
API needs to be preserved and it needs to continue to be compatible
with dependent libraries like librbd1.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-02-20 14:59:26 -05:00
..
archs
btrfs
cephfs
client
clusters
config
crontab qa/tests: reduced nubmer of runs on 'ovh' 2019-01-10 09:03:16 -08:00
debug
distros qa/tests: added rhel 7.6 2019-01-11 09:40:31 -08:00
erasure-code
libceph
machine_types
mds
mon/bootstrap
msgr qa/msgr: add async-v1only case 2019-01-08 13:22:39 -06:00
nightlies
objectstore
objectstore_cephfs
overrides qa/overrides/short_pg_log.yaml: reduce osd_{min,max}_pg_log_entries 2019-01-23 12:46:42 -08:00
packages librados: revert librados3/libradoscc back to librados2 2019-02-20 14:59:26 -05:00
qa_scripts librados: revert librados3/libradoscc back to librados2 2019-02-20 14:59:26 -05:00
rbd qa: update krbd tests for zeroout 2019-02-03 10:57:07 +01:00
releases
rgw_frontend
rgw_pool_type
standalone qa/standalone/osd/osd-markdown: disable CLI command dups 2019-02-18 15:02:25 -06:00
suites Merge PR #26262 into master 2019-02-20 13:05:11 -06:00
tasks Merge PR #26262 into master 2019-02-20 13:05:11 -06:00
timezone
workunits qa/workunits/rbd: add parent migration case 2019-02-19 08:58:08 +00:00
.gitignore
find-used-ports.sh
loopall.sh
Makefile
README
run_xfstests_qemu.sh
run_xfstests-obsolete.sh
run_xfstests.sh
run-standalone.sh test: run-standalone.sh set local library location so mgr can find librados.so 2019-02-12 09:22:35 -08:00
runallonce.sh
runoncfuse.sh
runonkclient.sh
setup-chroot.sh
tox.ini

ceph-qa-suite
-------------

clusters/    - some predefined cluster layouts
suites/      - set suite

The suites directory has a hierarchical collection of tests.  This can be
freeform, but generally follows the convention of

  suites/<test suite name>/<test group>/...

A test is described by a yaml fragment.

A test can exist as a single .yaml file in the directory tree.  For example:

 suites/foo/one.yaml
 suites/foo/two.yaml

is a simple group of two tests.

A directory with a magic '+' file represents a test that combines all
other items in the directory into a single yaml fragment.  For example:

 suites/foo/bar/+
 suites/foo/bar/a.yaml
 suites/foo/bar/b.yaml
 suites/foo/bar/c.yaml

is a single test consisting of a + b + c.

A directory with a magic '%' file represents a test matrix formed from
all other items in the directory.  For example,

 suites/baz/%
 suites/baz/a.yaml
 suites/baz/b/b1.yaml
 suites/baz/b/b2.yaml
 suites/baz/c.yaml
 suites/baz/d/d1.yaml
 suites/baz/d/d2.yaml

is a 4-dimensional test matrix.  Two dimensions (a, c) are trivial (1
item), so this is really 2x2 = 4 tests, which are

  a + b1 + c + d1
  a + b1 + c + d2
  a + b2 + c + d1
  a + b2 + c + d2

A directory with a magic '$' file represents a test where one of the other
items is chosen randomly. For example,

suites/foo/$
suites/foo/a.yaml
suites/foo/b.yaml
suites/foo/c.yaml

is a single test.  It will be either a.yaml, b.yaml or c.yaml.  This can be
used in conjunction with the '%' file in other directories to run a series of
tests without causing an unwanted increase in the total number of jobs run.

Symlinks are okay.

The teuthology code can be found in https://github.com/ceph/teuthology.git