On 08/15/2014 12:25 PM, Rohit Yadav wrote:
Hello everyone,

With reference to my proposal on changing our release-master commit flow [1], I 
would like to start a voting thread to decide on the adoption starting 4.5 
release. Any opinion, ideas, modifications is welcome to help reach a consensus 
and improve our present situation.

Today’s Friday so it will be only fair to extend the voting window to more than 
our usual 72 hours window.
Therefore, we’ll end this voting on Wednesday, 20 August 2014 at 18:00H UTC 
giving about 5 days of time for people to share what works and what does not. 
We’ll stop anytime we've three -1s (binding).

Short summary:

- Base line protocol: Continuous changes from release/stable branches to 
master/unable branches
- Get contributors more engaged with release branches by working (fixing bugs, 
docs etc.) on release branches first (and not on master)
- Fixes on release branches are recommended (non strict enforcement) go via a 
hotfix/bugfix branch that get automatically tested by Jenkins, when they are 
green RMs get the changes to release branch

Long Summary of what we’ll adopt: (I’m skipping writing them on wiki, as this 
may change/modify in this thread)

- Continuous flow of changes from stable branches to un-stables ones i.e. from 
release branches to master and from master to features etc. Use of merge 
—fast-forward is encourages over cherry-picking and —no-ff (no ff will create 
merge commit). This happens couple of times a day to ensure we get solid/robust 
changes from release branches (such as bugfixes etc.) on master, any conflicts 
will be resolved. If we do it continuously we’ll also save ourselves from a big 
conflict at the end of the release cycle and we’ll also avoid 
missing/misplacing any commit when cherry-picking.

- After code freeze is declared and release branch is cut out, contributors 
work on fixing bugs and other changes (such as documentation, build/packaging 
fixes etc.) first on the release branch (and not master). This is not to 
restrict anyone working on master, features and other changes can keep landing 
on master as well. This is to encourage contributors to give more attention to 
release branches by at least fixing bugs on release branches first and not our 
current way where we fix it on master and ask RMs to cherry pick it to release 
branch.

- Changes to release branches can be done by pushing a bugfix/change branch and 
asking the RM to pick it up if they are tested. Our automated systems can 
perform checks on such branches too (starting with a suffix that can 
automatically trigger such builds/tests) and if everything is fine, RMs to land 
the changes to release branches.

- Nothing is written in stones, this should be change-able. And, this can only 
work if we all agree to follow this with 4.5

To make the best of this thread, please keep your reply short, constructive and 
to the point..
Please share your opinion on this proposal with suitable reasons:

[ ] +1  approve

+1 for me.

The current system with the branches has frustrated me a couple of times. This way of branching can be seen with multiple projects and seems to be working there just fine.

[ ] +0  no opinion
[ ] -1  disapprove (and reason why)

[1] http://markmail.org/message/ucixhhdbz3ajyv2a

Regards,
Rohit Yadav
Software Architect, ShapeBlue
M. +41 779015219 | rohit.ya...@shapeblue.com
Blog: bhaisaab.org | Twitter: @_bhaisaab



Find out more about ShapeBlue and our range of CloudStack related services

IaaS Cloud Design & Build<http://shapeblue.com/iaas-cloud-design-and-build//>
CSForge – rapid IaaS deployment framework<http://shapeblue.com/csforge/>
CloudStack Consulting<http://shapeblue.com/cloudstack-consultancy/>
CloudStack Infrastructure 
Support<http://shapeblue.com/cloudstack-infrastructure-support/>
CloudStack Bootcamp Training Courses<http://shapeblue.com/cloudstack-training/>

This email and any attachments to it may be confidential and are intended solely 
for the use of the individual to whom it is addressed. Any views or opinions 
expressed are solely those of the author and do not necessarily represent those of 
Shape Blue Ltd or related companies. If you are not the intended recipient of this 
email, you must neither take any action based upon its contents, nor copy or show 
it to anyone. Please contact the sender if you believe you have received this email 
in error. Shape Blue Ltd is a company incorporated in England & Wales. 
ShapeBlue Services India LLP is a company incorporated in India and is operated 
under license from Shape Blue Ltd. Shape Blue Brasil Consultoria Ltda is a company 
incorporated in Brasil and is operated under license from Shape Blue Ltd. ShapeBlue 
SA Pty Ltd is a company registered by The Republic of South Africa and is traded 
under license from Shape Blue Ltd. ShapeBlue is a registered trademark.

Reply via email to