Comment below...

> -----Original Message-----
> From: [email protected] [mailto:[email protected]] On Behalf Of
> Stack
> Sent: Saturday, June 06, 2015 21:07
> To: [email protected]
> Subject: Re: Proposal: Trafodion Code Development Process in Apache
> 
> On Wed, Jun 3, 2015 at 9:34 AM, Varnau, Steve (Trafodion) <
> [email protected]> wrote:
> 
> > Trafodion Dev,
> >
> > I'm working on the process for how we'll manage code changes once our
> > code migrates to Apache git server. Our current process won't work, so
> > changes will be needed. I have a proposal for how it will work, but am
> > looking for feedback.
> >
> > We currently submit code changes to Gerrit site (review.trafodion.org)
> > for code review and automated testing. It enforces certain workflow
> > criteria of reviews and tests and merges the code automatically.
> > While Gerrit is highly configurable, it does require that it run
> > against the canonical repo and then mirrors it elsewhere. That basic
> > assumption is incompatible with the canonical repo being on the Apache
> > server and committers having the only write access.
> >
> >
> Unfortunately, gerrit is not an offering up in Apache (I would like it
> if it was). There is talk of it showing up but it is not here yet.
> 
> 
> 
> > Also, one of the most confusing things about our current usage of git
> > is the way Gerrit requires changes to be packaged in single commit and
> > with separate change-IDs in the comments. Changing our process will
> > have the side benefit of avoiding those issues.
> >
> > Other Apache projects tend to submit code contributions in one three
> ways:
> > Jira (attaching a patch file), ReviewBoard, GitHub pull-request Some
> > projects use two of the three methods. In general, each project has
> > specific instructions on which method you should use.
> >
> > While github is not running on the Apache infrastructure, Apache infra
> > team provides integrations, so that github activity is mirrored over
> > to Apache Jira and/or mail lists. That satisfies the Apache
> > requirements to archive info related to community work and code
> provenance.
> >
> > None of the three available mechanisms provides workflow requirements
> > like Gerrit. Rather, they rely on committers' judgment to ensure
> > project criteria are satisfied and merge the code in. What we need,
> > however, is the basic code review and test automation capabilities.
> >
> > In my estimation, GitHub provides the best support for code review and
> > test automation. I'm currently working on changing our Jenkins testing
> > automation to plug into GitHub, rather than Gerrit/Zuul. Of course, it
> > may take a little while to get that working smoothly, but it is
> > certainly do-able.
> >
> >
> So, folks would comment on code up in github and CI running on Apache
> servers would pull from github? JIRA would also carry comments on
> patches and design?
> 
> This will split the comment history across two systems.

Apache Infra provides integration with github, such that all the github 
pull-request activity is mirrored back to JIRA. Jira is the system of record.  
Github provides a better code-review interface than Jira, so it is convenient 
to make code review comments there. Apache/Spark and other projects use similar 
process.

The Apache CI system does not have any RedHat/Centos systems as far as we can 
tell, so we'd need to continue running them elsewhere. Again, I believe Spark 
and other projects do as well.

One key is that each pull-request in github should have a JIRA-ID in the title. 
Committers should not discuss/merge something that doesn't.

-Steve

> 
> 
> 
> > From the development point of view, everyone would need a github
> > account, rather than gerrit account. The workflow would be to do work
> > on a branch, push the branch to their fork on github, then make a
> > pull-request on github. I'll provide some detailed instructions on the
> > wiki. In order to facilitate working with github, I recommend folks
> > use the git wrapper tool call "hub": https://hub.github.com/
> >
> > Details to come, but I wanted to start the discussion whether this is
> > the right direction.
> >
> >
> The pull request would come into the apache dev list and then a
> committer would apply it with back and forth between contributor and
> committer happening in github -- rather than in Apache INFRA JIRA or
> review board?
> 
> Would this process have a "dark side" if looking in from an Apache view
> only? Patches would show up in dev as pull requests and be committed
> without comment because all discussion had happened already elsewhere.
> 
> St.Ack
> 
> 
> 
> > -Steve
> >
> >
> >
> >

Reply via email to