X-Git-Url: https://git.exim.org/buildfarm-client-wiki.git/blobdiff_plain/49cc824f7f728a0f59f5a7450abed9377185bde0..84bad0644f020c852aa9ad7c23281581d23c58a2:/TestingBuilds.md diff --git a/TestingBuilds.md b/TestingBuilds.md index d805207..3b71b1c 100644 --- a/TestingBuilds.md +++ b/TestingBuilds.md @@ -45,15 +45,27 @@ In each of the following sample command lines, remember that `--test` will force 4. Debug mode, only run configure and make if there is a new commit, submit results to server: `./run_build.pl --only-steps configure,make --verbose=2` -5. Run all steps, configured to also do make_test, but limit the range of tests from 1 to 9: +5. Run all steps, only if there is a new commit, configured to also do make_test, but limit the range of tests from 1 to 9: `./run_build.pl --override range_test_num='1 9'` -6. Just build docs, don't submit results: -`./run_build.pl --force --only-steps=make-doc --nosend` +6. Just build docs, don't submit results (configure builds the *Local/Makefile*, which is required for doc building) : +`./run_build.pl --force --only-steps=configure,make-doc --nosend` 7. Just build docs, equivalent command: -`./run_build.pl --test --only-steps=make-doc` +`./run_build.pl --test --only-steps=configure,make-doc` -8. Just build docs, but allow it to submit results: -`./run_build.pl --force --only-steps=make-doc` +8. Just build docs, but allow it to submit results (not advised since you aren't building the actual binary) : +`./run_build.pl --force --only-steps=configure,make-doc` + +### Extreme test debugging +Sometimes you need to figure out why one test is failing. To see exactly what is happening, you can create a temporary build, don't delete it, and then manually run the test in a debug mode. In the following example, I'll assume that I'm wanting to find why test 433 is failing + + PATH="$PATH:/sbin" ./run_build.pl --test --verbose=2 --force --only-steps=configure,make,test \ + --override range_num_tests='1 1' --keepall + +The above will create a subdirectory of the format _exim.$PID_ (of the script running the build farm). In the example above, the git checkout of the exim sources was in `$HOME/buildfarm/HEAD/exim.4689/`, so we change into the test directory and manually instantiate the runtest script, specifying which test we want it to run. + + ./runtest $HOME/buildfarm/HEAD/exim.4689/src/build-Linux-i386/exim -DEBUG 433 433 + +It will print out copious debug output and you can hopefully find the problem based on that output. \ No newline at end of file