x/build: drop Go branch prefix from presubmit LUCI builders for the main Go repository #66009
Open
1 of 6 tasks
Labels
Milestone
Currently the LUCI builders all have a Go branch prefix. This makes the configuration simpler, and it makes the behavior of x/ repo builders against x/ repo changes explicit in the builder name.
This distinction is also necessary for displaying the Go repository postsubmit builders in the LUCI UI in a sensible way. If we were to drop the prefix and send all builds from all branches to the same Go repo builders in postsubmit, then the LUCI dashboard would display the latest build on any branch as the top-level status for a builder. This would make the overview of each dashboard at https://ci.chromium.org/p/golang very confusing. The LUCI UI generally treats distinct builders as having distinct histories, and we need to capture that distinction.
However, there are a few downsides, specifically for LUCI builders for the main Go repository in presubmit.
Cq-Include-Trybots
) and the commit is cherry-picked to a release branch, the person performing the cherry-picking needs to be careful to update the Go branch in the commit message. If they do not, they will run into a failure to start trybots.go1.21-*
builders, yet they appear in the dialog as an option.Note that dropping the prefix for presubmit makes sense while it doesn't for postsubmit, because presubmit builders don't really have a coherent notion of a history anyway.
I spent some time outlining how we might achieve this. Here are the steps:
bootstrap_version
.installTools
will need to know the version to index into the map.An alternative implementation would be to create the notion of a "proxy" builder whose only job consists of forwarding its invocation to a more specific build. This is doable, but the "proxy" build would likely need to stay live through the execution of the builder(s) it invokes, which burns an additional machine for no reason.
Though, this choice may have other benefits. For example, we could use it to create builders that represents sets of other builders, for greater ease-of-use during presubmit.
The text was updated successfully, but these errors were encountered: