Buildbot setup ============== Required packages ----------------- On master machine buildbot [For now (2019/08/22), debian testing doesn't have buildbot-www package, so to install buildbot from PyPI $ python3 -mvenv buildbot $ cd buildbot $ . bin/active $ pip install --upgrade pip $ pip install 'buildbot[bundle]' ] On worker machine buildbot-worker gcc cpp binutils bison flex make bc dc libc6-dev libfuse-dev libaio-dev libacl1-dev libattr1-dev libssl-dev pkg-config sparse valgrind lcov fuse git time gnuplot task-ssh-server gawk python perl gdb w3m-img lftp acl attr hdparm sdparm KVM guest setup --------------- See <https://github.com/OGAWAHirofumi/linux-tux3/wiki/KVM-setup> for KVM setup itself. 1. Install debian testing 2. Install required packages Required packages are same with "Worker machine" except buildbot-worker. 3. Make ssh key to login as "root" without password Login as root to guest, and make key for ssh $ ssh-keygen [press entry for all questions] $ cp .ssh/id_rsa.pub .ssh/authorized_keys Send .ssh/id_rsa by e.g. ftp to host machine 4. For fast boot, set grub timeout to 0 In the guest, $ sed -ie 's/\(GRUB_TIMEOUT\)=.*/\1=0/' /etc/default/grub $ update-grub 5. Make tarball of guest image $ tar cJf kvm-<arch>.tar.xz kvm-<arch>.qcow2 id_rsa-<arch> 6. Deploy for buildbot-worker Buildbot-worker download guest image from <master-dir>/guest-images/ $ mv kvm-<arch>.tar.xz to <master-dir>/guest-images/ Test setup ---------- tux3 test tools are in follwing repository <git://github.com/OGAWAHirofumi/tux3-tests.git> See README in the repository. Run buildbot master ------------------- $ buildbot create-master -r <master-dir> $ cd <master-dir> $ mv master.cfg.sample master.cfg $ edit master.cfg $ buildbot start Run buildbot worker ------------------ $ buildbot-worker create-worker -r <worker-dir> localhost:9989 <worker-name> <worker-pass> $ cd <worker-dir> $ buildbot-worker start TODO ---- - Add performance test for kernel - When test was fail with coredump, we would want to save coredump and binary