Request to host 'depends-on' plugin in gerrit-review.googlesource.com

351 views
Skip to first unread message

Kaushik Lingarkar

unread,
Jun 30, 2021, 3:54:28 PM6/30/21
to Repo and Gerrit Discussion
Hello,

I work for the Gerrit team in Qualcomm. We have a depends-on plugin that we would like to host on gerrit-review.googlesource.com. This plugin is designed for groups using the 'Depends-on:' change comment to manage inter-project change dependencies. If this is OK, please help create a plugins/depends-on repository.

Christian Aistleitner

unread,
Jun 30, 2021, 4:23:12 PM6/30/21
to Kaushik Lingarkar, Repo and Gerrit Discussion
Hi Kaushik,


On Wed, Jun 30, 2021 at 12:54:28PM -0700, Kaushik Lingarkar wrote:
> This plugin is
> designed for groups using the 'Depends-on:' change comment to manage
> inter-project change dependencies.

At first, I thought that this description matches exactly what the
`zuul` plugin [1] is trying to do.

But then I realized that you wrote that your plugin is looking for the
`Depends-on` in the *change comment*, while the `zuul` plugin is looking
for `Depends-On` in the *commit message*.

But since it's at least related ... do you think there is a way to
merge the `zuul` plugin code into your plugin or the other way round?

Have fun,
Christian


[1] https://gerrit.googlesource.com/plugins/zuul/+/refs/heads/master
and maybe the stable-3.2 branch that is currently a bit ahead of master:
https://gerrit.googlesource.com/plugins/zuul/+/refs/heads/stable-3.2

--
---- quelltextlich e.U. ---- \\ ---- Christian Aistleitner ----
Companies' registry: 360296y in Linz
Christian Aistleitner
Kefermarkterstrasze 6a/3 Email: chri...@quelltextlich.at
4293 Gutau, Austria Phone: +43 677 / 633 47 998
Homepage: https://quelltextlich.at/
---------------------------------------------------------------
signature.asc

Martin Fick

unread,
Jun 30, 2021, 5:10:43 PM6/30/21
to repo-d...@googlegroups.com, Christian Aistleitner, Kaushik Lingarkar
On Wednesday, June 30, 2021 10:23:06 PM MDT 'Christian Aistleitner' via Repo
and Gerrit Discussion wrote:
> Hi Kaushik,
>
> On Wed, Jun 30, 2021 at 12:54:28PM -0700, Kaushik Lingarkar wrote:
> > This plugin is
> > designed for groups using the 'Depends-on:' change comment to manage
> > inter-project change dependencies.
>
> At first, I thought that this description matches exactly what the
> `zuul` plugin [1] is trying to do.
>
> But then I realized that you wrote that your plugin is looking for the
> `Depends-on` in the *change comment*, while the `zuul` plugin is looking
> for `Depends-On` in the *commit message*.
>
> But since it's at least related ... do you think there is a way to
> merge the `zuul` plugin code into your plugin or the other way round?

I think that the current Zuul plugin seems similar to what we are trying to
do, i.e. its concepts and approach appear generic, and not Zuul specific. I do
think it would make sense to potentially "join" code and implementations
between the two plugins. I don't know that it makes sense to put generic
dependency code into a plugin named Zuul though. How would you suggest we
proceed?

-Martin

--
The Qualcomm Innovation Center, Inc. is a member of Code
Aurora Forum, hosted by The Linux Foundation

Martin Fick

unread,
Jun 30, 2021, 5:41:40 PM6/30/21
to repo-d...@googlegroups.com, Christian Aistleitner, Kaushik Lingarkar
On Wednesday, June 30, 2021 3:10:34 PM MDT Martin Fick wrote:
> On Wednesday, June 30, 2021 10:23:06 PM MDT 'Christian Aistleitner' via Repo
> and Gerrit Discussion wrote:
> > On Wed, Jun 30, 2021 at 12:54:28PM -0700, Kaushik Lingarkar wrote:
> > > This plugin is
> > > designed for groups using the 'Depends-on:' change comment to manage
> > > inter-project change dependencies.
> >
> > At first, I thought that this description matches exactly what the
> > `zuul` plugin [1] is trying to do.
> >
> > But then I realized that you wrote that your plugin is looking for the
> > `Depends-on` in the *change comment*, while the `zuul` plugin is looking
> > for `Depends-On` in the *commit message*.

