Excellent. I've been trying to get feedback about our contributor workflow
by documenting it on our website and by talking about it at ApacheCon last
month. I would love to work to make the process even easier for
contributors and committers.
How to contribute to Apache Usergrid presentation
http://www.slideshare.net/snoopdave/how-to-contribute-to-apache-usergrid
How to contribute to Apache Usergrid on our website
https://usergrid.incubator.apache.org/docs/contribute-code
Usergrid workflow policy on our website
https://cwiki.apache.org/confluence/display/usergrid/Contributor+Workflow+Policy
More comments in-line below...
On Thu, May 29, 2014 at 10:20 PM, Jake Farrell <[email protected]> wrote:
> Hey guys
> It has come up on board and infra mailing lists that the git workflow that
> is currently in place can not be used. Several issues with it where raised
> including
>
> * Canonical location for source code must be at the ASF
>
That's how our process works and we state that in the docs above. The plan
is to release from the Apache Git repo.
We use GitHub as our code review system for all "external" contributors and
committers. That's where code comes in and that's where we engage with
contributors, ask them if they agree to the ASL or if they have an ICLA on
file, carefully checkout they code they are contributing, make comments on
specific lines of code, etc.
We periodically sync the GitHub repo to our Apache Git repo as needed. We
would like to automate this process so that commits get pushed to Apache
Git as soon as they pass code review at GitHub (i.e. we accept the PR).
* Mailing lists are not being updated/touched with these changes
>
Yes, this is a problem. The mailing lists are notified when commits happen,
but we need to make sure all PR comments get echoed to the mailing lists as
well. I believe there is a JIRA for this task.
> * The method of syncing the remote repository
>
Yes, this is also a problem. I was using a cronjob to automate this, but
that approach was not secure. We need to create a JIRA and ask Infra to
help with this. At this point, I'm syncing manually every couple of days.
* Process for tracking CLAs and Apache IDs for commits
>
That is covered in the docs on the website and the presentation. When we
get a PR we engage with the contributor and carefully review the submitted
changes and each commit that is included in the PR. For small changes, we
ask "do you agree to license this under the terms of the ASL" and for
larger changes we ask the submitter to file an ICLA.
> * External org management (Who has access which can merge/secure)
>
All Usergrid PPMC members and only those PPMC members have admin access to
our GitHub account.
>
> The documentation on the policies around git [1] are currently not well
> defined as the git service has been a work in progress. Even with this
> being the case it is up to us as the PMC for Apache Usergrid to ensure we
> are compliant with all ASF policies and any contributions meet IP
> requirements.
>
> We need to work to
> * Ensure remediation of the outlined issues
> * Discuss and come up with a workflow that meets our needs and is in
> compliance with ASF policy and any board, infra, and IPMC requirements
> * Review and ensure that the IP from the initial import to now for all
> commits meets the ASF policies for contributions
>
That would be great because I spent a great deal of time trying to
understand what policies were in place at the time we drafted and voted in
the contribution process. We designed our workflow specifically to confirm
with policy.
Can we get some more specific feedback than simply "the git workflow that
is currently in place can not be used." Other projects have very similar
workflows, what specific things do we need to fix to come into compliance
with ASF policy?
Thanks,
- Dave