[OpenStack-Infra] Zuul v3: proposed new Depends-On syntax
Clint Byrum
clint at fewbar.com
Sat Jun 3 19:45:37 UTC 2017
Excerpts from Joshua Hesketh's message of 2017-06-02 13:45:00 +1000:
> On Fri, Jun 2, 2017 at 3:30 AM, Paul Belanger <pabelanger at redhat.com> wrote:
>
> > On Wed, May 24, 2017 at 04:04:20PM -0700, James E. Blair wrote:
> > > Hi,
> > >
> > > As part of Zuul v3, we're adding support for GitHub (and later possibly
> > > other systems). We want these systems to have access to the full power
> > > of cross-project-dependencies in the same way as Gerrit. However, the
> > > current syntax for the Depends-On footer is currently the
> > > Gerrit-specific change-id.
> > >
> > > We chose this in an attempt to be future-compatible with some proposed
> > > changes to Gerrit itself to support cross-project dependencies. Since
> > > then, Gerrit has gone in a different direction on this subject, so I no
> > > longer think we should weigh that very heavily.
> > >
> > > While Gerrit change ids can be used to identify one or more changes
> > > within a Gerrit installation, there is no comparable identifier on
> > > GitHub, as pull request numbers are unique only within a project.
> > >
> > > The natural way to identify a GitHub pull request is with its URL.
> > >
> > > This can be used to identify Gerrit changes as well, and will likely be
> > > well supported by other systems. Therefore, I propose we support URLs
> > > as the content of the Depends-On footers for all systems. E.g.:
> > >
> > > Depends-On: https://review.openstack.org/12345
> > > Depends-On: https://github.com/ansible/ansible/pull/12345
> > >
> > Hopefully not to off-topic, would it also be possible to support the
> > reverse of
> > this? I know we've unofficially used the Needed-By footer for some
> > governance
> > patches. It has been helpful when looking at git logs to see the other
> > direction
> > dependency from time to time.
> >
> > Not a big deal if it is a no, just something that popped into my head when
> > reading this topic.
> >
>
>
> So at the moment if we're trying to figure out why something hasn't entered
> the gate we can see "oh it depends-on this other things". However if we do
> a need-by that becomes a lot less obvious. If we're logging how the
> changes/deps are queued/merged (as discussed in this thread) then I don't
> see why not. As it is though I'd probably recommend against it.
>
I've always wondered about the asymmetrical power of Needed-By. Seems
like projects should have to opt-in to letting another project block
their patches. However, it would make sense to use it as an annotation
for automatic rechecks.
More information about the OpenStack-Infra
mailing list