kernelci / kernelci-pipeline

Modular pipeline based on the KernelCI API
GNU Lesser General Public License v2.1
8 stars 20 forks source link

Call kvm-xfstests from client to ensure environment is ready and fix issues if necessary #98

Closed gctucker closed 2 years ago

gctucker commented 2 years ago

Once the client service "skeleton" has been merged, add a command to call kvm-xfstests in a subprocess and check the output to confirm it's available and present in the path. This could be done as a separate command from the main loop.

alexandrasp commented 2 years ago

I opened a new PR and I guess this task is done. I could confirm it worked on one dedicated builder (no docker), as the example below:

python3 src/fstests/runner.py --settings=config/kernelci.conf check --db-config=staging.kernelci.org            
Usage: kvm-xfstests [<OPTIONS>] smoke|full
Usage: kvm-xfstests [<OPTIONS>] <test> ...
Usage: kvm-xfstests [<OPTIONS>] -g <group> ...
Usage: kvm-xfstests [<OPTIONS>] shell|maint
Usage: kvm-xfstests [<OPTIONS>] syz <repro>

Common options are:
    -a      - Disable auto-exclude; run all tests
    -c config   - Specify a file system configuration
    -C count    - Run the specified tests multiple times
    -I image    - Use this test appliance image
    -m mountopts    - Append mount options to fs config
    -n nr_cpus  - Specify the number of cpu's
    -numa num   - Ask KVM to create <num> NUMA nodes
    -N      - Enable networking (requires root)
    -o opts     - Extra kernel command line options
    -O opts     - Extra options for test runner
    -r ram      - Specify memory to be used in megabytes
    -x group    - Exclude group of tests from running
    -X test     - Exclude test from running
    --kernel file   - Boot the specified kernel
    --initrd initrd - Boot with the specified initrd
    --no-log    - Don't save the log file for this run
    --no-action - Print the command to start the VM

Common file system configurations are:
    4k 1k ext3 nojournal ext3conv metacsum dioread_nolock 
    data_journal bigalloc bigalloc_1k inline

xfstest names have the form: ext4/NNN generic/NNN shared/NNN

KVM-xftests found.