cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebgoa <run...@gmail.com>
Subject Re: [PROPOSAL] Move to github PR only during moratorium on commit
Date Mon, 20 Oct 2014 12:14:15 GMT

On Oct 20, 2014, at 1:51 PM, Stephen Turner <Stephen.Turner@citrix.com> wrote:

> As I just said in the other thread -- but to repeat it here in the PROPOSAL thread --
> 
> I am +1 on using github pull requests.
> 
> I am +1 on all code changes being reviewed by a committer other than the author, as well
as undergoing some automated CI testing, before the pull request is merged.
> 
> I am +0 on only the master RM merging the pull request. I don't want the author to push
the code, but I think the code reviewer could do this; in practice the RM will not be able
to review everything again so is likely to rubber-stamp the results of the code review / automated
testing. But I could live with the master RM doing it.
> 

Understood, the idea is to go with this drastic change and as we adjust we can relax a bit
this constraint. The benefit is to start controlling what will go in the next release before
a release branch is even cut and get all developers (committers or not) to start using feature
branches systematically. 

> I am +1 on moving ahead with any of these parts individually, rather than waiting for
everything to be in place before doing anything.
> 
> -- 
> Stephen Turner
> 
> 
> -----Original Message-----
> From: sebgoa [mailto:runseb@gmail.com] 
> Sent: 18 October 2014 10:00
> To: dev@cloudstack.apache.org
> Subject: [PROPOSAL] Move to github PR only during moratorium on commit
> 
> After [1] I would like to officially bring up the following proposal.
> 
> [Proposal]
> ----
> All commits come through github PR, *even* for committers. We declare a moratorium period
(agreed suspension of activity) during which direct commit to master is forbidden.
> Only the master RM is allowed to merge PR in master (we define a master RM). If direct
commit to master is done, master RM reverts without warning. Same for 4.5 and 4.4. branches.
> ----
> 
> This is drastic and I am sure some folks will not like it, but here is my justification
for such a measure:
> 
> [Reasons]:
> ----
> Our commit and release processes have so far been based on the idea that development
happens on master and that a release branch is cut from master (unstable development branch).
Then a different set of community members harden the release branch, QA and bring it to GA
level. During that time development keeps on going in master.
> 
> This is an OK process if we have the luxury of having a QA team and can cope with split
personality of being developers and release managers. 
> 
> My point of view is that as a community we cannot afford such a split brain organization
and our experience overt the last year proves my point (delayed release date, broken builds,
features merged without warning...)
> 
> We can avoid this by cutting a release branch from a stable one (from the start), then
as you (Daan) have mentioned several times, fix bugs in the release branch and merge them
back in the stable source of the release (be it master). 
> 
> Feature development need to be done outside master, period. Not only for non-committers
but also for committers. And merge request need to be called. This will help review and avoid
surprises.
> 
> New git workflow were proposed and shutdown, mostly calling for better CI to solve quality
issues. CI will not solve our quality issues alone. We need to better police ourselves.
> 
> To avoid long discussions, I propose this simple but drastic measure. We move all our
commits to github PR until 4.5 is out, this stands for committers and non-committers, direct
commits (especially to master) would be reverted immediately.
> ----
> 
> Our development and release process is broken, we cannot continue like this, let's fix
it.
> 
> [1] http://markmail.org/thread/xeliefp3oleq3g54
> 
> -sebastien


Mime
View raw message