diff options
-rw-r--r-- | contrib/buildbot/README | 4 | ||||
-rw-r--r-- | contrib/buildbot/master.cfg | 153 | ||||
-rwxr-xr-x | contrib/buildbot/scripts/full-oe-autobuild | 62 |
3 files changed, 219 insertions, 0 deletions
diff --git a/contrib/buildbot/README b/contrib/buildbot/README new file mode 100644 index 0000000000..b5506a363b --- /dev/null +++ b/contrib/buildbot/README @@ -0,0 +1,4 @@ +This directory contains buildbot config used by Marcin Juszkiewicz. + +Buildbot homepage: http://www.buildbot.net/ +Marcin's buildbot: http://home.haerwu.biz:8010/ diff --git a/contrib/buildbot/master.cfg b/contrib/buildbot/master.cfg new file mode 100644 index 0000000000..537eb8110e --- /dev/null +++ b/contrib/buildbot/master.cfg @@ -0,0 +1,153 @@ +def runOEImage(factory, machine, image, libc): + defaultenv['ANGSTROMLIBC'] = libc + factory.addStep(ShellCommand, description=["Building", machine, image], command=["/home/buildbot/scripts/full-oe-autobuild", image, machine], env=copy.copy(defaultenv), timeout=10000) + +import copy + +builders = [] +defaultenv = {} + +config = BuildmasterConfig = {} + +config['projectName'] = "HaeRWu buildbot" +config['buildbotURL'] = "http://localhost:8010/" + +from buildbot.buildslave import BuildSlave +from buildbot.changes.pb import PBChangeSource +from buildbot.scheduler import Scheduler +from buildbot.scheduler import Periodic +from buildbot.scheduler import Nightly +from buildbot.process import factory +from buildbot.process import buildstep as step +from buildbot.steps.source import SVN +from buildbot.steps.python_twisted import Trial +from buildbot.steps.shell import Compile, ShellCommand +from buildbot.steps import source, shell + +config['slaves'] = [BuildSlave("homeQuad", "BOT-PASSWORD")] +config['slavePortnum'] = 9989 + +config['change_source'] = PBChangeSource() + +config['schedulers'] = [] + +config['schedulers'].append(Nightly(name="Angstrom glibc full build", + hour=23, minute=0, dayOfWeek=[0,2,4], + builderNames=["angstrom_glibc_full_build"])) + +config['schedulers'].append(Nightly(name="Angstrom glibc incremental build", + hour=5, minute=0, dayOfWeek=[0,2,4], + builderNames=["angstrom_glibc_incremental_build"])) + +config['schedulers'].append(Nightly(name="Angstrom uclibc full build", + hour=23, minute=0, dayOfWeek=[1,3,5], + builderNames=["angstrom_uclibc_full_build"])) + +config['schedulers'].append(Nightly(name="Angstrom uclibc incremental build", + hour=5, minute=0, dayOfWeek=[1,3,5], + builderNames=["angstrom_uclibc_incremental_build"])) + + +angstrom_glibc_incremental_build = factory.BuildFactory() +angstrom_glibc_incremental_build.addStep(source.Git(repourl="git://git.openembedded.net/openembedded", branch='stable/2009', mode='update')) + +angstrom_glibc_incremental_build.addStep(ShellCommand, description=["Cleaning", "previous", "images"], command="/bin/rm tmp/deploy/images/*/*/*rootfs* || /bin/true", timeout=600) +angstrom_glibc_incremental_build.addStep(ShellCommand, description=["Cleaning", "previous", "images", "step 2"], command="/bin/rm -rf tmp/deploy/images/*/*/*testlab* || /bin/true", timeout=600) +runOEImage(angstrom_glibc_incremental_build, 'at91sam9263ek', 'base-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'at91sam9263ek', 'console-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'at91sam9263ek', 'x11-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'beagleboard', 'base-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'beagleboard', 'console-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'beagleboard', 'x11-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'qemux86', 'base-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'qemux86', 'console-image', 'glibc') +runOEImage(angstrom_glibc_incremental_build, 'qemux86', 'x11-image', 'glibc') + +angstrom_glibc_full_build = factory.BuildFactory() +angstrom_glibc_full_build.addStep(source.Git(repourl="git://git.openembedded.net/openembedded", branch='stable/2009', mode='update')) + +angstrom_glibc_full_build.addStep(ShellCommand, description=["Cleaning", "previous", "images"], command="/bin/rm tmp/deploy/images/*/*/*rootfs* || /bin/true", timeout=600) +angstrom_glibc_full_build.addStep(ShellCommand, description=["Cleaning", "previous", "images", "step 2"], command="/bin/rm -rf tmp/deploy/images/*/*/*testlab* || /bin/true", timeout=600) +runOEImage(angstrom_glibc_full_build, 'at91sam9263ek', 'base-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'at91sam9263ek', 'console-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'at91sam9263ek', 'x11-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'beagleboard', 'base-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'beagleboard', 'console-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'beagleboard', 'x11-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'qemux86', 'base-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'qemux86', 'console-image', 'glibc') +runOEImage(angstrom_glibc_full_build, 'qemux86', 'x11-image', 'glibc') + +angstrom_uclibc_incremental_build = factory.BuildFactory() +angstrom_uclibc_incremental_build.addStep(source.Git(repourl="git://git.openembedded.net/openembedded", branch='stable/2009', mode='update')) + +angstrom_uclibc_incremental_build.addStep(ShellCommand, description=["Cleaning", "previous", "images"], command="/bin/rm tmp/deploy/images/*/*/*rootfs* || /bin/true", timeout=600) +angstrom_uclibc_incremental_build.addStep(ShellCommand, description=["Cleaning", "previous", "images", "step 2"], command="/bin/rm -rf tmp/deploy/images/*/*/*testlab* || /bin/true", timeout=600) +runOEImage(angstrom_uclibc_incremental_build, 'atngw100', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'atngw100', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'atngw100', 'x11-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'at91sam9263ek', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'at91sam9263ek', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'at91sam9263ek', 'x11-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'beagleboard', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'beagleboard', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'beagleboard', 'x11-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'qemux86', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'qemux86', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_incremental_build, 'qemux86', 'x11-image', 'uclibc') + +angstrom_uclibc_full_build = factory.BuildFactory() +angstrom_uclibc_full_build.addStep(source.Git(repourl="git://git.openembedded.net/openembedded", branch='stable/2009', mode='update')) + +angstrom_uclibc_full_build.addStep(ShellCommand, description=["Cleaning", "previous", "images"], command="/bin/rm tmp/deploy/images/*/*/*rootfs* || /bin/true", timeout=600) +angstrom_uclibc_full_build.addStep(ShellCommand, description=["Cleaning", "previous", "images", "step 2"], command="/bin/rm -rf tmp/deploy/images/*/*/*testlab* || /bin/true", timeout=600) +runOEImage(angstrom_uclibc_full_build, 'atngw100', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'atngw100', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'atngw100', 'x11-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'at91sam9263ek', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'at91sam9263ek', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'at91sam9263ek', 'x11-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'beagleboard', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'beagleboard', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'beagleboard', 'x11-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'qemux86', 'base-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'qemux86', 'console-image', 'uclibc') +runOEImage(angstrom_uclibc_full_build, 'qemux86', 'x11-image', 'uclibc') +#--------------------------------------------------------------------- + +build_agf = { + 'name': "angstrom_glibc_full_build", + 'slavename': "homeQuad", + 'builddir': "angstrom_glibc_full_build", + 'factory': angstrom_glibc_full_build, +} + +build_agi = { + 'name': "angstrom_glibc_incremental_build", + 'slavename': "homeQuad", + 'builddir': "angstrom_glibc_incremental_build", + 'factory': angstrom_glibc_incremental_build, +} +build_auf = { + 'name': "angstrom_uclibc_full_build", + 'slavename': "homeQuad", + 'builddir': "angstrom_uclibc_full_build", + 'factory': angstrom_uclibc_full_build, +} + +build_aui = { + 'name': "angstrom_uclibc_incremental_build", + 'slavename': "homeQuad", + 'builddir': "angstrom_uclibc_incremental_build", + 'factory': angstrom_uclibc_incremental_build, +} + +config['builders'] = [build_agf, build_agi, build_auf, build_aui ] +config['status'] = [] +config['debugPassword'] = "" + +from buildbot.status import html + +config['status'].append(html.Waterfall(http_port=8010)) +config['status'].append(html.Waterfall(http_port=8011, allowForce=False)) + diff --git a/contrib/buildbot/scripts/full-oe-autobuild b/contrib/buildbot/scripts/full-oe-autobuild new file mode 100755 index 0000000000..65605f0a7b --- /dev/null +++ b/contrib/buildbot/scripts/full-oe-autobuild @@ -0,0 +1,62 @@ +#!/bin/sh + +# Poky Automated Build Server Enviroment Setup Script +# +# Copyright (C) 2006-2007 OpenedHand Ltd. +# Adapted to OpenEmbedded by Marcin Juszkiewicz in 2008. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +CURRDIR=`pwd` + +BB_DIR=$PWD/bitbake + +PATH=$BB_DIR/bin:$PATH + +# Don't export TARGET_ARCH - it *will* cause build failures +export PATH LD_LIBRARY_PATH + +export BBPATH=`pwd` +export BB_ENV_EXTRAWHITE="MACHINE ANGSTROMLIBC" + +CONFFILE="./conf/local.conf" + +umask 000 + +rm conf/auto.conf + +CONFFILE="./conf/local.conf" + +if [ ! -e "$CONFFILE" ]; then + if [ ! -d "./conf" ]; then + mkdir -p "./conf" + fi + echo "BBFILES = '$PWD/recipes/*/*.bb'" > "$CONFFILE" + echo 'DISTRO = "angstrom-2008.1"' >> "$CONFFILE" + echo 'BB_NUMBER_THREADS = "6"' >> "$CONFFILE" + echo 'PARALLEL_MAKE = "-j 8"' >> "$CONFFILE" + echo 'DL_DIR = "/home/hrw/devel/sources/dl_dir/"' >> "$CONFFILE" + echo 'DEBIAN_MIRROR = "ftp://ftp.pl.debian.org/pub/debian/pool"' >> "$CONFFILE" + echo 'INHERIT += "rm_work"' >> "$CONFFILE" + echo 'BBINCLUDELOGS = "1"' >> "$CONFFILE" +fi + +touch ./conf/local.conf + +MACHINE=$2 nice ionice -c3 bitbake $1 + +retval=$? + +exit $retval |