You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kudu.apache.org by Grant Henke <gh...@cloudera.com.INVALID> on 2019/02/06 15:57:09 UTC

Using Github for Contributions & Reviews

Hello Kudu Developers,

Now that Apache is integrated more closely with Github via Gitbox
<https://gitbox.apache.org/> I wanted to
open a discussion on the code contribution process.

We now have full control over pull requests and submissions on the Github
repository meaning we could use Github pull requests for contributions.
There is likely a long this or advantages and disadvantages to using Github
vs Gerrit for reviews. But I think it's something worth evaluating.

Below are some of the pros and cons I came up with:

Pros:
- More people are familiar with the pull request process
- Uniform contribution process with other Apache projects
   - Spark, Kafka, Hadoop, Nifi, etc...
- We don't need push_to_asf.py
- We don't need to run and manage Cloudera Gerrit
- We don't need to mirror to a Cloudera repo
- Support for useful review tools like contribution templates,
   suggested changes, labels, etc

Cons:
- New workflow for existing contributors
- WIP patches need to be migrated
- Effort involved to migrate
   - Notifications
   - Jenkins

What do you think? Is this something worth changing? What are the benefits
and drawbacks?

Thank you,
Grant
-- 
Grant Henke
Software Engineer | Cloudera
grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke

Re: Using Github for Contributions & Reviews

Posted by Todd Lipcon <to...@cloudera.com.INVALID>.
Count me in the "happy with gerrit" process. In particular, the thing I
like the most about gerrit is the ease with which I can post a review from
my dev environment without futzing about in some UI. Maybe github has a way
to generate a PR with equal ease, but I often want to make a two-line fix
and put it up for review without leaving my terminal.

In terms of whether moving to github would encourage more contributions,
I'm not so sure. IMO contributing to a complex project like Kudu usually
has much higher barriers than learning gerrit. I suppose if we really
wanted to enable drive-by github contributors, we could advertise "if you
want to send in a drive-by patch, make a PR, and a committer will take care
of moving it over to gerrit and getting it committed".

More practically, it would be a chunk of work to move over precommit,
clang-tidy, etc, to github PR-triggered items, and I don't see it being
worth putting in the time to do that when the benefits are unclear.

-Todd

On Wed, Feb 13, 2019 at 7:24 PM Grant Henke <gh...@cloudera.com.invalid>
wrote:

