Key setup Register SSH public key to Gerrit and SBS APT server. Make SSH private key available to Buildbot, both master and slave. Common setup ~$ sudo apt-get install python-virtualenv python-pip python-dev ~$ virtualenv buildbot ~$ cd buildbot ~/buildbot$ . bin/activate Master setup (buildbot)~/buildbot$ pip install buildbot (buildbot)~/buildbot$ buildbot create-master master (buildbot)~/buildbot$ ln -s ~/slp/pkgs/w/webkit-efl/tizen-scripts/tizen-buildbot/master/* master (buildbot)~/buildbot$ buildbot start master To speed up initial checkout for GitPoller (not currently used): ~/buildbot/master$ git clone ~/slp/pkgs/w/webkit-efl gitpoller ~/buildbot/master$ cp ~/slp/pkgs/w/webkit-efl/.git/config gitpoller/.git For publishing build results, /var/www should be writable by Buildbot master, and served as the web root. Slave setup (buildbot)~/buildbot$ pip install buildbot-slave (buildbot)~/buildbot$ buildslave create-slave slave01 165.213.206.180:10000 slave01 password (buildbot)~/buildbot$ buildslave start slave01 Edit slave01/info/{admin,host}. To speed up initial checkout: ~/buildbot/slave01$ git clone ~/slp/pkgs/w/webkit-efl gerrit/build ~/buildbot/slave01$ touch gerrit/build/.buildbot-sourcedata SBS uses ccache to speed up build, but the default size of 1 GiB is too small for WebKit. 10 GiB is recommended. ~$ ccache -M 10G dpkg uses TMPDIR while creating binary packages. In recent Linux distributions default TMPDIR /tmp is mounted as tmpfs. As tmpfs is a memory file system, by default its size is set to certain percentage of physical memory. This speeds up build, but it can cause disk full error(ENOSPC) or memory full error(ENOMEM). There are two solutions: * Disable tmpfs for /tmp This can be done by setting RAMTMP to no in rcS. Read rcS(5) for details. * Ensure tmpfs on /tmp has enough space This can be done by fstab entry like the following. Read mount(8) for other mount options. At least 1 GiB is recommended for size. tmpfs /tmp tmpfs nodev,nosuid,size=1g 0 0