Table of Contents

Daniel Verkamp: Automated regression testing

Journal Week 2

Monday, June 1

Tuesday, June 2

Got a working BuildBot master and slave set up on a Debian machine; notes on buildbot.

It is currently running at http://pine.drv.nu:8010/ (although it might be down temporarily sometimes as I work on it).

So far, it is checking out the latest gPXE source from Git and building it (see the build logs on the BuildBot web interface; currently this is an incremental build with no make clean step, but that can easily be changed).

Wednesday, June 3

Linux serial console

Experimenting with Linux serial console for testing purposes; in conjunction with qemu's -serial stdio and -nographic, this should allow easy automated testing of Linux kernel booting.

Example: (append to kernel command line; this line works fine for qemu)

console=ttyS0,115200

mkbootfs

Building a basic Linux environment with mkbootfs; need to install uClibc first, so I am setting up a toolchain with Buildroot.

Thursday, June 4

More uClibc build wrangling; the toolchain was missing pieces (cc1, at least), so I rebuilt it, but now it seems to be dynamically linked against uClibc, which is not available on the host. Following directions at http://buildroot.uclibc.org/buildroot.html but the instructions are not completely clear when it comes to building only a toolchain usable on the host.

Friday, June 5

Made some progress with mkrootfs build; found the proper uClibc tools in buildroot's build_i686/staging_dir/usr/bin directory, but named as i686-linux-*, so now my uclibc wrapper script looks like this:

#!/bin/sh
export PATH=~/src/buildroot/buildroot-2009.05/build_i686/staging_dir/usr/bin:$PATH
export CROSS_COMPILE=i686-linux-
$@

Now I am hitting a problem with uClibc configuration (need large file support, which wasn't enabled in my build), so I must rebuild uClibc, but things are looking better.

Had IRC meeting with mcb30, mdc, and AndyTim - set goals for week 3 (write up and execute 4 test cases).

More progress on mkbootfs: after rebuilding with large file support, compilation gets farther, but now breaks with “You need to build uClibc with UCLIBC_HAS_RPC for NFS support.” - rebuilding uClibc again.