[Buildbot-devel] Retrieving build results
chris at leishman.org
Sun Nov 27 23:31:02 UTC 2005
On Sat, Nov 26, 2005 at 11:20:13PM -0800, Joel Becker wrote:
> Here's how it works. If the branch being built is not a release
> tag, it gives a "release" version of 0.<revision>. If the tree is
> modified (as it would be for a "try" build), it gives 0.<revision>m. If
> the build is a release tag ("<repository>/tags/<project>-x.y"), it gives
> a release of -1. If the tag has been updated (small packaging fixes),
> it ups that number by traversing "svn log" until it finds the tag's
> creation. Because we can't add new tags to the Any scheduler easily,
> tags have to be build by using an explicit request, but that's OK. It's
> a release, after all.
> This gives us two properties. When looking at the built
> packages, any package with a "release" of -0.anything is not an official
> release and can be ignored. Second, if we give out a particular
> revision to a tester, we can be assured that the next revision will sort
> correctly for "rpm -U" or "dpkg -i", and the release (-1) will sort
> correctly as well.
So basically you work out a built product version number based on the
current subversion revision number and path (as obtained by running
'svn info' within the build process).
This approach could work, although I think it would be nice to have the
process a bit more defined in the build step configuration rather than
in external scripts.
I guess it would be nice if you could evaluate build steps conditionally
based on the branch, and it would be also nice if you could pass some of
the branch, revision and 'try' state through to the build steps instead
of having them run 'svn info' to try and figure it out.
More information about the devel