> Following up on this, INFRA-17817
> <https://issues.apache.org/jira/browse/INFRA-17817> was resolved.
>
> Does anyone else have any opinion on this? Currently I am taking the
> silence as an indicator that everyone is happy with the existing
> tooling/process and thinks it should stay the same.
>
>
> On Wed, Feb 6, 2019 at 12:00 PM Grant Henke <gh...@cloudera.com> wrote:
>
>> I proactively opened INFRA-17817
>> <https://issues.apache.org/jira/browse/INFRA-17817> to change this
>> policy. Regardless of the route we take it's good to avoid any mistakes.
>>
>> On Wed, Feb 6, 2019 at 11:52 AM Grant Henke <gh...@cloudera.com> wrote:
>>
>>> I found the Kafka Infra jira to use for reference should we need it:
>>> https://issues.apache.org/jira/browse/INFRA-16144
>>>
>>> On Wed, Feb 6, 2019 at 11:50 AM Grant Henke <gh...@cloudera.com> wrote:
>>>
>>>> It looks like the Kudu committer merging a patch has full control over
>>>> the strategy currently:
>>>> [image: image.png]
>>>>
>>>> But in the Kafka project they have limited the available options as
>>>> seen below. I agree we should configure Kudu to be the same if we go the
>>>> route of Github reviews. That likely requires an INFRA jira to change.
>>>>
>>>> [image: image.png]
>>>>
>>>>
>>>>
>>>> On Wed, Feb 6, 2019 at 11:36 AM Brock Noland <br...@phdata.io> wrote:
>>>>
>>>>> I assume if we used Github PR's we configure merges to occur without
>>>>> merge
>>>>> commits? I find them very confusing.
>>>>>
>>>>> On Wed, Feb 6, 2019 at 9:57 AM Grant Henke <ghenke@cloudera.com.invalid
>>>>> >
>>>>> wrote:
>>>>>
>>>>> > Hello Kudu Developers,
>>>>> >
>>>>> > Now that Apache is integrated more closely with Github via Gitbox
>>>>> > <https://gitbox.apache.org/> I wanted to
>>>>> > open a discussion on the code contribution process.
>>>>> >
>>>>> > We now have full control over pull requests and submissions on the
>>>>> Github
>>>>> > repository meaning we could use Github pull requests for
>>>>> contributions.
>>>>> > There is likely a long this or advantages and disadvantages to using
>>>>> Github
>>>>> > vs Gerrit for reviews. But I think it's something worth evaluating.
>>>>> >
>>>>> > Below are some of the pros and cons I came up with:
>>>>> >
>>>>> > Pros:
>>>>> > - More people are familiar with the pull request process
>>>>> > - Uniform contribution process with other Apache projects
>>>>> >    - Spark, Kafka, Hadoop, Nifi, etc...
>>>>> > - We don't need push_to_asf.py
>>>>> > - We don't need to run and manage Cloudera Gerrit
>>>>> > - We don't need to mirror to a Cloudera repo
>>>>> > - Support for useful review tools like contribution templates,
>>>>> >    suggested changes, labels, etc
>>>>> >
>>>>> > Cons:
>>>>> > - New workflow for existing contributors
>>>>> > - WIP patches need to be migrated
>>>>> > - Effort involved to migrate
>>>>> >    - Notifications
>>>>> >    - Jenkins
>>>>> >
>>>>> > What do you think? Is this something worth changing? What are the
>>>>> benefits
>>>>> > and drawbacks?
>>>>> >
>>>>> > Thank you,
>>>>> > Grant
>>>>> > --
>>>>> > Grant Henke
>>>>> > Software Engineer | Cloudera
>>>>> > grant@cloudera.com | twitter.com/gchenke |
>>>>> linkedin.com/in/granthenke
>>>>> >
>>>>>
>>>>
>>>>
>>>> --
>>>> Grant Henke
>>>> Software Engineer | Cloudera
>>>> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>>>
>>>
>>>
>>> --
>>> Grant Henke
>>> Software Engineer | Cloudera
>>> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>>
>>
>>
>> --
>> Grant Henke
>> Software Engineer | Cloudera
>> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>
>
>
> --
> Grant Henke
> Software Engineer | Cloudera
> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>


-- 
Todd Lipcon
Software Engineer, Cloudera

Re: Using Github for Contributions & Reviews

Posted by Grant Henke <gh...@cloudera.com.INVALID>.
Following up on this, INFRA-17817
<https://issues.apache.org/jira/browse/INFRA-17817> was resolved.

Does anyone else have any opinion on this? Currently I am taking the
silence as an indicator that everyone is happy with the existing
tooling/process and thinks it should stay the same.


On Wed, Feb 6, 2019 at 12:00 PM Grant Henke <gh...@cloudera.com> wrote:

