From 00a66a0587e211def455043583cdd8f487e5fe2a Mon Sep 17 00:00:00 2001 From: mquinson Date: Mon, 10 Nov 2008 22:35:15 +0000 Subject: [PATCH] get the SVN poller working, use the real archive name (with revision in it), get the pthread builder download the archive instead of updating the svn. Still todo: update ucontext builder, automatic trigger of real builders once the distmaker is done. Afterward, any autogenerated can be droped from svn git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@6022 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- build/buildbot/master/master.cfg | 44 ++++++++++++++++---------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/build/buildbot/master/master.cfg b/build/buildbot/master/master.cfg index bcf94cfc32..6f8be0138b 100644 --- a/build/buildbot/master/master.cfg +++ b/build/buildbot/master/master.cfg @@ -33,10 +33,11 @@ c['slavePortnum'] = 9989 from extensions import CustomSVN, CustomConfigure, CustomCheck from buildbot.process import factory -from buildbot.steps.transfer import FileUpload +from buildbot.steps.transfer import FileUpload,FileDownload from buildbot.steps.shell import ShellCommand from buildbot.steps.source import SVN - +from buildbot.process.properties import WithProperties + # build tarball factory dist_factory = factory.BuildFactory() dist_factory.addStep(CustomSVN, name ="svn update", baseURL='svn://scm.gforge.inria.fr/svn/simgrid/simgrid/', defaultBranch='trunk', mode="update") @@ -48,29 +49,27 @@ dist_factory.addStep(ShellCommand,name = "bootstrap",description = "bootstraping environ={"LC_ALL":"C"}, haltOnFailure = True,command=["./bootstrap"]) dist_factory.addStep(ShellCommand,name = "configure", description="configuring", descriptionDone="configure", environ={"LC_ALL":"C"}, haltOnFailure = True,command=["./configure", "--enable-maintainer-mode"]) -#dist_factory.addStep(ShellCommand,name = "make clean",description = "running make clean",descriptionDone = "make clean", -# environ={"LC_ALL":"C"}, haltOnFailure = True,command=["make", "clean"]) dist_factory.addStep(ShellCommand,name = "make -C src", description = "building src", descriptionDone = "make -C src", environ={"LC_ALL":"C"}, haltOnFailure = True,command=["make","-j","4","-C","src"]) dist_factory.addStep(ShellCommand,name = "make -C tools", description = "building tools", descriptionDone = "make -C tools", environ={"LC_ALL":"C"}, haltOnFailure = True,command=["make","-j","4","-C","tools"]) dist_factory.addStep(ShellCommand,name = "make dist", description = "building archive", descriptionDone = "make dist", environ={"LC_ALL":"C"}, haltOnFailure = True,command=["make","dist"]) -dist_factory.addStep(ShellCommand,name = "Prepare archive",descriptionDone="Prepare archive", haltOnFailure = True,command=["bash","-c","ln -s simgrid-*.tar.gz simgrid-svn-lastest.tar.gz"]) -dist_factory.addStep(FileUpload(name="Upload archive",slavesrc="simgrid-svn-lastest.tar.gz",masterdest="simgrid-svn-lastest.tar.gz",haltOnFailure = True)) +dist_factory.addStep(FileUpload(name="Upload archive",haltOnFailure = True, + slavesrc= WithProperties("simgrid-3.3-svn-r%sM.tar.gz", "got_revision"), + masterdest=WithProperties("simgrid-3.3-svn-r%sM.tar.gz", "got_revision"))) +archive = "simgrid-3.3-svn-r%(revision:-)sM.tar.gz" # Test tarball factories pthreads_factory_O3= factory.BuildFactory() -pthreads_factory_O3.addStep(CustomSVN, name ="{svn update}", baseURL='svn://scm.gforge.inria.fr/svn/simgrid/simgrid/', defaultBranch='trunk', mode="update") -pthreads_factory_O3.addStep(ShellCommand,name = "{svn revert}",description = "running svn revert",descriptionDone = "svn revert", - environ={"LC_ALL":"C"}, haltOnFailure = True,command=["svn" ,"revert","-R","."]) -pthreads_factory_O3.addStep(ShellCommand,name = "{configure}", description="running configure", descriptionDone="configure", - environ={"LC_ALL":"C"}, haltOnFailure = True,command=["./configure", "--with-pthread","--enable-compile-warnings","--enable-compile-optimizations","--enable-botbuild"]) -pthreads_factory_O3.addStep(ShellCommand,name = "{make clean}",description = "running make clean",descriptionDone = "make clean", - environ={"LC_ALL":"C"}, haltOnFailure = True,command=["make", "clean"]) -pthreads_factory_O3.addStep(ShellCommand,name = "{make}", description = "running make", descriptionDone = "make", - environ={"LC_ALL":"C"}, haltOnFailure = True,command=["make","-j","4"]) -pthreads_factory_O3.addStep(CustomCheck,name ="{check all}", description = "running check all", descriptionDone ="check all", +pthreads_factory_O3.addStep(ShellCommand,name="cleanup",descriptionDone="cleanup",command=["bash","-c","rm -rf * .svn"]) +pthreads_factory_O3.addStep(FileDownload(name="get archive",haltOnFailure=True,slavedest=WithProperties(archive),mastersrc=WithProperties(archive))) +pthreads_factory_O3.addStep(ShellCommand, name ="open archive",descriptionDone="open archive", command=["tar","xvfz",WithProperties(archive),"--strip","1"]) +pthreads_factory_O3.addStep(ShellCommand,name = "configure", description="running configure", descriptionDone="configure", + environ={"LC_ALL":"C"}, haltOnFailure = True,command=["./configure", "--with-pthread","--enable-compile-warnings","--enable-compile-optimizations"]) +pthreads_factory_O3.addStep(ShellCommand,name = "make", description = "running make", descriptionDone = "make", + environ={"LC_ALL":"C"}, haltOnFailure = True,command=["make","-j","10"]) +pthreads_factory_O3.addStep(CustomCheck,name ="check all", description = "running check all", descriptionDone ="check all", haltOnFailure = True,command=["./checkall"]) ucontext_factory_O3= factory.BuildFactory() @@ -155,12 +154,12 @@ c['builders'] = [ # Get changes from SVN, by polling every 60 seconds from buildbot.changes.svnpoller import SVNPoller -c['change_source'] = SVNPoller("svn://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk", pollinterval=60) +c['change_source'] = SVNPoller("svn://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk", pollinterval=600) # Once we have a change, build a tarball from buildbot import scheduler -maketarball = scheduler.Scheduler(name="maketarball", branch=None, treeStableTimer=1, builderNames=['distBuilder']) +maketarball = scheduler.Scheduler(name="maketarball", branch=None, treeStableTimer=60, builderNames=['distBuilder']) c['schedulers'] = [maketarball] @@ -169,6 +168,9 @@ c['schedulers'] = [maketarball] c['status'] = [] +# TODO: move to modernity here (but write an index.html for that) +#from buildbot.status.html import WebStatus +#c['status'].append(WebStatus(8010)) from buildbot.status import html c['status'].append( html.Waterfall(http_port=8010) ) @@ -176,8 +178,8 @@ from buildbot.status import words c['status'].append(words.IRC(host="irc.oftc.net", nick="simgrid_buildbot", channels=["#simgrid"])) from buildbot.status.mail import MailNotifier -mn = MailNotifier(fromaddr="SimGrid buildbot ", - sendToInterestedUsers=False, extraRecipients=['martin.quinson@loria.fr']) +mn = MailNotifier(fromaddr="sg-dev@lists.gforge.inria.fr", + sendToInterestedUsers=False, addLogs=True, extraRecipients=['martin.quinson@loria.fr']) c['status'].append(mn) #################################################################################### @@ -185,12 +187,10 @@ c['status'].append(mn) # We use only one scheduling right now, a nightly one, which reruns everything -# TODO: setup a rebuilder in response to SVN commits # TODO: Define a list of all slaves and use it here and in the definition of c['builders'] from buildbot.scheduler import Scheduler, Nightly, Periodic - #nightly_scheduler = Nightly( # "nightly", # name # all_slaves, # defined in account.py -- 2.20.1