This document is for a development version of Ceph.
Integration Tests for Kernel Development
fs suite runs various kernels as described by the kernel YAML
fragments. These are symbolically linked by other sub-suites under the
The matrix of fragments allows for testing the following configurations:
The “stock” kernel on RHEL 8 (i.e. the kernel that ships with it).
The testing branch by the kernel development team which represents the patches undergoing active testing. These patches may or may not be in the next upstream kernel release and include a mix of CephFS or kRBD changes. For the testing kernel, we test with whatever distributions are specified by the sub-suite. For example, the
fs:functionalsub-suite uses a random selection of the supported random distros.
Testing custom kernels
If you have a kernel branch on ceph-client.git and have built it using
shaman, then you can also test that easily by specifying an override for the
kernel. This is done via a YAML fragment passed to the
$ cat custom-kernel.yaml overrides: kernel: branch: for-linus
This specifies an override for the kernel branch specified in the suite’s
matrix. You can also specify an override as a tag or SHA1 for the
task. When overriding the kernel, you should reduce the selection of jobs as
the matrix will include a number of kernel configurations you won’t care to
test, as mentioned in the CephFS section; the override YAML will
apply to all configurations of the kernel so it will result in duplicate tests.
The command to run tests will look like:
teuthology-suite ... --suite fs --filter k-testing custom-kernel.yaml
... indicates other typical options that are normally specified when
teuthology-suite. The important filter
will limit the selection of jobs to those using the
testing branch of the
kernel (see the k-testing.yaml file). So you’ll only select jobs using the
kernel client with the
testing branch. Your custom YAML file,
custom-kernel.yaml, will further override the
testing branch to use
whatever you specify.