> I proactively opened INFRA-17817
> <https://issues.apache.org/jira/browse/INFRA-17817> to change this
> policy. Regardless of the route we take it's good to avoid any mistakes.
>
> On Wed, Feb 6, 2019 at 11:52 AM Grant Henke <gh...@cloudera.com> wrote:
>
>> I found the Kafka Infra jira to use for reference should we need it:
>> https://issues.apache.org/jira/browse/INFRA-16144
>>
>> On Wed, Feb 6, 2019 at 11:50 AM Grant Henke <gh...@cloudera.com> wrote:
>>
>>> It looks like the Kudu committer merging a patch has full control over
>>> the strategy currently:
>>> [image: image.png]
>>>
>>> But in the Kafka project they have limited the available options as seen
>>> below. I agree we should configure Kudu to be the same if we go the route
>>> of Github reviews. That likely requires an INFRA jira to change.
>>>
>>> [image: image.png]
>>>
>>>
>>>
>>> On Wed, Feb 6, 2019 at 11:36 AM Brock Noland <br...@phdata.io> wrote:
>>>
>>>> I assume if we used Github PR's we configure merges to occur without
>>>> merge
>>>> commits? I find them very confusing.
>>>>
>>>> On Wed, Feb 6, 2019 at 9:57 AM Grant Henke <ghenke@cloudera.com.invalid
>>>> >
>>>> wrote:
>>>>
>>>> > Hello Kudu Developers,
>>>> >
>>>> > Now that Apache is integrated more closely with Github via Gitbox
>>>> > <https://gitbox.apache.org/> I wanted to
>>>> > open a discussion on the code contribution process.
>>>> >
>>>> > We now have full control over pull requests and submissions on the
>>>> Github
>>>> > repository meaning we could use Github pull requests for
>>>> contributions.
>>>> > There is likely a long this or advantages and disadvantages to using
>>>> Github
>>>> > vs Gerrit for reviews. But I think it's something worth evaluating.
>>>> >
>>>> > Below are some of the pros and cons I came up with:
>>>> >
>>>> > Pros:
>>>> > - More people are familiar with the pull request process
>>>> > - Uniform contribution process with other Apache projects
>>>> >    - Spark, Kafka, Hadoop, Nifi, etc...
>>>> > - We don't need push_to_asf.py
>>>> > - We don't need to run and manage Cloudera Gerrit
>>>> > - We don't need to mirror to a Cloudera repo
>>>> > - Support for useful review tools like contribution templates,
>>>> >    suggested changes, labels, etc
>>>> >
>>>> > Cons:
>>>> > - New workflow for existing contributors
>>>> > - WIP patches need to be migrated
>>>> > - Effort involved to migrate
>>>> >    - Notifications
>>>> >    - Jenkins
>>>> >
>>>> > What do you think? Is this something worth changing? What are the
>>>> benefits
>>>> > and drawbacks?
>>>> >
>>>> > Thank you,
>>>> > Grant
>>>> > --
>>>> > Grant Henke
>>>> > Software Engineer | Cloudera
>>>> > grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>>> >
>>>>
>>>
>>>
>>> --
>>> Grant Henke
>>> Software Engineer | Cloudera
>>> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>>
>>
>>
>> --
>> Grant Henke
>> Software Engineer | Cloudera
>> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>
>
>
> --
> Grant Henke
> Software Engineer | Cloudera
> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>


-- 
Grant Henke
Software Engineer | Cloudera
grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke

Re: Using Github for Contributions & Reviews

Posted by Grant Henke <gh...@cloudera.com.INVALID>.
I proactively opened INFRA-17817
<https://issues.apache.org/jira/browse/INFRA-17817> to change this policy.
Regardless of the route we take it's good to avoid any mistakes.

On Wed, Feb 6, 2019 at 11:52 AM Grant Henke <gh...@cloudera.com> wrote:

