This page documents the general setup process for a server that is acting as virtual machine host, like those documented in the Buildbot Setup for Virtual Machines section.
<host> with hostname) ssh <host>.mariadb.net sudo apt-get update sudo apt-get dist-upgrade
sudo apt-get install tree renameutils vim-nox
vi /etc/rsyncd.conf
/kvm/ dir and rsync it with the VM master above. The dir often resides at /home/kvm/ (or wherever the storage drive is) and is then linked to /kvm/. The VMs rely on the /kvm/vms/ path, so the /kvm/ location is required. vm_master="hostname" # ask for this from a buildbot admin
mkdir /home/kvm
ln -sv /home/kvm /kvm
rsync --dry-run --delete --exclude=deprecated \\
--exclude=iso --exclude=lost+found -avPL ${vm_master}::kvm/ /home/kvm/
# assuming the dry-run looks good, start the "real" rsync in a screen session
screen
rsync --delete --exclude=deprecated --exclude=iso --exclude=lost+found -avPL ${vm_master}::kvm/ /home/kvm/
Ctrl+a d update-alternatives --config editor
sudo apt-get install bzr git buildbot-slave qemu kvm sudo apt-get install libsdl2-2.0-0
username="mydefaultusername"
sudo adduser ${username}
for group in sudo tty kvm;do
sudo adduser ${username} ${group}
done
/.ssh/authorized_keys file so you can login that way sudo perl -i -pe "s/#PasswordAuthentication yes/PasswordAuthentication no/" /etc/ssh/sshd_config sudo perl -i -pe "s/PermitRootLogin yes/PermitRootLogin no/" /etc/ssh/sshd_config sudo /etc/init.d/ssh restart
mkdir ~/src cd ~/src/ bzr branch lp:mariadb-tools
sudo cp -v ~/src/mariadb-tools/buildbot/runvm /usr/local/bin/ ls -l /usr/local/bin/
sudo adduser buildbot kvm sudo adduser buildbot tty
maria-master-private.cfg file on the ${buildmaster} and also add it to the c['slaves'] array in maria-master.cfg then create the buildslave using the hostname and whatever ${password} was agreed upon by you and the buildbot admin: sudo buildslave create-slave /var/lib/buildbot/slaves/maria buildbot.askmonty.org ${host} ${password}
/etc/default/buildslave (replace ${hostname} with the name of the host) HOME=/var/lib/buildbot
SLAVE_ENABLED[1]=1
SLAVE_NAME[1]="${hostname} maria slave"
SLAVE_USER[1]="buildbot"
SLAVE_BASEDIR[1]="$HOME/slaves/maria"
SLAVE_OPTIONS[1]=""
SLAVE_PREFIXCMD[1]=""
sudo vi /var/lib/buildbot/slaves/maria/info/*
scp terrier.askmonty.org:buildbot-ssh.tar.gz . cd /var/lib/buildbot sudo tar -zxvf ~/buildbot-ssh.tar.gz sudo chown -Rv buildbot: .ssh sudo chmod -v 700 .ssh sudo chmod -Rv go-r .ssh
/bin/false to /bin/bash /etc/skel files sudo su - buildbot cp -v /etc/skel/.bash* . cp -v /etc/skel/.profile . exit
buildbot/slaves dir to buildbot:buildbot sudo chown -Rv buildbot:buildbot ~buildbot/slaves
/var/lib/buildbot directory to /home (or whatever location you want to use to store things) and then link it back sudo mv -vi /var/lib/buildbot /home/;cd /var/lib/;sudo ln -sv /home/buildbot ./
/etc/default/locale and change it to: LANG=en_US.UTF-8 sudo vi /etc/default/locale sudo locale-gen
sudo su - buildbot
for i in '/kvm/vms/vm-xenial-amd64-serial.qcow2 6666 qemu64' '/kvm/vms/vm-xenial-i386-serial.qcow2 6666 qemu64' ; do \
set $i; \
runvm --user=buildbot --logfile=kernel_$2.log --base-image=$1 --port=$2 --cpu=$3 "$(echo $1 | sed -e 's/serial/testtest/')" \
"sudo DEBIAN_FRONTEND=noninteractive apt-get update" \
"sudo DEBIAN_FRONTEND=noninteractive apt-get install -y patch libaio1 debconf-utils unixodbc libxml2 libjudydebian1" \
"= scp -P $2 /kvm/vms/my55.seed /kvm/vms/sources.append buildbot@localhost:/tmp/" \
"sudo debconf-set-selections /tmp/my55.seed" \
"sudo sh -c 'cat /tmp/sources.append >> /etc/apt/sources.list'"; \
done
rm -v /kvm/vms/*testtest*
sudo /etc/init.d/buildslave start tail -f ~buildbot/slaves/maria/twistd.log
${buildmaster} and add this new host to kvm_slaves in the maria-master.cfg file sudo vi /etc/buildbot/maria-master.cfg
${buildmaster}, test and then reload buildbot cd /etc/buildbot
sudo -u buildbot PYTHONPATH=/usr/local/buildbot/lib/python python -c 'exec open("maria-master.cfg", "r")'
sudo /etc/init.d/buildmaster reload
sudo tail -f /var/lib/buildbot/maria/twistd.log
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/buildbot-setup-for-vm-host/