[Buildbot-devel] Some good tutorials about running BB on a mac?
Fulvio Cervone
fcervone at me.com
Mon Jan 17 19:17:17 UTC 2011
On Jan 14, 2011, at 3:36 PM, Mitch Jones wrote:
>
> Hi Fulvio,
Hi Mitch,
>
> This is pretty straight-forward.
>
> For each slave, put something like the following in your master.cfg
>
> BuildSlave('Your slave name', 'your_slave_password', max_builds=1, notify_on_missing="you at some.mail.com")
>
> Of course, you'll want to change the name and password to whatever is appropriate for you.
>
> When you create the builder, you'll give it the slave name that should handle it.
Awesome! looks pretty straight forward!
>
>> -make a nicer waterfall page and replace the standard one.
>
> I'd like this too, but I've never defined what it is I actually want to be better. The jinja template work that recent went in should help with this I believe but someone else will need to chime in to describe how to change this.
It looks like it requires some css work, plus some love for the formatting if a field is not included in the template; hopefully someone will come up with some instructions for "non-web-designers" engineers :)
>
>> -understand how to modify the emails (i would like to have a custom email when a build fail, so all the other teammates are aware of it, and in particular the person that broke the build)
>
> I've got code that does this that is basically verbatim from the buildbot docs. Rather than duplicate that here, contact me off list if you can't find it.
I think that I've found it; following the instructions now so I can try and see if the formatting is in fact working.
>
>> -my projects has dependencies (i have a custom framework that we write almost every day, and it is used to build or app), so I would like to know how to manage these dependencies, so if my custom framework fails I do not get failures in my build project (if is even possible)
>
> One way to handle this would be through trigger build steps, where the a successful build in a parent would trigger the child dependency. In my case, I chose to incorporate my dependent libraries into one step since by themselves the components I'm building aren't interesting. When one fails during a build, the next step doesn't occur.
>
> For my purposes, I threw together a simple XCode class that handles the xcodebuild build command, and here it is:
>
> from buildbot.steps.shell import Compile
>
> class Xcode(Compile):
> def __init__(self,
> target,
> configuration = "Release",
> projectFile = None,
> **kwargs):
> self.target = target
> self.configuration = configuration
> self.projectFile = projectFile
>
> # always upcall !
> Compile.__init__(self, **kwargs)
> self.addFactoryArguments(
> target = target,
> configuration = configuration,
> projectFile = projectFile
> )
>
> def start(self):
> command = ["xcodebuild"]
>
> if self.projectFile != None:
> command.append("-project")
> command.append(self.projectFile)
> command.append("-target")
> command.append(self.target)
> command.append("-configuration")
> command.append(self.configuration)
> self.setCommand(command)
> return Compile.start(self)
>
> Adding it to a builder is simply:
>
> f = factory.BuildFactory()
> f.addStep(xcode.Xcode(name="My App", workdir=projectDir("/relative/path/to/app"), target="My Target"))
>
Your approach is really interesting, I will give it a try!
Otherwise I was planning to have a masterscript in shell that will handle all the preliminary actions and return a value, so if it fails I can take countermeasures, and it will show up as one single step error on the waterfall page.
>
>> I know that there is a lot here; but I am kinda lost, so after trying to read the documentation I've decided to ask to a wider audience :)
>
>
> Hope some of this helps.
> --
> Mitch Jones
> mitch at niftyneato.com
>
Thanks for your reply, is a good start!
-Fulvio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20110117/8dd32aa3/attachment.html>
More information about the devel
mailing list