[Buildbot-devel] project and repository

Benoît Allard benoit at aeteurope.nl
Wed Feb 24 17:56:24 UTC 2010


Dustin J. Mitchell wrote:
> On Wed, Feb 24, 2010 at 6:14 AM, Łukasz Jernaś <deejay1 at srem.org> wrote:
>> Bad example, GNOME uses git for quite a while now ;)
>> (http://git.gnome.org/browse/)
> 
> I saw that, but it doesn't make it a bad example.  This would work
> equally well with git, anyway -- the difference is that with
> Subversion a single SVNPoller could watch all GNOME projects, while
> with git you'll need a ChangeSource for each repo.
> 

I currently have one ChangeSource hook for all of my mercurial 
repositories, which means, my repository paths/names/property comes 
directly from the repository itself, there is no setup needed there, 
same as for the commiter, the date, the files commited, the comment, ...
I simply filter later on  at the scheduler level, based on the 
repository property, same as one would sort by branch currently.

As if the repository property can be used by the Source step, I guess, 
inside a property, it cans, but it still needs some sugar.

Let's take the example I'm dealing with the all day:

We have our project organized a bit like that:

project/
   dep/
     module 3/
     module 4/
   src/
     module 1/
     module 2/
     ...
   doc/
     module 1/
     module 2/
     ...

Here, the repository property automatically take the value 
"project/src/module 2" for instance, or "project/doc/module 3".

All what my scheduler needs to do is check if the repository match a 
regex (let's say /doc/) and launch the documentation builder. I did not 
spoke about the Source step yet because we have other tools in place to 
synchronize the state of the repositories. If we would like to do that 
with buildbot, we would just need to use the Source step with for instance:

Mercurial(repourl=WithProperty("http://server/urlroot/%(repository)s"))

which would be expanded to "http://server/urlroot/project/dep/module 3".

That's a bit of my vision about the patch I elaborated. According to me, 
it overlaps a bit with Dan's one as, as you can see, the project name is 
also included in the repository property. I concede that it's a bit 
particular to our setup though.

My key point is still to get the most of my repositories with the less 
manual setup. According to me the repository property is/was missing there.

Regards,
Benoit

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 6031 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://buildbot.net/pipermail/devel/attachments/20100224/675892e9/attachment.bin>


More information about the devel mailing list