[Buildbot-devel] WithProperties?
Alexander O'Donovan-Jones
Alexander at ccpgames.com
Tue Dec 14 21:32:44 UTC 2010
You can hax this already, using the doStepIf. It has access to the step and it's properties, and is pretty handy for mutating them.
From: Amber Yust [mailto:ayust at yelp.com]
Sent: 14 December 2010 21:30
To: Christian Unger
Cc: buildbot-devel list
Subject: Re: [Buildbot-devel] WithProperties?
If you're willing to update to the latest GitHub master release, I recently added support to WithProperties for evaluation of functions to determine substitutions, so you can do something like this:
foo=WithProperties('%(bar)s', bar=lambda props: someval)
This would let you slice and dice the branch property if you desired. I don't think the source step supports WithProperties in the defaultBranch (I think that argument is evaluated at config-time, not run-time), so trying to use WithProperties there probably wouldn't work.
~Amber
On Tue, Dec 14, 2010 at 12:59 PM, Christian Unger <christian.unger at me.com<mailto:christian.unger at me.com>> wrote:
I seem to understand what is going on here,
and thanks much for opening my eyes :-)
ok, I can add a named property and am able to access it through interpolation.
and yes I can make this a convention here and make everyone enter projectName as a property when they are building.
still I'd either like to extract projectName from the branch property or have the default branch use projectName interpolation
like so:
source.SVN(mode='clobber', username=private.svnlogin, password=private.svnpass,
baseURL=checkout.projectsBaseURL, defaultBranch=WithProperties("%(projectName)s/trunk"),
locks=[tag_lock.access('exclusive')]),
ShellCommand(command=['time', './deploy.command', '--stage', 'dev'],
description="preparing staging tags",
descriptionDone="creating devtag",
haltOnFailure=True, locks=[tag_lock.access('exclusive')]),
source.SVN(mode='clobber', username=private.svnlogin, password=private.svnpass,
baseURL=checkout.projectsBaseURL, defaultBranch=WithProperties("%(projectName)s/tags/current"),
locks=[tag_lock.access('exclusive')]),
anyone?
On 14.12.2010, at 17:33, Amber Yust wrote:
If your property is named projectName, then...
where you'd normally have, say, foo='blah/tags/current'
Instead, use the following:
foo=WithProperties('%(projectName)s/tags/current')
(Note - this isn't a regex, it's Python string interpolation with a few extra syntaxes.)
~Amber
On Tue, Dec 14, 2010 at 7:59 AM, Christian Unger <christian.unger at me.com<mailto:christian.unger at me.com>> wrote:
I'm sorry, but I am really having a hard time wrapping my brain around properties in buildbot.
so I have a BuildFactory, where I do an svn source checkout of 'projectName/trunk',
where projectName is dynamic and can be set on the waterfall page as the branch property.
the next step tags this as 'projectName/tags/current' by using a shell script which is able to determine the projectName without buildbot interaction.
now the third step should be able to checkout 'projectName/tags/current' and retrieve projectName from the build properties.
my question is how to inject a regex into my build steps which extracts this string from the branch property.
any help very much appreciated
thanks in advance
__
cu
christian unger
------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Buildbot-devel mailing list
Buildbot-devel at lists.sourceforge.net<mailto:Buildbot-devel at lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/buildbot-devel
__
cu
christian unger
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20101214/a2830942/attachment.html>
More information about the devel
mailing list