[Buildbot-devel] multi-repo support: repo URLs

Dustin J. Mitchell dustin at zmanda.com
Sun Apr 11 19:12:08 UTC 2010


On Sun, Apr 11, 2010 at 6:41 AM, Tobias Oberstein
<tobias.oberstein at tavendo.de> wrote:
> As said, I think the fully qualified repo URL should be part of a change,
> since together with branch/revision, it uniquely identifies the change.

Agreed, and this bears repeating :)
> This means e.g. that the sourcestamp stored in the database does not contain the
> fully qualified repo URL.

I see this as a problem, too.

> If the hook doesn’t send the fully qualified URL, then I think the right place
> to derive the fully qualified URL is not the build step, but the change source.

We should never be putting substrings into the repository property.
If a Change or SourceStamp has a nonempty repository attribute, it
should be a complete pointer to the code.  Again, you can do whatever
you want in the privacy of your project, but in terms of Buildbot's
design, let's keep it simple.

The problem that you and Ben are addressing is that the origin of the
Change may not be the best place to get the code, especially in a DVCS
situation.  Concretely, if I commit to a local git repo, the
repository string

  /home/dustin/projects/amanda/

is not particularly helpful on some other system.  So the issue is one
of recognizing "equivalent" repositories, and perhaps substituting a
canonical repository for its equivalents.  *This* can be done at the
ChangeSource level, but I think that we will quickly find
%-substitution too limiting.  Rather, let's add a "canonicalize"
function to the changesources that can perform whatever munging is
approrpriate (and not just on the repository).

Dustin

-- 
Open Source Storage Engineer
http://www.zmanda.com




More information about the devel mailing list