I would chalk the difference you mention above (commit message vs. comment
message) up to a policy decision that is best left to a specific project, or CI
system to decide whether it wants to support either of these formats, I
envision other ways to indicate them even: #hashtags, topics (as Gerrit does
today)...,. Despite different ways to annotate dependencies, a common way to
expose them and work with them would be great.

I would say the same about circular dependencies, it appears that the Zuul
plugin has a policy to not support them, however that could easily be made
into something that a specific CI system, or a specific config would enable or
disable.

Just to clarify my point of view. While the plugin may not have the same
policies that we are currently looking for, it doesn't mean that I think these
policy differences merit a separate plugin. I would support by a common, more
featureful plugin.

Clark Boylan

unread,
Jun 30, 2021, 5:50:16 PM6/30/21
to Martin Fick, Repo and Gerrit Discussion, Christian Aistleitner, Kaushik Lingarkar
On Wed, Jun 30, 2021 at 2:41 PM Martin Fick <mf...@codeaurora.org> wrote:
>
> On Wednesday, June 30, 2021 3:10:34 PM MDT Martin Fick wrote:
> > On Wednesday, June 30, 2021 10:23:06 PM MDT 'Christian Aistleitner' via Repo
> > and Gerrit Discussion wrote:
> > > On Wed, Jun 30, 2021 at 12:54:28PM -0700, Kaushik Lingarkar wrote:
> > > > This plugin is
> > > > designed for groups using the 'Depends-on:' change comment to manage
> > > > inter-project change dependencies.
> > >
> > > At first, I thought that this description matches exactly what the
> > > `zuul` plugin [1] is trying to do.
> > >
> > > But then I realized that you wrote that your plugin is looking for the
> > > `Depends-on` in the *change comment*, while the `zuul` plugin is looking
> > > for `Depends-On` in the *commit message*.
>
> I would chalk the difference you mention above (commit message vs. comment
> message) up to a policy decision that is best left to a specific project, or CI
> system to decide whether it wants to support either of these formats, I
> envision other ways to indicate them even: #hashtags, topics (as Gerrit does
> today)...,. Despite different ways to annotate dependencies, a common way to
> expose them and work with them would be great.
>
> I would say the same about circular dependencies, it appears that the Zuul
> plugin has a policy to not support them, however that could easily be made
> into something that a specific CI system, or a specific config would enable or
> disable.

For a long time Zuul the CI tool did not support circular
dependencies, but that changed semi recently. I don't think there
would be any problem with having the Zuul plugin (or a common plugin)
support them now as a result.

>
> Just to clarify my point of view. While the plugin may not have the same
> policies that we are currently looking for, it doesn't mean that I think these
> policy differences merit a separate plugin. I would support by a common, more
> featureful plugin.

I think this is reasonable as long as the overlap in behavior for
Depends-On is compatible (and I think having compatible behaviors as
much as possible is desireable). As you mention this isn't Zuul
specific and being able to express dependencies when you have no CI
system or a Zuul seems like a reasonable thing. Then Zuul users can
simply use the common behavior supporting plugin.

>
> > > But since it's at least related ... do you think there is a way to
> > > merge the `zuul` plugin code into your plugin or the other way round?
> >
> > I think that the current Zuul plugin seems similar to what we are trying to
> > do, i.e. its concepts and approach appear generic, and not Zuul specific. I
> > do think it would make sense to potentially "join" code and implementations
> > between the two plugins. I don't know that it makes sense to put generic
> > dependency code into a plugin named Zuul though. How would you suggest we
> > proceed?
>
> -Martin
>
> --
> The Qualcomm Innovation Center, Inc. is a member of Code
> Aurora Forum, hosted by The Linux Foundation
>
> --
> --
> To unsubscribe, email repo-discuss...@googlegroups.com
> More info at http://groups.google.com/group/repo-discuss?hl=en
>
> ---
> You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/repo-discuss/2832207.97xSXj01f4%40mfick-lnx.

Martin Fick

unread,
Jun 30, 2021, 10:01:02 PM6/30/21
to Clark Boylan, Repo and Gerrit Discussion, Christian Aistleitner, Kaushik Lingarkar
Is this a suggestion to go ahead and create a generic depends-on plugin and
potentially port Zuul to use it in the future?

