ceph/qa
Sridhar Seshasayee 3aa2df2e0f qa/standalone: Fix test_activate_osd() test in ceph-helpers.sh
Modify test_activate_osd() to get the type of scheduler in use and then
verify the value of osd_max_backfills. This is because mclock scheduler
overrides this option to 1000 upon OSD initialization.

The test earlier used to pass because the OSD daemon was killed but not
marked down and upon being brought up, the wait for OSD up check was
passing quickly. But the OSD still didn't have the latest config values.

But now upon killing the OSD, the osd_fast_shutdown sequence notifies the
mon (see PR: https://github.com/ceph/ceph/pull/44807) and is marked down
and dead. Upon bringing it up, the wait for OSD up check takes a longer
time and this is sufficient for the config values to be updated. This
results in the correct values being read from the config 'Values' map.

Signed-off-by: Sridhar Seshasayee <sseshasa@redhat.com>
2022-03-25 22:10:31 +05:30
..
archs
btrfs
cephfs Merge pull request #39315 from shenhang/fetchkey 2022-02-14 09:53:10 +05:30
client
clusters
config
crontab qa/tests: fixed typo 2022-03-15 16:00:20 -07:00
debug
distros qa/distros/container-hosts: remove centos_8.2 and centos_8.3 2022-02-02 20:03:33 +00:00
erasure-code
libceph
machine_types
mds
mgr_ttl_cache mgr: TTLCache basic implementation 2022-01-05 10:11:58 +01:00
mon/bootstrap
mon_election
msgr
nightlies
objectstore
objectstore_cephfs
objectstore_debug
overrides qa/cephadm: install hwe kernel only for focal 2022-01-18 10:36:24 +01:00
packages
qa_scripts
rbd qa/suites/krbd: add rbd_default_map_options override coverage 2022-02-18 17:19:45 +01:00
releases
rgw qa/rgw: add PG_DEGRADED cluster warnings to log-ignorelist 2022-01-12 15:56:38 -05:00
rgw_bucket_sharding
rgw_frontend
rgw_pool_type
standalone qa/standalone: Fix test_activate_osd() test in ceph-helpers.sh 2022-03-25 22:10:31 +05:30
suites qa/suites/orch/cephadm: restrict test_iscsi_pids_limit to CentOS 2022-03-22 21:42:41 +01:00
tasks qa: test snap_schedule with mgr restart 2022-03-24 18:01:44 +05:30
timezone
workunits cephadm: remove containers pids-limit 2022-03-22 21:41:26 +01:00
.gitignore
.qa qa: move .qa terminator 2022-02-03 10:08:30 -05:00
.teuthology_branch
CMakeLists.txt
Makefile
README
find-used-ports.sh
loopall.sh
mypy.ini
run-standalone.sh
run_xfstests-obsolete.sh
run_xfstests.sh
run_xfstests_qemu.sh Merge pull request #44282 from orozery/qa-qemu-nbd-ide-interface 2022-01-25 15:06:14 +01:00
runallonce.sh
runoncfuse.sh
runonkclient.sh
setup-chroot.sh
test_import.py
tox.ini
valgrind.supp

README

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, or a directory whose name ends with '$',
represents a test where one of the non-magic items is chosen randomly.  For
example, both

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

and

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

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

Symlinks are okay.

One particular use of symlinks is to combine '%' and the latter form of '$'
feature.  Consider supported_distros directory containing fragments that define
os_type and os_version:

 supported_distros/%
 supported_distros/centos.yaml
 supported_distros/rhel.yaml
 supported_distros/ubuntu.yaml

A test that links supported_distros as distros (a name that doesn't end with
'$') will be run three times: on centos, rhel and ubuntu.  A test that links
supported_distros as distros$ will be run just once: either on centos, rhel or
ubuntu, chosen randomly.

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