Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
GitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
Run a bunch of OpenBSD regression tests in a row. The intension is to have a reliable set of tests and run them on a regular basis. The result summary is written to a file, log output of each test is available. A second prupose is to run OpenBSD performance tests. A certain cvs checkout corresponding to a date is created. The build environment is based on the previous release and adapted with commands from current.html. This is mostly updating the build tools to compile a kernel from that cvs checkout date. The results are grouped by run date, cvs checkout date, and repetitions. The tests are run multiple times to detect deviations. Tests consist of iperf3, tcpbench, and kernel compile time. Buildquirks.pm - create tool chain to compile kernel from certain date Hostctl.pm - run commands on all tests hosts to configure them Logcmd.pm - common log funtions for run.pl, setp.pl, and setup.pl Machine.pm - functions to setup a single machine cleanup.pl - remove old test logs to recover disk space cvsbuild.pl - checkout kernel at certain cvs date and install it cvslog.pl - collect all cvs commit messages between two dates env-ot1.sh - environment variables to be set on the test machine ot1 mktestlist.pl - find possible names of tests in regress directory once.pl - run performance test once, used for manual testing perform-html.pl - convert performance test results into html table perform.pl - run one set up performace test on test machine, this is started by step.pl pkg-ot1.list - list of packages that must be installed on test machine ot1 pkg-ot2.list - list of packages that must be installed on test machine ot2 reboot.pl - reboot machine, after optionally reordering kernel regress-html.pl - convert all regression test results into html table regress.pl - run one openbsd regression test on test machine, this is started by run.pl run.pl - do regression tests, add this to cron job setup-html.pl - convert machine setup logs into html table setup.pl - install one test machine, this is started by run.pl and step.pl site.list - list of config files that must be installed on test machine step.pl - do performance tests, add this to cron job test.list - list of /usr/src/regress subdirectories that should be tested testsuite-html.pl - create html of test suites run during regress Several modes for run.pl and setup.pl exist to prepare the test machines. build - build system from source /usr/src cvs - cvs update /usr/src and make obj install - install from snapshot keep - keep existing software on machine and skip setup kernel - build kernel from source /usr/src/sys upgrade - upgrade with snapshot Daily test results are published here: http://bluhm.genua.de/regress/results/regress.html Performance timelines are published here: http://bluhm.genua.de/perform/results/perform.html Thanks to genua GmbH https://www.genua.de/ for sponsoring this work.