Edwin Kempin

unread,
Jul 1, 2021, 3:09:34 AM7/1/21
to Kaushik Lingarkar, Repo and Gerrit Discussion
On Wed, Jun 30, 2021 at 9:54 PM Kaushik Lingarkar <kaus...@codeaurora.org> wrote:
Hello,

I work for the Gerrit team in Qualcomm. We have a depends-on plugin that we would like to host on gerrit-review.googlesource.com. This plugin is designed for groups using the 'Depends-on:' change comment to manage inter-project change dependencies. If this is OK, please help create a plugins/depends-on repository.
Just answering the original question.
Yes, having a repository for the depends-on plugin on gerrit-review.googlesource.com is fine, assuming it has the same license as Gerrit.


It's owned by the plugins-depends-on group which contains you as a member:
 

--
--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.

Kaushik Lingarkar

unread,
Jul 1, 2021, 1:38:10 PM7/1/21
to Edwin Kempin, Repo and Gerrit Discussion

On Jul 1, 2021, at 12:08 AM, Edwin Kempin <eke...@google.com> wrote:



On Wed, Jun 30, 2021 at 9:54 PM Kaushik Lingarkar <kaus...@codeaurora.org> wrote:
Hello,

I work for the Gerrit team in Qualcomm. We have a depends-on plugin that we would like to host on gerrit-review.googlesource.com. This plugin is designed for groups using the 'Depends-on:' change comment to manage inter-project change dependencies. If this is OK, please help create a plugins/depends-on repository.
Just answering the original question.
Yes, having a repository for the depends-on plugin on gerrit-review.googlesource.com is fine, assuming it has the same license as Gerrit.


It's owned by the plugins-depends-on group which contains you as a member:
 
Thanks Edwin!

Christian Aistleitner

unread,
Jul 1, 2021, 3:48:59 PM7/1/21
to Martin Fick, repo-d...@googlegroups.com, Kaushik Lingarkar
Hi,

On Wed, Jun 30, 2021 at 03:10:34PM -0600, Martin Fick wrote:
> On Wednesday, June 30, 2021 10:23:06 PM MDT 'Christian Aistleitner' via Repo
> and Gerrit Discussion wrote:
> > [ potential synergies between `depends-on` and `zuul` pluginn ]
>
> I don't know that it makes sense to put generic
> dependency code into a plugin named Zuul though.

I think the name `zuul` for the plugin is unfortunate. It caused and
causes confusion as it's not tied to Zuul (the CI tool) and does not
integrate Zuul (the CI tool) into Gerrit.

`zuul` (the Gerrit plugin) only visualizes the `Depends-On` and
`Needed-By` information from the commit message and highlights simple
circular dependencies.

> How would you suggest we
> proceed?

The `depends-on` repo is still empty, so I have not seen the plugins'
code. But I'd support anything that deduplicates the two or helps to
share code.

If it makes sense to merge the two, I'd be bold and suggest that the
name `depends-on` fits the purpose better than the name `zuul` :-)


Have fun,
Christian
signature.asc

Christian Aistleitner

unread,
Jul 1, 2021, 3:59:03 PM7/1/21
to Martin Fick, repo-d...@googlegroups.com, Kaushik Lingarkar
Hi,

On Wed, Jun 30, 2021 at 03:41:25PM -0600, Martin Fick wrote:
> [...], I
> envision other ways to indicate them even: #hashtags, topics (as Gerrit does
> today)...,. Despite different ways to annotate dependencies, a common way to
> expose them and work with them would be great.

Fully agreed. Sounds great.


> I would say the same about circular dependencies, it appears that the Zuul
> plugin has a policy to not support them, [...]

`zuul` (the Gerrit plugin) supports trivial circular dependencies. For
example A -> B -> A would get flagged as circular dependencies. (See
last but one image on [1]). Already that is helpful and sufficient in
many cases.

But `zuul` (the Gerrit plugin) currently does not detect circular
dependencies like A -> B -> C -> A.
Maybe it can learn that from your `depends-on` plugin. :-)


Have fun,
Christian


[1] https://gerrit.googlesource.com/plugins/zuul/+/refs/heads/stable-3.2/src/main/resources/Documentation/about.md
signature.asc
Reply all
Reply to author
Forward
0 new messages