> I found the Kafka Infra jira to use for reference should we need it:
> https://issues.apache.org/jira/browse/INFRA-16144
>
> On Wed, Feb 6, 2019 at 11:50 AM Grant Henke <gh...@cloudera.com> wrote:
>
>> It looks like the Kudu committer merging a patch has full control over
>> the strategy currently:
>> [image: image.png]
>>
>> But in the Kafka project they have limited the available options as seen
>> below. I agree we should configure Kudu to be the same if we go the route
>> of Github reviews. That likely requires an INFRA jira to change.
>>
>> [image: image.png]
>>
>>
>>
>> On Wed, Feb 6, 2019 at 11:36 AM Brock Noland <br...@phdata.io> wrote:
>>
>>> I assume if we used Github PR's we configure merges to occur without
>>> merge
>>> commits? I find them very confusing.
>>>
>>> On Wed, Feb 6, 2019 at 9:57 AM Grant Henke <gh...@cloudera.com.invalid>
>>> wrote:
>>>
>>> > Hello Kudu Developers,
>>> >
>>> > Now that Apache is integrated more closely with Github via Gitbox
>>> > <https://gitbox.apache.org/> I wanted to
>>> > open a discussion on the code contribution process.
>>> >
>>> > We now have full control over pull requests and submissions on the
>>> Github
>>> > repository meaning we could use Github pull requests for contributions.
>>> > There is likely a long this or advantages and disadvantages to using
>>> Github
>>> > vs Gerrit for reviews. But I think it's something worth evaluating.
>>> >
>>> > Below are some of the pros and cons I came up with:
>>> >
>>> > Pros:
>>> > - More people are familiar with the pull request process
>>> > - Uniform contribution process with other Apache projects
>>> >    - Spark, Kafka, Hadoop, Nifi, etc...
>>> > - We don't need push_to_asf.py
>>> > - We don't need to run and manage Cloudera Gerrit
>>> > - We don't need to mirror to a Cloudera repo
>>> > - Support for useful review tools like contribution templates,
>>> >    suggested changes, labels, etc
>>> >
>>> > Cons:
>>> > - New workflow for existing contributors
>>> > - WIP patches need to be migrated
>>> > - Effort involved to migrate
>>> >    - Notifications
>>> >    - Jenkins
>>> >
>>> > What do you think? Is this something worth changing? What are the
>>> benefits
>>> > and drawbacks?
>>> >
>>> > Thank you,
>>> > Grant
>>> > --
>>> > Grant Henke
>>> > Software Engineer | Cloudera
>>> > grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>> >
>>>
>>
>>
>> --
>> Grant Henke
>> Software Engineer | Cloudera
>> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>>
>
>
> --
> Grant Henke
> Software Engineer | Cloudera
> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>


-- 
Grant Henke
Software Engineer | Cloudera
grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke

Re: Using Github for Contributions & Reviews

Posted by Grant Henke <gh...@cloudera.com.INVALID>.
I found the Kafka Infra jira to use for reference should we need it:
https://issues.apache.org/jira/browse/INFRA-16144

On Wed, Feb 6, 2019 at 11:50 AM Grant Henke <gh...@cloudera.com> wrote:

> It looks like the Kudu committer merging a patch has full control over the
> strategy currently:
> [image: image.png]
>
> But in the Kafka project they have limited the available options as seen
> below. I agree we should configure Kudu to be the same if we go the route
> of Github reviews. That likely requires an INFRA jira to change.
>
> [image: image.png]
>
>
>
> On Wed, Feb 6, 2019 at 11:36 AM Brock Noland <br...@phdata.io> wrote:
>
>> I assume if we used Github PR's we configure merges to occur without merge
>> commits? I find them very confusing.
>>
>> On Wed, Feb 6, 2019 at 9:57 AM Grant Henke <gh...@cloudera.com.invalid>
>> wrote:
>>
>> > Hello Kudu Developers,
>> >
>> > Now that Apache is integrated more closely with Github via Gitbox
>> > <https://gitbox.apache.org/> I wanted to
>> > open a discussion on the code contribution process.
>> >
>> > We now have full control over pull requests and submissions on the
>> Github
>> > repository meaning we could use Github pull requests for contributions.
>> > There is likely a long this or advantages and disadvantages to using
>> Github
>> > vs Gerrit for reviews. But I think it's something worth evaluating.
>> >
>> > Below are some of the pros and cons I came up with:
>> >
>> > Pros:
>> > - More people are familiar with the pull request process
>> > - Uniform contribution process with other Apache projects
>> >    - Spark, Kafka, Hadoop, Nifi, etc...
>> > - We don't need push_to_asf.py
>> > - We don't need to run and manage Cloudera Gerrit
>> > - We don't need to mirror to a Cloudera repo
>> > - Support for useful review tools like contribution templates,
>> >    suggested changes, labels, etc
>> >
>> > Cons:
>> > - New workflow for existing contributors
>> > - WIP patches need to be migrated
>> > - Effort involved to migrate
>> >    - Notifications
>> >    - Jenkins
>> >
>> > What do you think? Is this something worth changing? What are the
>> benefits
>> > and drawbacks?
>> >
>> > Thank you,
>> > Grant
>> > --
>> > Grant Henke
>> > Software Engineer | Cloudera
>> > grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>> >
>>
>
>
> --
> Grant Henke
> Software Engineer | Cloudera
> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>


