gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r23275 - gnunet-planetlab/gplmt/contrib


From: gnunet
Subject: [GNUnet-SVN] r23275 - gnunet-planetlab/gplmt/contrib
Date: Fri, 17 Aug 2012 11:55:44 +0200

Author: wachs
Date: 2012-08-17 11:55:44 +0200 (Fri, 17 Aug 2012)
New Revision: 23275

Modified:
   gnunet-planetlab/gplmt/contrib/master_template.cfg
Log:
new template


Modified: gnunet-planetlab/gplmt/contrib/master_template.cfg
===================================================================
--- gnunet-planetlab/gplmt/contrib/master_template.cfg  2012-08-16 23:54:17 UTC 
(rev 23274)
+++ gnunet-planetlab/gplmt/contrib/master_template.cfg  2012-08-17 09:55:44 UTC 
(rev 23275)
@@ -2,125 +2,91 @@
 # ex: set syntax=python:
 
 # This is a sample buildmaster config file. It must be installed as
-# 'master.cfg' in your buildmaster's base directory (although the filename
-# can be changed with the --basedir option to 'mktap buildbot master').
+# 'master.cfg' in your buildmaster's base directory.
 
-# It has one job: define a dictionary named BuildmasterConfig. This
-# dictionary has a variety of keys to control different aspects of the
-# buildmaster. They are documented in docs/config.xhtml .
-
 # This is the dictionary that the buildmaster pays attention to. We also use
 # a shorter alias to save typing.
 c = BuildmasterConfig = {}
 
-
 ####### BUILDSLAVES
 
-# 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.
+# The 'slaves' list defines the set of recognized buildslaves. Each element is
+# a BuildSlave object, specifying a unique slave name and password.  The same
+# slave name and password must be configured on the slave.
 from buildbot.buildslave import BuildSlave
 c['slaves'] =  [%GPLMT_SLAVES]
 
-# 'slavePortnum' defines the TCP port to listen on. This must match the value
-# configured into the buildslaves (with their --master option)
-
+# 'slavePortnum' defines the TCP port to listen on for connections from slaves.
+# This must match the value configured into the buildslaves (with their
+# --master option)
 c['slavePortnum'] = 9989
 
 ####### CHANGESOURCES
 
 # the 'change_source' setting tells the buildmaster how it should find out
-# about source code changes. Any class which implements IChangeSource can be
-# put here: there are several in buildbot/changes/*.py to choose from.
+# about source code changes.  Here we point to the buildbot clone of pyflakes.
 
-from buildbot.changes.pb import PBChangeSource
-c['change_source'] = PBChangeSource()
+from buildbot.changes.svnpoller import SVNPoller
+c['change_source'] = [SVNPoller(svnurl = "https://gnunet.org/svn/gnunet/";, 
category="GNUnet")]
 
-# For example, if you had CVSToys installed on your repository, and your
-# CVSROOT/freshcfg file had an entry like this:
-#pb = ConfigurationSet([
-#    (None, None, None, PBService(userpass=('foo', 'bar'), port=4519)),
-#    ])
-
-# then you could use the following buildmaster Change Source to subscribe to
-# the FreshCVS daemon and be notified on every commit:
-#
-#from buildbot.changes.freshcvs import FreshCVSSource
-#fc_source = FreshCVSSource("cvs.example.com", 4519, "foo", "bar")
-#c['change_source'] = fc_source
-
-# or, use a PBChangeSource, and then have your repository's commit script run
-# 'buildbot sendchange', or use contrib/svn_buildbot.py, or
-# contrib/arch_buildbot.py :
-#
-#from buildbot.changes.pb import PBChangeSource
-#c['change_source'] = PBChangeSource()
-
-
 ####### SCHEDULERS
 
-## configure the Schedulers
+# Configure the Schedulers, which decide how to react to incoming changes.  In 
this
+# case, just kick off a 'runtests' build
 
