URL:
https://svn.lrde.epita.fr/svn/lrde-tools/trunk/buildbot/masters
ChangeLog:
2007-11-08 Benoit Sigoure <tsuna(a)lrde.epita.fr>
Add a buildfarm for Vaucanson.
* vaucanson_master.cfg: New.
* www/index.php: Link to the new waterfall.
---
vaucanson_master.cfg | 185 +++++++++++++++++++++++++++++++++++++++++++++++++++
www/index.php | 1
2 files changed, 186 insertions(+)
Index: trunk/buildbot/masters/www/index.php
===================================================================
--- trunk/buildbot/masters/www/index.php (revision 445)
+++ trunk/buildbot/masters/www/index.php (revision 446)
@@ -10,6 +10,7 @@
<h2>BuildFarms</h2>
<ul>
<li><a href="oln/">Olena (trunk)</a></li>
+ <li><a href="vaucanson/">Vaucanson
(trunk)</a></li>
</ul>
<h2>Latest builds</h2>
<a href="/releases/"><strong>All
releases</strong></a>
Index: trunk/buildbot/masters/vaucanson_master.cfg
===================================================================
--- trunk/buildbot/masters/vaucanson_master.cfg (revision 0)
+++ trunk/buildbot/masters/vaucanson_master.cfg (revision 446)
@@ -0,0 +1,185 @@
+# -*- python -*-
+# ex: set syntax=python:
+# vi: set ft=python:
+# Doc @
http://buildbot.sourceforge.net/manual-0.7.4.html#Config-File-Format
+
+c = BuildmasterConfig = {}
+
+####### PROJECT IDENTITY
+#
http://buildbot.sourceforge.net/manual-0.7.4.html#Defining-the-Project
+
+c['projectName'] = 'Vaucanson'
+c['projectURL'] = 'https://vaucanson.lrde.org/'
+
+# the 'buildbotURL' string should point to the location where the buildbot's
+# internal web server (usually the html.Waterfall page) is visible. This
+# typically uses the port number set in the Waterfall 'status' entry, but
+# with an externally-visible host name which the buildbot cannot figure out
+# without some help.
+
+c['buildbotURL'] = 'https://vaucanson.lrde.org/'
+
+# 'slavePortnum' defines the TCP port to listen on. This must match the value
+# configured into the buildslaves (with their --master option)
+
+c['slavePortnum'] = 9943
+
+####### CHANGESOURCES
+#
http://buildbot.sourceforge.net/manual-0.7.4.html#Listing-Change-Sources-an…
+#
http://buildbot.sourceforge.net/manual-0.7.4.html#Getting-Source-Code-Chang…
+
+# the 'change_source' list tells the buildmaster how it should find out about
+# source code changes. Any class which implements IChangeSource can be added
+# to this list: there are several in buildbot/changes/*.py to choose from.
+
+import buildbot.changes.pb
+c['change_source'] = [buildbot.changes.pb.PBChangeSource()]
+
+####### SCHEDULERS
+#
http://buildbot.sourceforge.net/manual-0.7.4.html#Listing-Change-Sources-an…
+
+## configure the Schedulers
+
+from buildbot.scheduler import AnyBranchScheduler
+c['schedulers'] = []
+c['schedulers'].append(AnyBranchScheduler(name='all', branches=None,
+ treeStableTimer=10*60,
+ # When a change occurs, wait 10 minutes before
+ # lunching the build.
+ builderNames=['mingw32-gcc-3.4.5',
+
'powerpc-apple-darwin8-gcc-4.0.1',
+ 'i686-apple-darwin8-gcc-4.0.1',
+ 'i486-linux-gnu-gcc-4.1',
+ 'i486-linux-gnu-gcc-3.3']))
+
+
+####### BUILDSLAVES
+#
http://buildbot.sourceforge.net/manual-0.7.4.html#Buildslave-Specifiers
+
+# the 'slaves' list defines the set of allowable buildslaves. Each element is a
+# tuple of bot-name and bot-password. These correspond to values given to the
+# buildslave's mktap invocation.
+from buildbot.buildslave import BuildSlave
+c['slaves'] = [BuildSlave('bot-winxp-mingw', '$%^@RP{7)/MZjk'),
+ BuildSlave('bot-macppc', '|^n3>($$W2-)^U'),
+ BuildSlave('bot-macx86', '!3.B6Q/3?_0n&J'),
+ BuildSlave('bot-linux-gcc3', 'EV5Q/[^[C%Z|>+'),
+ BuildSlave('bot-linux-gcc4', 'C"[f7^vXy^KX/*'),
+ ]
+
+####### BUILDERS
+#
http://buildbot.sourceforge.net/manual-0.7.4.html#Defining-Builders
+
+# the 'builders' list defines the Builders. Each one is configured with a
+# dictionary, using the following keys:
+# name (required): the name used to describe this bilder
+# slavename (required): which slave to use, must appear in c['slaves']
+# builddir (required): which subdirectory to run the builder in
+# factory (required): a BuildFactory to define how the build is run
+
+# buildbot/process/factory.py provides several BuildFactory classes you can
+# start with, which implement build processes for common targets (GNU
+# autoconf projects, CPAN perl modules, etc). The factory.BuildFactory is the
+# base class, and is configured with a series of BuildSteps. When the build
+# is run, the appropriate buildslave is told to execute each Step in turn.
+
+# the first BuildStep is typically responsible for obtaining a copy of the
+# sources. There are source-obtaining Steps in buildbot/process/step.py for
+# CVS, SVN, and others.
+
+builders = []
+from buildfactory import GNUBuildSystem
+
+mybranch='trunk'
+
+f_vaucanson_unix = GNUBuildSystem(project_repos='vaucanson',
+ branch=mybranch)
+
+f_vaucanson_unix_gcc3 = GNUBuildSystem(project_repos='vaucanson',
+ branch=mybranch,
+ extra_configure_args='CC=gcc-3.3 CXX=g++-3.3',
+ install_dir='vaucanson_gcc3')
+
+f_vaucanson_mingw = GNUBuildSystem(project_repos='vaucanson',
+ branch=mybranch,
+ extra_configure_args='--host=mingw32 --build=i686-pc-cygwin')
+
+builder_vaucanson_winxp_mingw = {'name': 'mingw32-gcc-3.4.5',
+ 'slavename': 'bot-winxp-mingw',
+ 'builddir': 'vaucanson_winxp_mingw',
+ 'factory': f_vaucanson_mingw
+ }
+builder_vaucanson_macppc = {'name': 'powerpc-apple-darwin8-gcc-4.0.1',
+ 'slavename': 'bot-macppc',
+ 'builddir': 'vaucanson_macppc',
+ 'factory': f_vaucanson_unix
+ }
+builder_vaucanson_macx86 = {'name': 'i686-apple-darwin8-gcc-4.0.1',
+ 'slavename': 'bot-macx86',
+ 'builddir': 'vaucanson_macx86',
+ 'factory': f_vaucanson_unix
+ }
+builder_vaucanson_linux_gcc4 = {'name': 'i486-linux-gnu-gcc-4.1',
+ 'slavename': 'bot-linux-gcc4',
+ 'builddir': 'vaucanson_linux_gcc4',
+ 'factory': f_vaucanson_unix
+ }
+builder_vaucanson_linux_gcc3 = {'name': 'i486-linux-gnu-gcc-3.3',
+ 'slavename': 'bot-linux-gcc3',
+ 'builddir': 'vaucanson_linux_gcc3',
+ 'factory': f_vaucanson_unix_gcc3
+ }
+
+c['builders'] = [builder_vaucanson_winxp_mingw,
+ builder_vaucanson_macppc,
+ builder_vaucanson_macx86,
+ builder_vaucanson_linux_gcc3,
+ builder_vaucanson_linux_gcc4,
+ ]
+
+####### STATUS TARGETS
+#
http://buildbot.sourceforge.net/manual-0.7.4.html#Status-Delivery
+
+# 'status' is a list of Status Targets. The results of each build will be
+# pushed to these targets. buildbot/status/*.py has a variety to choose from,
+# including web pages, email senders, and IRC bots.
+
+c['status'] = []
+
+import os
+from buildbot.status import html
+c['status'].append(html.WebStatus(http_port="tcp:8043:interface=0.0.0.0",
+ allowForce=True))
+
+from buildbot.status import mail
+c['status'].append(mail.MailNotifier(fromaddr="buildbot(a)lrde.epita.fr"rde.epita.fr",
+ lookup="lrde.epita.fr",
+ mode="problem",
+ sendToInterestedUsers=True))
+#
+# from buildbot.status import words
+# c['status'].append(words.IRC(host="irc.example.com",
nick="bb",
+# channels=["#example"]))
+#
+# from buildbot.status import client
+# c['status'].append(client.PBListener(9988))
+
+
+####### DEBUGGING OPTIONS
+
+# if you set 'debugPassword', then you can connect to the buildmaster with
+# the diagnostic tool in contrib/debugclient.py . From this tool, you can
+# manually force builds and inject changes, which may be useful for testing
+# your buildmaster without actually commiting changes to your repository (or
+# before you have a functioning 'change_source' set up). The debug tool uses the
+# same port number as the slaves do: 'slavePortnum'.
+
+#c['debugPassword'] = "debugpassword"
+
+# if you set 'manhole', you can ssh into the buildmaster and get an
+# interactive python shell, which may be useful for debugging buildbot
+# internals. It is probably only useful for buildbot developers. You can also
+# use an authorized_keys file, or plain telnet.
+#from buildbot import manhole
+#c['manhole'] =
manhole.PasswordManhole("tcp:9999:interface=127.0.0.1",
+# "admin", "password")
--
SIGOURE Benoit aka Tsuna (SUSv3 compliant)
_____ "I think Git is definitely in the running
/EPITA\ Promo 2008.CSI/ACU/YAKA to be the dominate version control system."
-- Bob Proulx