summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2022-09-22get-test-job is now written in rustci-rustKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-09-18Increase stale job timeout to 1 hourKent Overstreet
We should also add some logging - job given out - job completed - stale job deleted Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-09-16ci: Move stale job cleanup to get-test-job.cKent Overstreet
It's more efficient to do it there, and now we emit a log message when we delete a stale test job. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-08-25testrunner: Fix for home directories in weird placesKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-08-25fixup! Add arm supportKent Overstreet
2022-08-24lib/supervisor: Exit when child existsKent Overstreet
Previously, the supervisor would run until the timeout when the child died (e.g. because of a build error). This adds a signal handler for SIGCHLD to fix this silly bug. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-08-23Bring back partial support for virtio-blkKent Overstreet
virtio-scsi is, unfortunately, buggy: this patch brings back partial support for virtio-blk (we don't yet handle sda vs. vda naming) Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-08-23Add arm supportKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-08-23Fix setting CROSS_COMPILEKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-08-23Fix checking for qemu binaryKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2022-07-20lib/common.sh: Use pipefailKent Overstreet
++ for catching more errors Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-20Fix exit handlerKent Overstreet
Our exit handler was returning failure, and causing the whole script to return failure, when we didn't have a temp dir. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-11Delete our perf wrapperKent Overstreet
Debian is doing the sane thing now Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-10supervisor: Catch and forward signalsKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-10Rename qemu-wrapper to supervisorKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-10Move logic for retrying subtests to the CIKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-10export ktest_out, ktest_failfastKent Overstreet
These are needed by tests/prelude.sh run_tests Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-08qemu-wrapper: make sure status file gets a newlineKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-08Disable ktest_crashdump, fix error handlingKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-08More fixesKent Overstreet
- hook functionality doesn't work anymore since we're not directly sourcing tests, replace it with something simpler - fix ktest_storage_bus Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-08Fix multiple includes of prelude.shKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-08fixup! get-test-job: Query for subtests, and write per-subtest lockfilesKent Overstreet
2022-07-08fixup! get-test-job: Query for subtests, and write per-subtest lockfilesKent Overstreet
2022-07-08fixup! get-test-job: Query for subtests, and write per-subtest lockfilesKent Overstreet
2022-07-08fixup! Rework ktest -> test interfaceKent Overstreet
2022-07-08fixup! get-test-job: Query for subtests, and write per-subtest lockfilesKent Overstreet
2022-07-07get-test-job: Query for subtests, and write per-subtest lockfilesKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com
2022-07-07qemu-wrapper: Default timeout now applies per-subtestKent Overstreet
Previously, a default timeout would apply to _all_ subtests. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07Rework ktest -> test interfaceKent Overstreet
This is the start of making .ktest tests programs that are executed directly, instead of having them sourced and invoked by ktest. - Kill require-lib - list_tests, run_test, run_tests are now normal library functions, instead of using code injection Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07Restart VM if necessary until tests are completeKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07qemu-wrapper is now responsible for writing test statusKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07Always pass -t option to mountKent Overstreet
Mount occasionally returns and error while actually succeeding if we don't specify the filesystem type. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07Ignore errors from pkillKent Overstreet
If we have no child processes an error is expected Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07qemu-wrapper now records test durationKent Overstreet
This will be more reliable than relying on tests running inside the VM. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07qemu-wrapper: Print out test name correctly on test timeoutKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-07Print error when tests die because command erroredKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-04config-timeout no longer requiredKent Overstreet
Instead, if it's not specified there's a default 10 minute timeout - now that we can specify per-test timeouts the global timeout isn't as important. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-04Create subdirectories for individual test artifactsKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-01get-test-jobKent Overstreet
New tool for getting a test job and creating a lockfile. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-01qemu-wrapper: Print timeout on test timeoutKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-01Tests can now specify architecture with config-archKent Overstreet
This will overide -a, if also specified on the command line. This also updates bcachefs/32bit.ktest, which can now boot with the correct root image. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-07-01Ensure tests are marked as not runKent Overstreet
If we fail to run tests for any reason, we want to mark them as not run: this patch creates per-test logfiles immediately after parsing the test and marks them as not run, ensuring they're marked correctly no matter what kind of error we get. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-30qemu-wrapper: include newline in timeout messageKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-30qemu-wrapper: Handle tests with / in their nameKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-29Run depmod in build-test-kernelKent Overstreet
Running depmod is one of the slower parts of launching a VM - moving it to build-test-kernel will help with that. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-27qemu-wrapper: Print test name when failing due to timeoutKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-26Minor improvementsKent Overstreet
- kernel config updates - build with make -k, for better error messages - use nproc command for nr of cpus - add require-qemu-append Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-26Set per-test watchdog for some bcachefs testsKent Overstreet
This will help stuck tests timeout quicker Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-26qemu-wrapper: Don't use SA_RESTARTKent Overstreet
SA_RESTART + SIGALRM is janky Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-06-26Improve timeout/watchdog functionalityKent Overstreet
This reworks watchdogs in the qemu-wrapper, so that now we correctly print TEST FAILED in each logfile when a test times out. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>