-from buildbot.scheduler import Scheduler
+from buildbot.steps import source, shell
+from buildbot.schedulers.basic import SingleBranchScheduler
+from buildbot.schedulers.forcesched import ForceScheduler
+from buildbot.changes import filter
 c['schedulers'] = []
-c['schedulers'].append(Scheduler(name="gnunet", branch=None,
-                                 treeStableTimer=30*60,
-                                categories=["GNUnet"],
-                                 builderNames=[%GPLMT_SCHEDULER_BUILDERS]))
+c['schedulers'].append(SingleBranchScheduler(
+                            name="all",
+                            change_filter=filter.ChangeFilter(branch='master'),
+                            treeStableTimer=None,
+                            builderNames=[%GPLMT_SCHEDULER_BUILDERS]))
+c['schedulers'].append(ForceScheduler(
+                            name="force",
+                            builderNames=[%GPLMT_SCHEDULER_BUILDERS]))
 
-
 ####### 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['bots']
-#  builddir (required): which subdirectory to run the builder in
-#  factory (required): a BuildFactory to define how the build is run
-#  periodicBuildTime (optional): if set, force a build every N seconds
+# The 'builders' list defines the Builders, which tell Buildbot how to perform 
a build:
+# what steps, and which slaves can execute them.  Note that any particular 
build will
+# only take place on one slave.
 
-# 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.
+from buildbot.process.factory import BuildFactory
+from buildbot.steps.source import Git
+from buildbot.steps.shell import ShellCommand
 
-# the first BuildStep is typically responsible for obtaining a copy of the
-# sources. There are source-obtaining Steps in buildbot/steps/source.py for
-# CVS, SVN, and others.
-
-svnurl = "https://gnunet.org/svn/gnunet";
-
-from buildbot.changes.svnpoller import SVNPoller
-from buildbot.process import factory
-from buildbot.steps import source, shell
-from buildbot.steps.shell import Compile
-import os
-#rm-nat
-GNUNET_LOG_LEVEL=';;;;ERROR'
 tmp = "/tmp/gnbuild"
-le_tmp = "/tmp/lebuild"
-c['change_source'] = [SVNPoller(svnurl = "https://gnunet.org/svn/gnunet/";, 
category="GNUnet")]
 
-f = factory.BuildFactory()
+f = BuildFactory()
+# check out the source
 f.addStep(source.SVN(mode='update', svnurl = "https://gnunet.org/svn/gnunet/";))
