| Configuration file with sections |
| ================================ |
| |
| Configuration file with sections is useful for running xfstests on multiple |
| file systems, or multiple file system setups in a single run without any |
| help of external scripts. |
| |
| |
| Syntax |
| ------ |
| |
| Syntax for defining a section is the following: |
| |
| [section_name] |
| |
| Section name should consist of alphanumeric characters and '_'. Anything |
| else is forbidden and the section will not be recognised. |
| |
| Each section in the configuration file should contain options in the format |
| |
| OPTION=value |
| |
| 'OPTION' must not contain any white space characters. 'value' can contain |
| any character you want with one simple limitation - characters ' and " can |
| only appear at the start and end of the 'value', however it is not required. |
| |
| Note that options are carried between sections so the same options does not |
| have to be specified in each and every sections. However caution should be |
| exercised not to leave unwanted options set from previous sections. |
| |
| |
| Results |
| ------- |
| |
| For every section xfstests will run with specified options and will produce |
| separate results in the '$RESULT_BASE/$section_name' directory. |
| |
| |
| Different mount options |
| ----------------------- |
| |
| Specifying different mount options in difference config sections is allowed. |
| When TEST_FS_MOUNT_OPTS differs in the following section TEST_DEV will be |
| remounted with new TEST_FS_MOUNT_OPTS automatically before running the test. |
| |
| |
| Multiple file systems |
| --------------------- |
| |
| Having different file systems in different config sections is allowed. When |
| FSTYP differs in the following section the FSTYP file system will be created |
| automatically before running the test. |
| |
| Note that if TEST_FS_MOUNT_OPTS, MOUNT_OPTIONS, MKFS_OPTIONS, or FSCK_OPTIONS |
| are not directly specified in the section it will be reset to the default for a |
| given file system. |
| |
| You can also force the file system recreation by specifying RECREATE_TEST_DEV. |
| |
| Run specified section only |
| -------------------------- |
| |
| Specifying '-s' argument with section name will run only the section |
| specified. The '-s' argument can be specified multiple times to allow multiple |
| sections to be run. |
| |
| The options are still carried between section, that includes the sections |
| which are not going to be run. So you can do something like |
| |
| [ext4] |
| TEST_DEV=/dev/sda1 |
| TEST_DIR=/mnt/test |
| SCRATCH_DEV=/dev/sdb1 |
| SCRATCH_MNT=/mnt/test1 |
| FSTYP=ext4 |
| |
| [xfs] |
| FSTYP=xfs |
| |
| [btrfs] |
| FSTYP=btrfs |
| |
| |
| and run |
| |
| ./check -s xfs -s btrfs |
| |
| to check xfs and btrfs only. All the devices and mounts are still going to |
| be parsed from the section [ext4]. |
| |
| Example |
| ------- |
| |
| Here is an example of config file with sections: |
| |
| [ext4_4k_block_size] |
| TEST_DEV=/dev/sda |
| TEST_DIR=/mnt/test |
| SCRATCH_DEV=/dev/sdb |
| SCRATCH_MNT=/mnt/test1 |
| MKFS_OPTIONS="-q -F -b4096" |
| FSTYP=ext4 |
| RESULT_BASE="`pwd`/results/`date +%d%m%y_%H%M%S`" |
| |
| [ext4_1k_block_size] |
| MKFS_OPTIONS="-q -F -b1024" |
| |
| [ext4_nojournal] |
| MKFS_OPTIONS="-q -F -b4096 -O ^has_journal" |
| |
| [xfs_filesystem] |
| MKFS_OPTIONS="-f" |
| FSTYP=xfs |
| |
| [ext3_filesystem] |
| FSTYP=ext3 |
| MOUNT_OPTIONS="-o noatime" |
| |
| [cephfs] |
| TEST_DIR=/mnt/test |
| TEST_DEV=192.168.14.1:6789:/ |
| TEST_FS_MOUNT_OPTS="-o name=admin,secret=AQDuEBtYKEYRINGSECRETriSC8YJGDZsQHcr7g==" |
| FSTYP="ceph" |
| |
| [glusterfs] |
| FSTYP=glusterfs |
| TEST_DIR=/mnt/gluster/test |
| TEST_DEV=192.168.1.1:testvol |
| SCRATCH_MNT=/mnt/gluster/scratch |
| SCRATCH_DEV=192.168.1.1:scratchvol |
| |
| [afs] |
| FSTYP=afs |
| TEST_DEV=%example.com:xfstest.test |
| TEST_DIR=/mnt/xfstest.test |
| SCRATCH_DEV=%example.com:xfstest.scratch |
| SCRATCH_MNT=/mnt/xfstest.scratch |