-- 
Grant Henke
Software Engineer | Cloudera
grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke

Re: Using Github for Contributions & Reviews

Posted by Grant Henke <gh...@cloudera.com.INVALID>.
It looks like the Kudu committer merging a patch has full control over the
strategy currently:
[image: image.png]

But in the Kafka project they have limited the available options as seen
below. I agree we should configure Kudu to be the same if we go the route
of Github reviews. That likely requires an INFRA jira to change.

[image: image.png]



On Wed, Feb 6, 2019 at 11:36 AM Brock Noland <br...@phdata.io> wrote:

> I assume if we used Github PR's we configure merges to occur without merge
> commits? I find them very confusing.
>
> On Wed, Feb 6, 2019 at 9:57 AM Grant Henke <gh...@cloudera.com.invalid>
> wrote:
>
> > Hello Kudu Developers,
> >
> > Now that Apache is integrated more closely with Github via Gitbox
> > <https://gitbox.apache.org/> I wanted to
> > open a discussion on the code contribution process.
> >
> > We now have full control over pull requests and submissions on the Github
> > repository meaning we could use Github pull requests for contributions.
> > There is likely a long this or advantages and disadvantages to using
> Github
> > vs Gerrit for reviews. But I think it's something worth evaluating.
> >
> > Below are some of the pros and cons I came up with:
> >
> > Pros:
> > - More people are familiar with the pull request process
> > - Uniform contribution process with other Apache projects
> >    - Spark, Kafka, Hadoop, Nifi, etc...
> > - We don't need push_to_asf.py
> > - We don't need to run and manage Cloudera Gerrit
> > - We don't need to mirror to a Cloudera repo
> > - Support for useful review tools like contribution templates,
> >    suggested changes, labels, etc
> >
> > Cons:
> > - New workflow for existing contributors
> > - WIP patches need to be migrated
> > - Effort involved to migrate
> >    - Notifications
> >    - Jenkins
> >
> > What do you think? Is this something worth changing? What are the
> benefits
> > and drawbacks?
> >
> > Thank you,
> > Grant
> > --
> > Grant Henke
> > Software Engineer | Cloudera
> > grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
> >
>


-- 
Grant Henke
Software Engineer | Cloudera
grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke

Re: Using Github for Contributions & Reviews

Posted by Brock Noland <br...@phdata.io>.
I assume if we used Github PR's we configure merges to occur without merge
commits? I find them very confusing.

On Wed, Feb 6, 2019 at 9:57 AM Grant Henke <gh...@cloudera.com.invalid>
wrote:

> Hello Kudu Developers,
>
> Now that Apache is integrated more closely with Github via Gitbox
> <https://gitbox.apache.org/> I wanted to
> open a discussion on the code contribution process.
>
> We now have full control over pull requests and submissions on the Github
> repository meaning we could use Github pull requests for contributions.
> There is likely a long this or advantages and disadvantages to using Github
> vs Gerrit for reviews. But I think it's something worth evaluating.
>
> Below are some of the pros and cons I came up with:
>
> Pros:
> - More people are familiar with the pull request process
> - Uniform contribution process with other Apache projects
>    - Spark, Kafka, Hadoop, Nifi, etc...
> - We don't need push_to_asf.py
> - We don't need to run and manage Cloudera Gerrit
> - We don't need to mirror to a Cloudera repo
> - Support for useful review tools like contribution templates,
>    suggested changes, labels, etc
>
> Cons:
> - New workflow for existing contributors
> - WIP patches need to be migrated
> - Effort involved to migrate
>    - Notifications
>    - Jenkins
>
> What do you think? Is this something worth changing? What are the benefits
> and drawbacks?
>
> Thank you,
> Grant
> --
> Grant Henke
> Software Engineer | Cloudera
> grant@cloudera.com | twitter.com/gchenke | linkedin.com/in/granthenke
>