-#f.addStep(shell.ShellCommand, command=["sh", "-c", "killall 
gnunet-service-arm || true; svn -R revert *; rm -rf /tmp/gnunet*; rm -rf 
/tmp/test*;"],
-#      description="clean up from previous runs",
-#      name="killall",
-#      haltOnFailure=False,
-#      timeout=30)
-#f.addStep(shell.ShellCommand, command=["sh", "-c", "./bootstrap"],
-#      description="bootstrap",
-#      name="bootstrap",
-#      haltOnFailure=True)
-#f.addStep(shell.Configure, command=["sh", "-c", "./configure 
--enable-logging=verbose --enable-benchmarks --enable-expensive-tests 
--prefix=" + tmp],
-#      description="configure",
-#      name="configure",
-#      haltOnFailure=True)
-#f.addStep(shell.Compile,command=["sh", "-c", "make install"])
-                  
-%GPLMT_BUILDER_DEFINITION 
+f.addStep(shell.ShellCommand(command=["sh", "-c", "killall gnunet-service-arm 
|| true; svn -R revert *; rm -rf /tmp/*; rm -rf $HOME/gnbuild;"],
+       description="clean up from previous runs",
+       name="killall",
+       haltOnFailure=False,
+       timeout=30))
+f.addStep(shell.ShellCommand(command=["sh", "-c", "libtoolize; ./bootstrap"],
+       description="bootstrap",
+       name="bootstrap",
+       haltOnFailure=True))
+f.addStep(shell.Configure(command=["sh", "-c", "export 
LD_LIBRARY_PATH=/usr/local/lib; ./configure --prefix=$HOME/gnbuild 
--with-extractor=/usr/local  --with-curl=/usr/local --with-mysql=/usr/lib/mysql 
--enable-logging=verbose"],
+       description="configure",
+       name="configure",
+       haltOnFailure=True))
+f.addStep(shell.Compile(description="make all",
+                                               name="make all",
+                                               command=["sh", "-c", "make 
all"]))
+f.addStep(shell.ShellCommand(description="make install",
+                                               name="make install",
+                                               command=["sh", "-c", "make 
install"]))
 
+from buildbot.config import BuilderConfig
+
+%GPLMT_BUILDER_DEFINITION
+
 c['builders'] = [%GPLMT_BUILDER_SUMMARY]
 
 ####### STATUS TARGETS
@@ -132,72 +98,43 @@
 c['status'] = []
 
 from buildbot.status import html
-from buildbot.status.web.authz import Authz
-from buildbot.status.web.auth import BasicAuth
+from buildbot.status.web import authz, auth
 
+authz_cfg=authz.Authz(
+    # change any of these to True to enable; see the manual for more
+    # options
+    auth=auth.BasicAuth([("%GPLMT_FORCE_USER","%GPLMT_FORCE_PWD")]),
+    gracefulShutdown = False,
+    forceBuild = 'auth', # use this to test your slave once it is set up
+    forceAllBuilds = False,
+    pingBuilder = False,
+    stopBuild = False,
+    stopAllBuilds = False,
+    cancelPendingBuild = False,
+)
+c['status'].append(html.WebStatus(http_port=8010, authz=authz_cfg))
 
-users = [('team', 'gnunet')]
-authz = Authz(auth=BasicAuth(users),
-       forceAllBuilds='auth',
-       forceBuild='auth', # only authenticated users
-        stopBuild='auth', # but anyone can do this
-        stopAllBuilds='auth',
-     )
-
-c['status'].append(html.WebStatus(http_port=8010, authz=authz))
-
-
-
-
-#c['status'].append(html.WebStatus(http_port=8010, allowForce=True))
-
-# from buildbot.status import mail
-# c['status'].append(mail.MailNotifier(fromaddr="address@hidden",
-#                                      extraRecipients=["address@hidden"],
-#                                      sendToInterestedUsers=False))
-#
-#from buildbot.status import words
-#c['status'].append(words.IRC(host="irc.freenode.net", nick="gnunet-plb",
-#                             channels=["#gnunet"]))
-#
-# 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 'sources' set up). The debug tool uses the
-# same port number as the slaves do: 'slavePortnum'.
-
-#c['debugPassword'] = "f1955c29e336834e88476f74c1825cdb"
-
-# 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")
-
-
 ####### PROJECT IDENTITY
 
-# the 'projectName' string will be used to describe the project that this
-# buildbot is working on. For example, it is used as the title of the
-# waterfall HTML page. The 'projectURL' string will be used to provide a link
-# from buildbot HTML pages to your project's home page.
+# the 'title' string will appear at the top of this buildbot
+# installation's html.WebStatus home page (linked to the
+# 'titleURL') and is embedded in the title of the waterfall HTML page.
 
-c['projectName'] = "GNUnet PlanetLab Testbed"
-c['projectURL'] = "https://gnunet.org/gplmt";
+c['title'] = "GNUnet"
+c['titleURL'] = "https://gnunet.org";
 
 # the 'buildbotURL' string should point to the location where the buildbot's
-# internal web server (usually the html.Waterfall page) is visible. This
+# internal web server (usually the html.WebStatus 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'] = "http://gnunet.org:8010/";
+c['buildbotURL'] = "http://localhost:8010/";
+
+####### DB URL
+
+c['db'] = {
+    # This specifies what database buildbot uses to store its state.  You can 
leave
+    # this at its default for all but the largest installations.
+    'db_url' : "sqlite:///state.sqlite",
+}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]