<div dir="ltr">Yes, that use case is a bit complicated as well.<div><br></div><div>You can use manifestBranch=Interpolate("%(src:branch)s")  but that actually only works if the actual change is for the manifest project.</div><div><br></div><div>So you would need a renderer function. something like:</div><div><br></div><div>manifestBranch=detectManifestBranch<br></div><div><br></div><div>@util.renderer</div><div>def detectManifestBranch(props):</div><div>     if props.getProperty("<span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">repository", "").endswith("manifest"):</span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">          return props.getProperty("branch")</span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px">     return "master"</span></div><div><span style="color:rgb(51,51,51);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px"><br></span></div></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Nov 16, 2017 at 3:37 PM Will Newton <<a href="mailto:will.newton@gmail.com">will.newton@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, Nov 16, 2017 at 1:49 PM, Pierre Tardy <<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>> wrote:<br>
> Hi Will,<br>
><br>
> Repo is a little bit different from the other source control, as it is a<br>
> higher level interface to git.<br>
><br>
> The manifest repository does not itself point to the source code that<br>
> Buildbot should be watching, but rather points to a list of repositories<br>
> that buildbot should be watching.<br>
><br>
> So the way that is currently in buildbot open source code is to have a<br>
> builder per manifest, then you would hardcode the manifest url and branch<br>
> that you are looking at.<br>
<br>
I'm not sure what this workflow looks like to the developer. Could you explain?<br>
<br>
I am imagining something like:<br>
<br>
1. I modify a repository<br>
2. I create a branch in the manifest repository that points the<br>
repository in question to the new revision in the manifest<br>
3. A build occurs to tell me if this change was good<br>
4. I merge the change to the release branch<br>
<br>
It seems like the current model means I can setup builders for a fixed<br>
set of branches so I could only build my release branches?<br>
<br>
> Finally you would setup a scheduler which watch the branches you know that<br>
> the manifest is pointing to.<br>
><br>
> A better approach would be to parse the manifest and to watch exactly the<br>
> touple (repository, branch) that the manifest is really pointing at, but<br>
> this is much more complicated. (In my previous job, this is what we were<br>
> doing, but the code was quite specific to our workflow, and we never<br>
> upstreamed it)<br>
</blockquote></div>