You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Pierre-Luc Dion <pd...@apache.org> on 2015/05/01 00:52:13 UTC

Re: [DISCUSS] 4.6 release management

Hi,

In my mind it was kind of making more sense to start by keeping 4.6 into a
separate branch, enforce pull-requests and deploy the CI. smaller step but
faster result, and from there, once we get stable with the CI and git flow;
move into master, do fastest releases cycle. If we consider we can do all
that starting in 4.6, I'm all for it!

Marcus: are you preparing a proposal on this? wiki page? I can help

Seb: doesn't the vote would confirm the consensus?

Raja:  do we have any documentation somewhere on how to use, contribute to
the smoke test? that could be our start for the CI tests?


Cheers


On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <ru...@gmail.com>
wrote:

>
> > On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
> >
> > After reviewing the history as mentioned by Daan, unless we propose
> > and vote on a newer workflow model I think the best we can do is to
> > simply be more strict about commits to master. They all need to be
> > merges that have been tested against master before merge. This will in
> > theory make master more stable, but doesn't really change the workflow
> > we've already agreed upon and have been working under (although
> > bugfixes sometimes were not coming in from branches, and cherry-picked
> > bugfixes from branches will need to go into a branch first, tested
> > against master, and merged to master). We can essentially set a date
> > and do that any time, with some advance notice that direct commits
> > will be reverted.
>
> Yes +1.
>
> -Set a date
> -Tag master for reference
> -Find a volunteer or two to RM master
> -automatic revert on master if not from RM
> -all commits to master come from PR, need clear review and green tests
> -harden master (basic QA process), release 4.6 as a tag on master
> -all features and fixes need to be made on branches or forks and onus is
> on devs to rebase to master
> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3, 4.4,
> etc)
> -from there forward only maintain a linear release through master
>
> Feel free to add, tweak
>
> PS: No need to vote if we have consensus. Taking a clue from ASF members,
> votes should be avoided at all cost, they mean that we do not have clear
> consensus.
>
>
> >
> > On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <ru...@gmail.com>
> wrote:
> >>
> >>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
> >>>
> >>> Have they diverged that much? Due to cherry-picking, I guess.
> >>> Otherwise you should be able to do it cleanly.
> >>>
> >>> There's a good opportunity to do this next release. Instead of
> >>> creating a release branch, we freeze master and start creating dev
> >>> branches.
> >>
> >> +1
> >>
> >> This just amounts to treating master now like a release branch. Getting
> back to PL suggestion, that means
> >> that any commit to master would be through a PR or MERGE request on the
> ML. Anything else will be reverted by the RM.
> >>
> >> Marcus, do you feel like writing down a little process for this and
> some dates that we can target.
> >> It would be nice to do this for 4.6.
> >>
> >>>
> >>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
> daan.hoogland@gmail.com> wrote:
> >>>> We heavily invested in code now on master. Not looking forward to
> >>>> backporting that.
> >>>>
> >>>> mobile dev with bilingual spelling checker used (read at your own
> risk)
> >>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
> >>>>
> >>>>> Well, would we just swap the last release branch with master? Master
> >>>>> is the dev branch, and the last release is really what we have as a
> >>>>> stable branch.
> >>>>>
> >>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
> daan.hoogland@gmail.com>
> >>>>> wrote:
> >>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
> runseb@gmail.com>
> >>>>> wrote:
> >>>>>>>
> >>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <pdion@cloudops.com
> >
> >>>>> wrote:
> >>>>>>>>
> >>>>>>>> Today during the CloudStackdays  we did a round table about
> Release
> >>>>>>>> management targeting the next 4.6 releases.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> Quick bullet point discussions:
> >>>>>>>>
> >>>>>>>> ideas to change release planning
> >>>>>>>>
> >>>>>>>> - Plugin contribution is complicated because often  a new plugin
> >>>>> involve
> >>>>>>>> change on the core:
> >>>>>>>>    - ex: storage plugin involve changes on Hypervisor code
> >>>>>>>> - There is an idea of going on a 2 weeks release model which could
> >>>>>>>> introduce issue the database schema.
> >>>>>>>> - Database schema version should be different then the application
> >>>>>>>> version.
> >>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
> >>>>> simulator
> >>>>>>>> job on  PullRequest.
> >>>>>>>> - Some people (I'm part of them) are concerned on our current way
> of
> >>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
> 4.4.x,
> >>>>>>>> 4.5.x). But the current level of confidence against latest release
> >>>>> is low,
> >>>>>>>> so that need to be improved.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> So, the main messages is that w'd like to improve the release
> >>>>> velocity, and
> >>>>>>>> release branch stability.  so we would like to propose few change
> in
> >>>>> the
> >>>>>>>> way we would add code to the 4.6 branch as follow:
> >>>>>>>>
> >>>>>>>> - All new contribution to 4.6 would be thru Pull Request or merge
> >>>>> request,
> >>>>>>>> which would trigger a simulator job, ideally only if that pass
> the PR
> >>>>> would
> >>>>>>>> be accepted and automatically merged.  At this time, I think we
> pretty
> >>>>> much
> >>>>>>>> have everything in place to do that. At a first step we would use
> >>>>>>>> simulator+marvin jobs then improve tests coverage from there.
> >>>>>>>
> >>>>>>> +1
> >>>>>>>
> >>>>>>> We do need to realize what this means and be all fine with it.
> >>>>>>>
> >>>>>>> It means that if someone who is not RM directly commits to the
> release
> >>>>> branch, the commit will be reverted.
> >>>>>>> And that from the beginning of the branching…
> >>>>>> I agree and we can even go as far as reverting fixes that are
> >>>>>> cherry-picked in favour of merged forward.
> >>>>>>
> >>>>>>>
> >>>>>>> IMHO, I think this would be a good step but I don’t think it goes
> far
> >>>>> enough.
> >>>>>> Agreed here as well but let's take the step while discussing further
> >>>>>> steps and not implement to much process as well
> >>>>>>
> >>>>>>>
> >>>>>>> This still uses a paradigm where a release is made from a release
> >>>>> branch that was started from an unstable development branch.
> >>>>>>> Hence you still need *extensive* QA.
> >>>>>> The problem here is that there is no stable point to fork from at
> the
> >>>>>> moment. We will get there and we shouldn't stop taking steps in that
> >>>>>> direction.
> >>>>>>
> >>>>>>>
> >>>>>>> If we truly want to release faster, we need to release from the
> same
> >>>>> QA’d branch time after time….a release needs to be based on a
> previous
> >>>>> release
> >>>>>>>
> >>>>>>> Basically, we need a rolling release cycle. That will have the
> added
> >>>>> benefit to not leave releases behind and have to focus on
> backporting.
> >>>>>>>
> >>>>>>>>
> >>>>>>>> Please comments :-)
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> --
> >>>>>> Daan
> >>>>>
> >>
>
>

Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
I never intended for all 6 RM to be involved in every commit. Just to have
6 in order to spread the load. I just want at least two of them to verify
each merge.

Op wo 13 mei 2015 om 18:32 schreef sebgoa <ru...@gmail.com>:

>
> On May 13, 2015, at 6:07 PM, David Nalley <da...@gnsa.us> wrote:
>
> > On Wed, May 13, 2015 at 8:36 AM, Wilder Rodrigues
> > <WR...@schubergphilis.com> wrote:
> >> Hi guys,
> >>
> >> I hope that’s not too late to react on this one.
> >>
> >> Having 6 RMs seems a bit too much for me. For PRs containing a few
> lines of code, just bug fixes or changing maven files, python, sh, etc it
> might be simple and quick. However, if we get a PR with +30 commits and 10k
> lines added, it gets really difficult to get the community to test/review
> the PR. So, for 2 people to go over it is already taking too long to get
> the code imagine, now imagine 4 or 6.
> >>
> >> Rohit has done an excellent job in looking into the PRs, commenting on
> them and some times testing as well. But there are things that cannot
> simply get him, or perhaps other guys, to test properly a PR; having time
> and environment as the main reasons.
> >>
> >> I would say that in case we have a PR that contains:
> >>
> >> 1. Documentation on the Apache CS Wiki
> >> 2. Unit Tests (a lot of them, minimum 70% for the code changed)
> >> 3. Marvin Test Results report - test_routers, test_vpc_routers,
> test_vm_life_cycle, test_account, at least.
> >>
> >> Should be given priority and get less RMs involved in order to speed up
> our development/release processes. Unless, of course, the people would have
> time to look into the PR immediately.
> >>
> >> What do you think?
> >>
> >> Cheers,
> >> Wilder
> >>
> >
> >
> > I like this.
> > We have to live by our tests. So enforcing good coverage, and gating
> > on good results makes sense to me.
> > No human can reliably eyeball all of this.
> >
> > --David
>
> I don't think we are saying anything different to this.
>
> Any PR should pass the Travis tests (…and there should be more tests).
> Review should not allow anything that does not have unit test either.
> For new features, they should come with documentation patches as well.
>
> bottom line, I don't think we disagree. Or maybe I missing something.
>
> -sebastien
>
>
>

Re: [DISCUSS] 4.6 release management

Posted by sebgoa <ru...@gmail.com>.
On May 13, 2015, at 6:07 PM, David Nalley <da...@gnsa.us> wrote:

> On Wed, May 13, 2015 at 8:36 AM, Wilder Rodrigues
> <WR...@schubergphilis.com> wrote:
>> Hi guys,
>> 
>> I hope that’s not too late to react on this one.
>> 
>> Having 6 RMs seems a bit too much for me. For PRs containing a few lines of code, just bug fixes or changing maven files, python, sh, etc it might be simple and quick. However, if we get a PR with +30 commits and 10k lines added, it gets really difficult to get the community to test/review the PR. So, for 2 people to go over it is already taking too long to get the code imagine, now imagine 4 or 6.
>> 
>> Rohit has done an excellent job in looking into the PRs, commenting on them and some times testing as well. But there are things that cannot simply get him, or perhaps other guys, to test properly a PR; having time and environment as the main reasons.
>> 
>> I would say that in case we have a PR that contains:
>> 
>> 1. Documentation on the Apache CS Wiki
>> 2. Unit Tests (a lot of them, minimum 70% for the code changed)
>> 3. Marvin Test Results report - test_routers, test_vpc_routers, test_vm_life_cycle, test_account, at least.
>> 
>> Should be given priority and get less RMs involved in order to speed up our development/release processes. Unless, of course, the people would have time to look into the PR immediately.
>> 
>> What do you think?
>> 
>> Cheers,
>> Wilder
>> 
> 
> 
> I like this.
> We have to live by our tests. So enforcing good coverage, and gating
> on good results makes sense to me.
> No human can reliably eyeball all of this.
> 
> --David

I don't think we are saying anything different to this.

Any PR should pass the Travis tests (…and there should be more tests).
Review should not allow anything that does not have unit test either.
For new features, they should come with documentation patches as well.

bottom line, I don't think we disagree. Or maybe I missing something.

-sebastien



Re: [DISCUSS] 4.6 release management

Posted by Wilder Rodrigues <WR...@schubergphilis.com>.
Thanks, David. I really appreciate that!

Should we change the subject to development guidelines? It is also related the way we commit/push code to git. I can contribute on that by writing a few lines that would help the community on producing better code (i.e increasing coverage) and having a clear process concerning the way everybody contributes to ACS.

Cheers,
Wilder

 

Sent from my iPhone

> On 13 May 2015, at 18:10, David Nalley <da...@gnsa.us> wrote:
> 
> On Wed, May 13, 2015 at 8:36 AM, Wilder Rodrigues
> <WR...@schubergphilis.com> wrote:
>> Hi guys,
>> 
>> I hope that’s not too late to react on this one.
>> 
>> Having 6 RMs seems a bit too much for me. For PRs containing a few lines of code, just bug fixes or changing maven files, python, sh, etc it might be simple and quick. However, if we get a PR with +30 commits and 10k lines added, it gets really difficult to get the community to test/review the PR. So, for 2 people to go over it is already taking too long to get the code imagine, now imagine 4 or 6.
>> 
>> Rohit has done an excellent job in looking into the PRs, commenting on them and some times testing as well. But there are things that cannot simply get him, or perhaps other guys, to test properly a PR; having time and environment as the main reasons.
>> 
>> I would say that in case we have a PR that contains:
>> 
>> 1. Documentation on the Apache CS Wiki
>> 2. Unit Tests (a lot of them, minimum 70% for the code changed)
>> 3. Marvin Test Results report - test_routers, test_vpc_routers, test_vm_life_cycle, test_account, at least.
>> 
>> Should be given priority and get less RMs involved in order to speed up our development/release processes. Unless, of course, the people would have time to look into the PR immediately.
>> 
>> What do you think?
>> 
>> Cheers,
>> Wilder
> 
> 
> I like this.
> We have to live by our tests. So enforcing good coverage, and gating
> on good results makes sense to me.
> No human can reliably eyeball all of this.
> 
> --David

Re: [DISCUSS] 4.6 release management

Posted by David Nalley <da...@gnsa.us>.
On Wed, May 13, 2015 at 8:36 AM, Wilder Rodrigues
<WR...@schubergphilis.com> wrote:
> Hi guys,
>
> I hope that’s not too late to react on this one.
>
> Having 6 RMs seems a bit too much for me. For PRs containing a few lines of code, just bug fixes or changing maven files, python, sh, etc it might be simple and quick. However, if we get a PR with +30 commits and 10k lines added, it gets really difficult to get the community to test/review the PR. So, for 2 people to go over it is already taking too long to get the code imagine, now imagine 4 or 6.
>
> Rohit has done an excellent job in looking into the PRs, commenting on them and some times testing as well. But there are things that cannot simply get him, or perhaps other guys, to test properly a PR; having time and environment as the main reasons.
>
> I would say that in case we have a PR that contains:
>
> 1. Documentation on the Apache CS Wiki
> 2. Unit Tests (a lot of them, minimum 70% for the code changed)
> 3. Marvin Test Results report - test_routers, test_vpc_routers, test_vm_life_cycle, test_account, at least.
>
> Should be given priority and get less RMs involved in order to speed up our development/release processes. Unless, of course, the people would have time to look into the PR immediately.
>
> What do you think?
>
> Cheers,
> Wilder
>


I like this.
We have to live by our tests. So enforcing good coverage, and gating
on good results makes sense to me.
No human can reliably eyeball all of this.

--David

Re: [DISCUSS] 4.6 release management

Posted by Wilder Rodrigues <WR...@schubergphilis.com>.
Hi guys,

I hope that’s not too late to react on this one.

Having 6 RMs seems a bit too much for me. For PRs containing a few lines of code, just bug fixes or changing maven files, python, sh, etc it might be simple and quick. However, if we get a PR with +30 commits and 10k lines added, it gets really difficult to get the community to test/review the PR. So, for 2 people to go over it is already taking too long to get the code imagine, now imagine 4 or 6.

Rohit has done an excellent job in looking into the PRs, commenting on them and some times testing as well. But there are things that cannot simply get him, or perhaps other guys, to test properly a PR; having time and environment as the main reasons.

I would say that in case we have a PR that contains:

1. Documentation on the Apache CS Wiki
2. Unit Tests (a lot of them, minimum 70% for the code changed)
3. Marvin Test Results report - test_routers, test_vpc_routers, test_vm_life_cycle, test_account, at least.

Should be given priority and get less RMs involved in order to speed up our development/release processes. Unless, of course, the people would have time to look into the PR immediately.

What do you think?

Cheers,
Wilder

On 11 May 2015, at 15:54, Rohit Yadav <ro...@shapeblue.com>> wrote:


On 11-May-2015, at 2:51 pm, Daan Hoogland <da...@gmail.com>> wrote:

I'm fine with that: rm must have a reviewer on merges? Seem heavy for
trivial changes but alright

On Mon, 11 May 2015 14:16 Sebastien Goasguen <ru...@gmail.com>> wrote:


On May 11, 2015, at 2:00 PM, Daan Hoogland <da...@gmail.com>>
wrote:

+1 how about my proposal to have 6 RM and demand that at least 2 agree on
each PR?

+0.5

we can say that we need two pairs of eyes to ok the PR for merge.
no need to formally have 6 RMs ?

so 1 RM (you or me) + another pair of eyes would work ?

I’ve been doing PR reviews as a habit, happy to chip-in as a co-pilot.


Op ma 11 mei 2015 om 09:52 schreef sebgoa <ru...@gmail.com>>:


On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>>
wrote:

I can have a look at the merge of 4.5.1 and am willing to be one of the
RMs, not to be the RM!


I can RM as well.

How about we lock down master on wednesday ?
From that point forward we only take PR into master -either you or me-
all
other direct commits to master will be reverted !!!!


-sebastien



Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>>:

So no -1 on this.

Do we have volunteers to RM 4.6 on the master branch ?

I propose to set a date asap, tag master and tell everyone that
starting
from that tag all commits to master except from RM will be reverted.

will need to make sure that all of 4.5.1 is in master

-sebastien


On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>>
wrote:

Let's not do more quality improvement proces but just improve
quality.
If
anybody want to add to the pages on the wiki, you're welkom but
nobody
did
for long time. +1 for the present state of Sebastien's views on
things.
We
can refine at any time.

Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>>:


On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>>
wrote:

Hi,

In my mind it was kind of making more sense to start by keeping 4.6
into
a
separate branch, enforce pull-requests and deploy the CI. smaller
step
but
faster result, and from there, once we get stable with the CI

I hear you.

But we have waited for way too long for better CI. I see great
efforts
in
that direction.
But I personally do not want to wait any longer to make a move.

We do open source, we should have fun, take risks, move fast, fail
fast,
recover etc….

so let's JFDI

and git flow;
move into master, do fastest releases cycle. If we consider we can
do
all
that starting in 4.6, I'm all for it!


Is there really a difference between creating a 4.6 and doing what
you
say, and tagging master (start) and doing it on master leading to
4.6
release ?

Assuming the QA does not improve, 4.6 would not be worse than 4.5.
If
we
can improve a bit on the QA then we win.
Plus I think a different commit model will help a lot in quality.


Marcus: are you preparing a proposal on this? wiki page? I can help


We can do this proposal on email..and once we have consensus write
it
up
for archive in the wiki.
If we move to the wiki now, this effort is going to die.

Seb: doesn't the vote would confirm the consensus?


if we have consensus no need for vote.

Raja:  do we have any documentation somewhere on how to use,
contribute
to
the smoke test? that could be our start for the CI tests?


Cheers


On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <
runseb@gmail.com<ma...@gmail.com>>
wrote:


On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com>> wrote:

After reviewing the history as mentioned by Daan, unless we
propose
and vote on a newer workflow model I think the best we can do is
to
simply be more strict about commits to master. They all need to
be
merges that have been tested against master before merge. This
will
in
theory make master more stable, but doesn't really change the
workflow
we've already agreed upon and have been working under (although
bugfixes sometimes were not coming in from branches, and
cherry-picked
bugfixes from branches will need to go into a branch first,
tested
against master, and merged to master). We can essentially set a
date
and do that any time, with some advance notice that direct
commits
will be reverted.

Yes +1.

-Set a date
-Tag master for reference
-Find a volunteer or two to RM master
-automatic revert on master if not from RM
-all commits to master come from PR, need clear review and green
tests
-harden master (basic QA process), release 4.6 as a tag on master
-all features and fixes need to be made on branches or forks and
onus
is
on devs to rebase to master
-brings everyone onto 4.6 (make sure we have upgrade paths from
4.3,
4.4,
etc)
-from there forward only maintain a linear release through master

Feel free to add, tweak

PS: No need to vote if we have consensus. Taking a clue from ASF
members,
votes should be avoided at all cost, they mean that we do not have
clear
consensus.



On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
runseb@gmail.com<ma...@gmail.com>

wrote:

On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com>
wrote:

Have they diverged that much? Due to cherry-picking, I guess.
Otherwise you should be able to do it cleanly.

There's a good opportunity to do this next release. Instead of
creating a release branch, we freeze master and start creating
dev
branches.

+1

This just amounts to treating master now like a release branch.
Getting
back to PL suggestion, that means
that any commit to master would be through a PR or MERGE request
on
the
ML. Anything else will be reverted by the RM.

Marcus, do you feel like writing down a little process for this
and
some dates that we can target.
It would be nice to do this for 4.6.


On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
daan.hoogland@gmail.com<ma...@gmail.com>> wrote:
We heavily invested in code now on master. Not looking forward
to
backporting that.

mobile dev with bilingual spelling checker used (read at your
own
risk)
Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>>:

Well, would we just swap the last release branch with master?
Master
is the dev branch, and the last release is really what we
have
as a
stable branch.

On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
daan.hoogland@gmail.com<ma...@gmail.com>>
wrote:
On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
runseb@gmail.com<ma...@gmail.com>>
wrote:

On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
pdion@cloudops.com<ma...@cloudops.com>

wrote:

Today during the CloudStackdays  we did a round table
about
Release
management targeting the next 4.6 releases.


Quick bullet point discussions:

ideas to change release planning

- Plugin contribution is complicated because often  a new
plugin
involve
change on the core:
- ex: storage plugin involve changes on Hypervisor code
- There is an idea of going on a 2 weeks release model
which
could
introduce issue the database schema.
- Database schema version should be different then the
application
version.
- There is a will to enforce git workflow in 4.6  and
trigger
simulator
job on  PullRequest.
- Some people (I'm part of them) are concerned on our
current
way
of
supporting and back porting fixes to multiple release
(4.3.x,
4.4.x,
4.5.x). But the current level of confidence against latest
release
is low,
so that need to be improved.


So, the main messages is that w'd like to improve the
release
velocity, and
release branch stability.  so we would like to propose few
change
in
the
way we would add code to the 4.6 branch as follow:

- All new contribution to 4.6 would be thru Pull Request
or
merge
request,
which would trigger a simulator job, ideally only if that
pass
the PR
would
be accepted and automatically merged.  At this time, I
think
we
pretty
much
have everything in place to do that. At a first step we
would
use
simulator+marvin jobs then improve tests coverage from
there.

+1

We do need to realize what this means and be all fine with
it.

It means that if someone who is not RM directly commits to
the
release
branch, the commit will be reverted.
And that from the beginning of the branching…
I agree and we can even go as far as reverting fixes that
are
cherry-picked in favour of merged forward.


IMHO, I think this would be a good step but I don’t think
it
goes
far
enough.
Agreed here as well but let's take the step while discussing
further
steps and not implement to much process as well


This still uses a paradigm where a release is made from a
release
branch that was started from an unstable development branch.
Hence you still need *extensive* QA.
The problem here is that there is no stable point to fork
from
at
the
moment. We will get there and we shouldn't stop taking steps
in
that
direction.


If we truly want to release faster, we need to release from
the
same
QA’d branch time after time….a release needs to be based on a
previous
release

Basically, we need a rolling release cycle. That will have
the
added
benefit to not leave releases behind and have to focus on
backporting.


Please comments :-)




--
Daan













Regards,
Rohit Yadav
Software Architect, ShapeBlue
M. +91 88 262 30892 | rohit.yadav@shapeblue.com<ma...@shapeblue.com>
Blog: bhaisaab.org<http://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 Software Engineering<http://shapeblue.com/cloudstack-software-engineering/>
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.


Re: [DISCUSS] 4.6 release management

Posted by Rohit Yadav <ro...@shapeblue.com>.
> On 11-May-2015, at 2:51 pm, Daan Hoogland <da...@gmail.com> wrote:
>
> I'm fine with that: rm must have a reviewer on merges? Seem heavy for
> trivial changes but alright
>
> On Mon, 11 May 2015 14:16 Sebastien Goasguen <ru...@gmail.com> wrote:
>
>>
>>> On May 11, 2015, at 2:00 PM, Daan Hoogland <da...@gmail.com>
>> wrote:
>>>
>>> +1 how about my proposal to have 6 RM and demand that at least 2 agree on
>>> each PR?
>>
>> +0.5
>>
>> we can say that we need two pairs of eyes to ok the PR for merge.
>> no need to formally have 6 RMs ?
>>
>> so 1 RM (you or me) + another pair of eyes would work ?

I’ve been doing PR reviews as a habit, happy to chip-in as a co-pilot.


>>> Op ma 11 mei 2015 om 09:52 schreef sebgoa <ru...@gmail.com>:
>>>
>>>>
>>>> On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>
>>>> wrote:
>>>>
>>>>> I can have a look at the merge of 4.5.1 and am willing to be one of the
>>>>> RMs, not to be the RM!
>>>>>
>>>>
>>>> I can RM as well.
>>>>
>>>> How about we lock down master on wednesday ?
>>>> From that point forward we only take PR into master -either you or me-
>> all
>>>> other direct commits to master will be reverted !!!!
>>>>
>>>>
>>>> -sebastien
>>>>
>>>>
>>>>
>>>>> Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
>>>>>
>>>>>> So no -1 on this.
>>>>>>
>>>>>> Do we have volunteers to RM 4.6 on the master branch ?
>>>>>>
>>>>>> I propose to set a date asap, tag master and tell everyone that
>> starting
>>>>>> from that tag all commits to master except from RM will be reverted.
>>>>>>
>>>>>> will need to make sure that all of 4.5.1 is in master
>>>>>>
>>>>>> -sebastien
>>>>>>
>>>>>>
>>>>>> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
>>>> wrote:
>>>>>>
>>>>>>> Let's not do more quality improvement proces but just improve
>> quality.
>>>> If
>>>>>>> anybody want to add to the pages on the wiki, you're welkom but
>> nobody
>>>>>> did
>>>>>>> for long time. +1 for the present state of Sebastien's views on
>> things.
>>>>>> We
>>>>>>> can refine at any time.
>>>>>>>
>>>>>>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
>>>>>>>
>>>>>>>>
>>>>>>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> In my mind it was kind of making more sense to start by keeping 4.6
>>>>>> into
>>>>>>>> a
>>>>>>>>> separate branch, enforce pull-requests and deploy the CI. smaller
>>>> step
>>>>>>>> but
>>>>>>>>> faster result, and from there, once we get stable with the CI
>>>>>>>>
>>>>>>>> I hear you.
>>>>>>>>
>>>>>>>> But we have waited for way too long for better CI. I see great
>> efforts
>>>>>> in
>>>>>>>> that direction.
>>>>>>>> But I personally do not want to wait any longer to make a move.
>>>>>>>>
>>>>>>>> We do open source, we should have fun, take risks, move fast, fail
>>>> fast,
>>>>>>>> recover etc….
>>>>>>>>
>>>>>>>> so let's JFDI
>>>>>>>>
>>>>>>>>> and git flow;
>>>>>>>>> move into master, do fastest releases cycle. If we consider we can
>> do
>>>>>> all
>>>>>>>>> that starting in 4.6, I'm all for it!
>>>>>>>>
>>>>>>>>
>>>>>>>> Is there really a difference between creating a 4.6 and doing what
>> you
>>>>>>>> say, and tagging master (start) and doing it on master leading to
>> 4.6
>>>>>>>> release ?
>>>>>>>>
>>>>>>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5.
>> If
>>>> we
>>>>>>>> can improve a bit on the QA then we win.
>>>>>>>> Plus I think a different commit model will help a lot in quality.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
>>>>>>>>>
>>>>>>>>
>>>>>>>> We can do this proposal on email..and once we have consensus write
>> it
>>>> up
>>>>>>>> for archive in the wiki.
>>>>>>>> If we move to the wiki now, this effort is going to die.
>>>>>>>>
>>>>>>>>> Seb: doesn't the vote would confirm the consensus?
>>>>>>>>>
>>>>>>>>
>>>>>>>> if we have consensus no need for vote.
>>>>>>>>
>>>>>>>>> Raja:  do we have any documentation somewhere on how to use,
>>>> contribute
>>>>>>>> to
>>>>>>>>> the smoke test? that could be our start for the CI tests?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Cheers
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <
>>>> runseb@gmail.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>> After reviewing the history as mentioned by Daan, unless we
>> propose
>>>>>>>>>>> and vote on a newer workflow model I think the best we can do is
>> to
>>>>>>>>>>> simply be more strict about commits to master. They all need to
>> be
>>>>>>>>>>> merges that have been tested against master before merge. This
>> will
>>>>>> in
>>>>>>>>>>> theory make master more stable, but doesn't really change the
>>>>>> workflow
>>>>>>>>>>> we've already agreed upon and have been working under (although
>>>>>>>>>>> bugfixes sometimes were not coming in from branches, and
>>>>>> cherry-picked
>>>>>>>>>>> bugfixes from branches will need to go into a branch first,
>> tested
>>>>>>>>>>> against master, and merged to master). We can essentially set a
>>>> date
>>>>>>>>>>> and do that any time, with some advance notice that direct
>> commits
>>>>>>>>>>> will be reverted.
>>>>>>>>>>
>>>>>>>>>> Yes +1.
>>>>>>>>>>
>>>>>>>>>> -Set a date
>>>>>>>>>> -Tag master for reference
>>>>>>>>>> -Find a volunteer or two to RM master
>>>>>>>>>> -automatic revert on master if not from RM
>>>>>>>>>> -all commits to master come from PR, need clear review and green
>>>> tests
>>>>>>>>>> -harden master (basic QA process), release 4.6 as a tag on master
>>>>>>>>>> -all features and fixes need to be made on branches or forks and
>>>> onus
>>>>>> is
>>>>>>>>>> on devs to rebase to master
>>>>>>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from
>> 4.3,
>>>>>>>> 4.4,
>>>>>>>>>> etc)
>>>>>>>>>> -from there forward only maintain a linear release through master
>>>>>>>>>>
>>>>>>>>>> Feel free to add, tweak
>>>>>>>>>>
>>>>>>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
>>>>>>>> members,
>>>>>>>>>> votes should be avoided at all cost, they mean that we do not have
>>>>>> clear
>>>>>>>>>> consensus.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
>>>>>> runseb@gmail.com
>>>>>>>>>
>>>>>>>>>> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com>
>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>>>>>>>>>>>>> Otherwise you should be able to do it cleanly.
>>>>>>>>>>>>>
>>>>>>>>>>>>> There's a good opportunity to do this next release. Instead of
>>>>>>>>>>>>> creating a release branch, we freeze master and start creating
>>>> dev
>>>>>>>>>>>>> branches.
>>>>>>>>>>>>
>>>>>>>>>>>> +1
>>>>>>>>>>>>
>>>>>>>>>>>> This just amounts to treating master now like a release branch.
>>>>>>>> Getting
>>>>>>>>>> back to PL suggestion, that means
>>>>>>>>>>>> that any commit to master would be through a PR or MERGE request
>>>> on
>>>>>>>> the
>>>>>>>>>> ML. Anything else will be reverted by the RM.
>>>>>>>>>>>>
>>>>>>>>>>>> Marcus, do you feel like writing down a little process for this
>>>> and
>>>>>>>>>> some dates that we can target.
>>>>>>>>>>>> It would be nice to do this for 4.6.
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>>>>>>>>>> daan.hoogland@gmail.com> wrote:
>>>>>>>>>>>>>> We heavily invested in code now on master. Not looking forward
>>>> to
>>>>>>>>>>>>>> backporting that.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> mobile dev with bilingual spelling checker used (read at your
>>>> own
>>>>>>>>>> risk)
>>>>>>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Well, would we just swap the last release branch with master?
>>>>>>>> Master
>>>>>>>>>>>>>>> is the dev branch, and the last release is really what we
>> have
>>>>>> as a
>>>>>>>>>>>>>>> stable branch.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>>>>>>>>>> daan.hoogland@gmail.com>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>>>>>>>>>> runseb@gmail.com>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
>>>>>>>> pdion@cloudops.com
>>>>>>>>>>>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table
>> about
>>>>>>>>>> Release
>>>>>>>>>>>>>>>>>> management targeting the next 4.6 releases.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Quick bullet point discussions:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> ideas to change release planning
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
>>>>>> plugin
>>>>>>>>>>>>>>> involve
>>>>>>>>>>>>>>>>>> change on the core:
>>>>>>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
>>>>>>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model
>> which
>>>>>>>> could
>>>>>>>>>>>>>>>>>> introduce issue the database schema.
>>>>>>>>>>>>>>>>>> - Database schema version should be different then the
>>>>>>>> application
>>>>>>>>>>>>>>>>>> version.
>>>>>>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and
>>>> trigger
>>>>>>>>>>>>>>> simulator
>>>>>>>>>>>>>>>>>> job on  PullRequest.
>>>>>>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our
>>>> current
>>>>>>>> way
>>>>>>>>>> of
>>>>>>>>>>>>>>>>>> supporting and back porting fixes to multiple release
>>>> (4.3.x,
>>>>>>>>>> 4.4.x,
>>>>>>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
>>>>>>>> release
>>>>>>>>>>>>>>> is low,
>>>>>>>>>>>>>>>>>> so that need to be improved.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> So, the main messages is that w'd like to improve the
>>>> release
>>>>>>>>>>>>>>> velocity, and
>>>>>>>>>>>>>>>>>> release branch stability.  so we would like to propose few
>>>>>>>> change
>>>>>>>>>> in
>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request
>> or
>>>>>>>> merge
>>>>>>>>>>>>>>> request,
>>>>>>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that
>>>> pass
>>>>>>>>>> the PR
>>>>>>>>>>>>>>> would
>>>>>>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I
>> think
>>>>>> we
>>>>>>>>>> pretty
>>>>>>>>>>>>>>> much
>>>>>>>>>>>>>>>>>> have everything in place to do that. At a first step we
>>>> would
>>>>>>>> use
>>>>>>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from
>>>> there.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> +1
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> We do need to realize what this means and be all fine with
>>>> it.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> It means that if someone who is not RM directly commits to
>>>> the
>>>>>>>>>> release
>>>>>>>>>>>>>>> branch, the commit will be reverted.
>>>>>>>>>>>>>>>>> And that from the beginning of the branching…
>>>>>>>>>>>>>>>> I agree and we can even go as far as reverting fixes that
>> are
>>>>>>>>>>>>>>>> cherry-picked in favour of merged forward.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think
>> it
>>>>>> goes
>>>>>>>>>> far
>>>>>>>>>>>>>>> enough.
>>>>>>>>>>>>>>>> Agreed here as well but let's take the step while discussing
>>>>>>>> further
>>>>>>>>>>>>>>>> steps and not implement to much process as well
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> This still uses a paradigm where a release is made from a
>>>>>> release
>>>>>>>>>>>>>>> branch that was started from an unstable development branch.
>>>>>>>>>>>>>>>>> Hence you still need *extensive* QA.
>>>>>>>>>>>>>>>> The problem here is that there is no stable point to fork
>> from
>>>>>> at
>>>>>>>>>> the
>>>>>>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps
>>>> in
>>>>>>>> that
>>>>>>>>>>>>>>>> direction.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> If we truly want to release faster, we need to release from
>>>> the
>>>>>>>>>> same
>>>>>>>>>>>>>>> QA’d branch time after time….a release needs to be based on a
>>>>>>>>>> previous
>>>>>>>>>>>>>>> release
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have
>>>> the
>>>>>>>>>> added
>>>>>>>>>>>>>>> benefit to not leave releases behind and have to focus on
>>>>>>>>>> backporting.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Please comments :-)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>> Daan
>>>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>
>>

Regards,
Rohit Yadav
Software Architect, ShapeBlue
M. +91 88 262 30892 | rohit.yadav@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 Software Engineering<http://shapeblue.com/cloudstack-software-engineering/>
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.

Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
I'm fine with that: rm must have a reviewer on merges? Seem heavy for
trivial changes but alright

On Mon, 11 May 2015 14:16 Sebastien Goasguen <ru...@gmail.com> wrote:

>
> > On May 11, 2015, at 2:00 PM, Daan Hoogland <da...@gmail.com>
> wrote:
> >
> > +1 how about my proposal to have 6 RM and demand that at least 2 agree on
> > each PR?
>
> +0.5
>
> we can say that we need two pairs of eyes to ok the PR for merge.
> no need to formally have 6 RMs ?
>
> so 1 RM (you or me) + another pair of eyes would work ?
>
> >
> > Op ma 11 mei 2015 om 09:52 schreef sebgoa <ru...@gmail.com>:
> >
> >>
> >> On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>
> >> wrote:
> >>
> >>> I can have a look at the merge of 4.5.1 and am willing to be one of the
> >>> RMs, not to be the RM!
> >>>
> >>
> >> I can RM as well.
> >>
> >> How about we lock down master on wednesday ?
> >> From that point forward we only take PR into master -either you or me-
> all
> >> other direct commits to master will be reverted !!!!
> >>
> >>
> >> -sebastien
> >>
> >>
> >>
> >>> Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
> >>>
> >>>> So no -1 on this.
> >>>>
> >>>> Do we have volunteers to RM 4.6 on the master branch ?
> >>>>
> >>>> I propose to set a date asap, tag master and tell everyone that
> starting
> >>>> from that tag all commits to master except from RM will be reverted.
> >>>>
> >>>> will need to make sure that all of 4.5.1 is in master
> >>>>
> >>>> -sebastien
> >>>>
> >>>>
> >>>> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
> >> wrote:
> >>>>
> >>>>> Let's not do more quality improvement proces but just improve
> quality.
> >> If
> >>>>> anybody want to add to the pages on the wiki, you're welkom but
> nobody
> >>>> did
> >>>>> for long time. +1 for the present state of Sebastien's views on
> things.
> >>>> We
> >>>>> can refine at any time.
> >>>>>
> >>>>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
> >>>>>
> >>>>>>
> >>>>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
> >>>> wrote:
> >>>>>>
> >>>>>>> Hi,
> >>>>>>>
> >>>>>>> In my mind it was kind of making more sense to start by keeping 4.6
> >>>> into
> >>>>>> a
> >>>>>>> separate branch, enforce pull-requests and deploy the CI. smaller
> >> step
> >>>>>> but
> >>>>>>> faster result, and from there, once we get stable with the CI
> >>>>>>
> >>>>>> I hear you.
> >>>>>>
> >>>>>> But we have waited for way too long for better CI. I see great
> efforts
> >>>> in
> >>>>>> that direction.
> >>>>>> But I personally do not want to wait any longer to make a move.
> >>>>>>
> >>>>>> We do open source, we should have fun, take risks, move fast, fail
> >> fast,
> >>>>>> recover etc….
> >>>>>>
> >>>>>> so let's JFDI
> >>>>>>
> >>>>>>> and git flow;
> >>>>>>> move into master, do fastest releases cycle. If we consider we can
> do
> >>>> all
> >>>>>>> that starting in 4.6, I'm all for it!
> >>>>>>
> >>>>>>
> >>>>>> Is there really a difference between creating a 4.6 and doing what
> you
> >>>>>> say, and tagging master (start) and doing it on master leading to
> 4.6
> >>>>>> release ?
> >>>>>>
> >>>>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5.
> If
> >> we
> >>>>>> can improve a bit on the QA then we win.
> >>>>>> Plus I think a different commit model will help a lot in quality.
> >>>>>>
> >>>>>>>
> >>>>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
> >>>>>>>
> >>>>>>
> >>>>>> We can do this proposal on email..and once we have consensus write
> it
> >> up
> >>>>>> for archive in the wiki.
> >>>>>> If we move to the wiki now, this effort is going to die.
> >>>>>>
> >>>>>>> Seb: doesn't the vote would confirm the consensus?
> >>>>>>>
> >>>>>>
> >>>>>> if we have consensus no need for vote.
> >>>>>>
> >>>>>>> Raja:  do we have any documentation somewhere on how to use,
> >> contribute
> >>>>>> to
> >>>>>>> the smoke test? that could be our start for the CI tests?
> >>>>>>>
> >>>>>>>
> >>>>>>> Cheers
> >>>>>>>
> >>>>>>>
> >>>>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <
> >> runseb@gmail.com>
> >>>>>>> wrote:
> >>>>>>>
> >>>>>>>>
> >>>>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
> >>>>>>>>>
> >>>>>>>>> After reviewing the history as mentioned by Daan, unless we
> propose
> >>>>>>>>> and vote on a newer workflow model I think the best we can do is
> to
> >>>>>>>>> simply be more strict about commits to master. They all need to
> be
> >>>>>>>>> merges that have been tested against master before merge. This
> will
> >>>> in
> >>>>>>>>> theory make master more stable, but doesn't really change the
> >>>> workflow
> >>>>>>>>> we've already agreed upon and have been working under (although
> >>>>>>>>> bugfixes sometimes were not coming in from branches, and
> >>>> cherry-picked
> >>>>>>>>> bugfixes from branches will need to go into a branch first,
> tested
> >>>>>>>>> against master, and merged to master). We can essentially set a
> >> date
> >>>>>>>>> and do that any time, with some advance notice that direct
> commits
> >>>>>>>>> will be reverted.
> >>>>>>>>
> >>>>>>>> Yes +1.
> >>>>>>>>
> >>>>>>>> -Set a date
> >>>>>>>> -Tag master for reference
> >>>>>>>> -Find a volunteer or two to RM master
> >>>>>>>> -automatic revert on master if not from RM
> >>>>>>>> -all commits to master come from PR, need clear review and green
> >> tests
> >>>>>>>> -harden master (basic QA process), release 4.6 as a tag on master
> >>>>>>>> -all features and fixes need to be made on branches or forks and
> >> onus
> >>>> is
> >>>>>>>> on devs to rebase to master
> >>>>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from
> 4.3,
> >>>>>> 4.4,
> >>>>>>>> etc)
> >>>>>>>> -from there forward only maintain a linear release through master
> >>>>>>>>
> >>>>>>>> Feel free to add, tweak
> >>>>>>>>
> >>>>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
> >>>>>> members,
> >>>>>>>> votes should be avoided at all cost, they mean that we do not have
> >>>> clear
> >>>>>>>> consensus.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
> >>>> runseb@gmail.com
> >>>>>>>
> >>>>>>>> wrote:
> >>>>>>>>>>
> >>>>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com>
> wrote:
> >>>>>>>>>>>
> >>>>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
> >>>>>>>>>>> Otherwise you should be able to do it cleanly.
> >>>>>>>>>>>
> >>>>>>>>>>> There's a good opportunity to do this next release. Instead of
> >>>>>>>>>>> creating a release branch, we freeze master and start creating
> >> dev
> >>>>>>>>>>> branches.
> >>>>>>>>>>
> >>>>>>>>>> +1
> >>>>>>>>>>
> >>>>>>>>>> This just amounts to treating master now like a release branch.
> >>>>>> Getting
> >>>>>>>> back to PL suggestion, that means
> >>>>>>>>>> that any commit to master would be through a PR or MERGE request
> >> on
> >>>>>> the
> >>>>>>>> ML. Anything else will be reverted by the RM.
> >>>>>>>>>>
> >>>>>>>>>> Marcus, do you feel like writing down a little process for this
> >> and
> >>>>>>>> some dates that we can target.
> >>>>>>>>>> It would be nice to do this for 4.6.
> >>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
> >>>>>>>> daan.hoogland@gmail.com> wrote:
> >>>>>>>>>>>> We heavily invested in code now on master. Not looking forward
> >> to
> >>>>>>>>>>>> backporting that.
> >>>>>>>>>>>>
> >>>>>>>>>>>> mobile dev with bilingual spelling checker used (read at your
> >> own
> >>>>>>>> risk)
> >>>>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
> >>>>>>>>>>>>
> >>>>>>>>>>>>> Well, would we just swap the last release branch with master?
> >>>>>> Master
> >>>>>>>>>>>>> is the dev branch, and the last release is really what we
> have
> >>>> as a
> >>>>>>>>>>>>> stable branch.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
> >>>>>>>> daan.hoogland@gmail.com>
> >>>>>>>>>>>>> wrote:
> >>>>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
> >>>>>>>> runseb@gmail.com>
> >>>>>>>>>>>>> wrote:
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
> >>>>>> pdion@cloudops.com
> >>>>>>>>>
> >>>>>>>>>>>>> wrote:
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table
> about
> >>>>>>>> Release
> >>>>>>>>>>>>>>>> management targeting the next 4.6 releases.
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> Quick bullet point discussions:
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> ideas to change release planning
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
> >>>> plugin
> >>>>>>>>>>>>> involve
> >>>>>>>>>>>>>>>> change on the core:
> >>>>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
> >>>>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model
> which
> >>>>>> could
> >>>>>>>>>>>>>>>> introduce issue the database schema.
> >>>>>>>>>>>>>>>> - Database schema version should be different then the
> >>>>>> application
> >>>>>>>>>>>>>>>> version.
> >>>>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and
> >> trigger
> >>>>>>>>>>>>> simulator
> >>>>>>>>>>>>>>>> job on  PullRequest.
> >>>>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our
> >> current
> >>>>>> way
> >>>>>>>> of
> >>>>>>>>>>>>>>>> supporting and back porting fixes to multiple release
> >> (4.3.x,
> >>>>>>>> 4.4.x,
> >>>>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
> >>>>>> release
> >>>>>>>>>>>>> is low,
> >>>>>>>>>>>>>>>> so that need to be improved.
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> So, the main messages is that w'd like to improve the
> >> release
> >>>>>>>>>>>>> velocity, and
> >>>>>>>>>>>>>>>> release branch stability.  so we would like to propose few
> >>>>>> change
> >>>>>>>> in
> >>>>>>>>>>>>> the
> >>>>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request
> or
> >>>>>> merge
> >>>>>>>>>>>>> request,
> >>>>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that
> >> pass
> >>>>>>>> the PR
> >>>>>>>>>>>>> would
> >>>>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I
> think
> >>>> we
> >>>>>>>> pretty
> >>>>>>>>>>>>> much
> >>>>>>>>>>>>>>>> have everything in place to do that. At a first step we
> >> would
> >>>>>> use
> >>>>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from
> >> there.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> +1
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> We do need to realize what this means and be all fine with
> >> it.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> It means that if someone who is not RM directly commits to
> >> the
> >>>>>>>> release
> >>>>>>>>>>>>> branch, the commit will be reverted.
> >>>>>>>>>>>>>>> And that from the beginning of the branching…
> >>>>>>>>>>>>>> I agree and we can even go as far as reverting fixes that
> are
> >>>>>>>>>>>>>> cherry-picked in favour of merged forward.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think
> it
> >>>> goes
> >>>>>>>> far
> >>>>>>>>>>>>> enough.
> >>>>>>>>>>>>>> Agreed here as well but let's take the step while discussing
> >>>>>> further
> >>>>>>>>>>>>>> steps and not implement to much process as well
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> This still uses a paradigm where a release is made from a
> >>>> release
> >>>>>>>>>>>>> branch that was started from an unstable development branch.
> >>>>>>>>>>>>>>> Hence you still need *extensive* QA.
> >>>>>>>>>>>>>> The problem here is that there is no stable point to fork
> from
> >>>> at
> >>>>>>>> the
> >>>>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps
> >> in
> >>>>>> that
> >>>>>>>>>>>>>> direction.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> If we truly want to release faster, we need to release from
> >> the
> >>>>>>>> same
> >>>>>>>>>>>>> QA’d branch time after time….a release needs to be based on a
> >>>>>>>> previous
> >>>>>>>>>>>>> release
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have
> >> the
> >>>>>>>> added
> >>>>>>>>>>>>> benefit to not leave releases behind and have to focus on
> >>>>>>>> backporting.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>> Please comments :-)
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> --
> >>>>>>>>>>>>>> Daan
> >>>>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>>>
> >>
> >>
>
>

Re: [DISCUSS] 4.6 release management

Posted by Sebastien Goasguen <ru...@gmail.com>.
> On May 11, 2015, at 2:00 PM, Daan Hoogland <da...@gmail.com> wrote:
> 
> +1 how about my proposal to have 6 RM and demand that at least 2 agree on
> each PR?

+0.5

we can say that we need two pairs of eyes to ok the PR for merge.
no need to formally have 6 RMs ?

so 1 RM (you or me) + another pair of eyes would work ?

> 
> Op ma 11 mei 2015 om 09:52 schreef sebgoa <ru...@gmail.com>:
> 
>> 
>> On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>
>> wrote:
>> 
>>> I can have a look at the merge of 4.5.1 and am willing to be one of the
>>> RMs, not to be the RM!
>>> 
>> 
>> I can RM as well.
>> 
>> How about we lock down master on wednesday ?
>> From that point forward we only take PR into master -either you or me- all
>> other direct commits to master will be reverted !!!!
>> 
>> 
>> -sebastien
>> 
>> 
>> 
>>> Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
>>> 
>>>> So no -1 on this.
>>>> 
>>>> Do we have volunteers to RM 4.6 on the master branch ?
>>>> 
>>>> I propose to set a date asap, tag master and tell everyone that starting
>>>> from that tag all commits to master except from RM will be reverted.
>>>> 
>>>> will need to make sure that all of 4.5.1 is in master
>>>> 
>>>> -sebastien
>>>> 
>>>> 
>>>> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
>> wrote:
>>>> 
>>>>> Let's not do more quality improvement proces but just improve quality.
>> If
>>>>> anybody want to add to the pages on the wiki, you're welkom but nobody
>>>> did
>>>>> for long time. +1 for the present state of Sebastien's views on things.
>>>> We
>>>>> can refine at any time.
>>>>> 
>>>>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
>>>>> 
>>>>>> 
>>>>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
>>>> wrote:
>>>>>> 
>>>>>>> Hi,
>>>>>>> 
>>>>>>> In my mind it was kind of making more sense to start by keeping 4.6
>>>> into
>>>>>> a
>>>>>>> separate branch, enforce pull-requests and deploy the CI. smaller
>> step
>>>>>> but
>>>>>>> faster result, and from there, once we get stable with the CI
>>>>>> 
>>>>>> I hear you.
>>>>>> 
>>>>>> But we have waited for way too long for better CI. I see great efforts
>>>> in
>>>>>> that direction.
>>>>>> But I personally do not want to wait any longer to make a move.
>>>>>> 
>>>>>> We do open source, we should have fun, take risks, move fast, fail
>> fast,
>>>>>> recover etc….
>>>>>> 
>>>>>> so let's JFDI
>>>>>> 
>>>>>>> and git flow;
>>>>>>> move into master, do fastest releases cycle. If we consider we can do
>>>> all
>>>>>>> that starting in 4.6, I'm all for it!
>>>>>> 
>>>>>> 
>>>>>> Is there really a difference between creating a 4.6 and doing what you
>>>>>> say, and tagging master (start) and doing it on master leading to 4.6
>>>>>> release ?
>>>>>> 
>>>>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If
>> we
>>>>>> can improve a bit on the QA then we win.
>>>>>> Plus I think a different commit model will help a lot in quality.
>>>>>> 
>>>>>>> 
>>>>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
>>>>>>> 
>>>>>> 
>>>>>> We can do this proposal on email..and once we have consensus write it
>> up
>>>>>> for archive in the wiki.
>>>>>> If we move to the wiki now, this effort is going to die.
>>>>>> 
>>>>>>> Seb: doesn't the vote would confirm the consensus?
>>>>>>> 
>>>>>> 
>>>>>> if we have consensus no need for vote.
>>>>>> 
>>>>>>> Raja:  do we have any documentation somewhere on how to use,
>> contribute
>>>>>> to
>>>>>>> the smoke test? that could be our start for the CI tests?
>>>>>>> 
>>>>>>> 
>>>>>>> Cheers
>>>>>>> 
>>>>>>> 
>>>>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <
>> runseb@gmail.com>
>>>>>>> wrote:
>>>>>>> 
>>>>>>>> 
>>>>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>>>>>>>>> 
>>>>>>>>> After reviewing the history as mentioned by Daan, unless we propose
>>>>>>>>> and vote on a newer workflow model I think the best we can do is to
>>>>>>>>> simply be more strict about commits to master. They all need to be
>>>>>>>>> merges that have been tested against master before merge. This will
>>>> in
>>>>>>>>> theory make master more stable, but doesn't really change the
>>>> workflow
>>>>>>>>> we've already agreed upon and have been working under (although
>>>>>>>>> bugfixes sometimes were not coming in from branches, and
>>>> cherry-picked
>>>>>>>>> bugfixes from branches will need to go into a branch first, tested
>>>>>>>>> against master, and merged to master). We can essentially set a
>> date
>>>>>>>>> and do that any time, with some advance notice that direct commits
>>>>>>>>> will be reverted.
>>>>>>>> 
>>>>>>>> Yes +1.
>>>>>>>> 
>>>>>>>> -Set a date
>>>>>>>> -Tag master for reference
>>>>>>>> -Find a volunteer or two to RM master
>>>>>>>> -automatic revert on master if not from RM
>>>>>>>> -all commits to master come from PR, need clear review and green
>> tests
>>>>>>>> -harden master (basic QA process), release 4.6 as a tag on master
>>>>>>>> -all features and fixes need to be made on branches or forks and
>> onus
>>>> is
>>>>>>>> on devs to rebase to master
>>>>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
>>>>>> 4.4,
>>>>>>>> etc)
>>>>>>>> -from there forward only maintain a linear release through master
>>>>>>>> 
>>>>>>>> Feel free to add, tweak
>>>>>>>> 
>>>>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
>>>>>> members,
>>>>>>>> votes should be avoided at all cost, they mean that we do not have
>>>> clear
>>>>>>>> consensus.
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
>>>> runseb@gmail.com
>>>>>>> 
>>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
>>>>>>>>>>> 
>>>>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>>>>>>>>>>> Otherwise you should be able to do it cleanly.
>>>>>>>>>>> 
>>>>>>>>>>> There's a good opportunity to do this next release. Instead of
>>>>>>>>>>> creating a release branch, we freeze master and start creating
>> dev
>>>>>>>>>>> branches.
>>>>>>>>>> 
>>>>>>>>>> +1
>>>>>>>>>> 
>>>>>>>>>> This just amounts to treating master now like a release branch.
>>>>>> Getting
>>>>>>>> back to PL suggestion, that means
>>>>>>>>>> that any commit to master would be through a PR or MERGE request
>> on
>>>>>> the
>>>>>>>> ML. Anything else will be reverted by the RM.
>>>>>>>>>> 
>>>>>>>>>> Marcus, do you feel like writing down a little process for this
>> and
>>>>>>>> some dates that we can target.
>>>>>>>>>> It would be nice to do this for 4.6.
>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>>>>>>>> daan.hoogland@gmail.com> wrote:
>>>>>>>>>>>> We heavily invested in code now on master. Not looking forward
>> to
>>>>>>>>>>>> backporting that.
>>>>>>>>>>>> 
>>>>>>>>>>>> mobile dev with bilingual spelling checker used (read at your
>> own
>>>>>>>> risk)
>>>>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>>>>>>>>>>>> 
>>>>>>>>>>>>> Well, would we just swap the last release branch with master?
>>>>>> Master
>>>>>>>>>>>>> is the dev branch, and the last release is really what we have
>>>> as a
>>>>>>>>>>>>> stable branch.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>>>>>>>> daan.hoogland@gmail.com>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>>>>>>>> runseb@gmail.com>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
>>>>>> pdion@cloudops.com
>>>>>>>>> 
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
>>>>>>>> Release
>>>>>>>>>>>>>>>> management targeting the next 4.6 releases.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Quick bullet point discussions:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> ideas to change release planning
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
>>>> plugin
>>>>>>>>>>>>> involve
>>>>>>>>>>>>>>>> change on the core:
>>>>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
>>>>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
>>>>>> could
>>>>>>>>>>>>>>>> introduce issue the database schema.
>>>>>>>>>>>>>>>> - Database schema version should be different then the
>>>>>> application
>>>>>>>>>>>>>>>> version.
>>>>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and
>> trigger
>>>>>>>>>>>>> simulator
>>>>>>>>>>>>>>>> job on  PullRequest.
>>>>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our
>> current
>>>>>> way
>>>>>>>> of
>>>>>>>>>>>>>>>> supporting and back porting fixes to multiple release
>> (4.3.x,
>>>>>>>> 4.4.x,
>>>>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
>>>>>> release
>>>>>>>>>>>>> is low,
>>>>>>>>>>>>>>>> so that need to be improved.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> So, the main messages is that w'd like to improve the
>> release
>>>>>>>>>>>>> velocity, and
>>>>>>>>>>>>>>>> release branch stability.  so we would like to propose few
>>>>>> change
>>>>>>>> in
>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
>>>>>> merge
>>>>>>>>>>>>> request,
>>>>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that
>> pass
>>>>>>>> the PR
>>>>>>>>>>>>> would
>>>>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I think
>>>> we
>>>>>>>> pretty
>>>>>>>>>>>>> much
>>>>>>>>>>>>>>>> have everything in place to do that. At a first step we
>> would
>>>>>> use
>>>>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from
>> there.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> +1
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> We do need to realize what this means and be all fine with
>> it.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> It means that if someone who is not RM directly commits to
>> the
>>>>>>>> release
>>>>>>>>>>>>> branch, the commit will be reverted.
>>>>>>>>>>>>>>> And that from the beginning of the branching…
>>>>>>>>>>>>>> I agree and we can even go as far as reverting fixes that are
>>>>>>>>>>>>>> cherry-picked in favour of merged forward.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it
>>>> goes
>>>>>>>> far
>>>>>>>>>>>>> enough.
>>>>>>>>>>>>>> Agreed here as well but let's take the step while discussing
>>>>>> further
>>>>>>>>>>>>>> steps and not implement to much process as well
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> This still uses a paradigm where a release is made from a
>>>> release
>>>>>>>>>>>>> branch that was started from an unstable development branch.
>>>>>>>>>>>>>>> Hence you still need *extensive* QA.
>>>>>>>>>>>>>> The problem here is that there is no stable point to fork from
>>>> at
>>>>>>>> the
>>>>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps
>> in
>>>>>> that
>>>>>>>>>>>>>> direction.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> If we truly want to release faster, we need to release from
>> the
>>>>>>>> same
>>>>>>>>>>>>> QA’d branch time after time….a release needs to be based on a
>>>>>>>> previous
>>>>>>>>>>>>> release
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have
>> the
>>>>>>>> added
>>>>>>>>>>>>> benefit to not leave releases behind and have to focus on
>>>>>>>> backporting.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Please comments :-)
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> Daan
>>>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>> 
>>>>>> 
>>>> 
>>>> 
>> 
>> 


Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
+1 how about my proposal to have 6 RM and demand that at least 2 agree on
each PR?

Op ma 11 mei 2015 om 09:52 schreef sebgoa <ru...@gmail.com>:

>
> On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>
> wrote:
>
> > I can have a look at the merge of 4.5.1 and am willing to be one of the
> > RMs, not to be the RM!
> >
>
> I can RM as well.
>
> How about we lock down master on wednesday ?
> From that point forward we only take PR into master -either you or me- all
> other direct commits to master will be reverted !!!!
>
>
> -sebastien
>
>
>
> > Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
> >
> >> So no -1 on this.
> >>
> >> Do we have volunteers to RM 4.6 on the master branch ?
> >>
> >> I propose to set a date asap, tag master and tell everyone that starting
> >> from that tag all commits to master except from RM will be reverted.
> >>
> >> will need to make sure that all of 4.5.1 is in master
> >>
> >> -sebastien
> >>
> >>
> >> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
> wrote:
> >>
> >>> Let's not do more quality improvement proces but just improve quality.
> If
> >>> anybody want to add to the pages on the wiki, you're welkom but nobody
> >> did
> >>> for long time. +1 for the present state of Sebastien's views on things.
> >> We
> >>> can refine at any time.
> >>>
> >>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
> >>>
> >>>>
> >>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
> >> wrote:
> >>>>
> >>>>> Hi,
> >>>>>
> >>>>> In my mind it was kind of making more sense to start by keeping 4.6
> >> into
> >>>> a
> >>>>> separate branch, enforce pull-requests and deploy the CI. smaller
> step
> >>>> but
> >>>>> faster result, and from there, once we get stable with the CI
> >>>>
> >>>> I hear you.
> >>>>
> >>>> But we have waited for way too long for better CI. I see great efforts
> >> in
> >>>> that direction.
> >>>> But I personally do not want to wait any longer to make a move.
> >>>>
> >>>> We do open source, we should have fun, take risks, move fast, fail
> fast,
> >>>> recover etc….
> >>>>
> >>>> so let's JFDI
> >>>>
> >>>>> and git flow;
> >>>>> move into master, do fastest releases cycle. If we consider we can do
> >> all
> >>>>> that starting in 4.6, I'm all for it!
> >>>>
> >>>>
> >>>> Is there really a difference between creating a 4.6 and doing what you
> >>>> say, and tagging master (start) and doing it on master leading to 4.6
> >>>> release ?
> >>>>
> >>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If
> we
> >>>> can improve a bit on the QA then we win.
> >>>> Plus I think a different commit model will help a lot in quality.
> >>>>
> >>>>>
> >>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
> >>>>>
> >>>>
> >>>> We can do this proposal on email..and once we have consensus write it
> up
> >>>> for archive in the wiki.
> >>>> If we move to the wiki now, this effort is going to die.
> >>>>
> >>>>> Seb: doesn't the vote would confirm the consensus?
> >>>>>
> >>>>
> >>>> if we have consensus no need for vote.
> >>>>
> >>>>> Raja:  do we have any documentation somewhere on how to use,
> contribute
> >>>> to
> >>>>> the smoke test? that could be our start for the CI tests?
> >>>>>
> >>>>>
> >>>>> Cheers
> >>>>>
> >>>>>
> >>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <
> runseb@gmail.com>
> >>>>> wrote:
> >>>>>
> >>>>>>
> >>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
> >>>>>>>
> >>>>>>> After reviewing the history as mentioned by Daan, unless we propose
> >>>>>>> and vote on a newer workflow model I think the best we can do is to
> >>>>>>> simply be more strict about commits to master. They all need to be
> >>>>>>> merges that have been tested against master before merge. This will
> >> in
> >>>>>>> theory make master more stable, but doesn't really change the
> >> workflow
> >>>>>>> we've already agreed upon and have been working under (although
> >>>>>>> bugfixes sometimes were not coming in from branches, and
> >> cherry-picked
> >>>>>>> bugfixes from branches will need to go into a branch first, tested
> >>>>>>> against master, and merged to master). We can essentially set a
> date
> >>>>>>> and do that any time, with some advance notice that direct commits
> >>>>>>> will be reverted.
> >>>>>>
> >>>>>> Yes +1.
> >>>>>>
> >>>>>> -Set a date
> >>>>>> -Tag master for reference
> >>>>>> -Find a volunteer or two to RM master
> >>>>>> -automatic revert on master if not from RM
> >>>>>> -all commits to master come from PR, need clear review and green
> tests
> >>>>>> -harden master (basic QA process), release 4.6 as a tag on master
> >>>>>> -all features and fixes need to be made on branches or forks and
> onus
> >> is
> >>>>>> on devs to rebase to master
> >>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
> >>>> 4.4,
> >>>>>> etc)
> >>>>>> -from there forward only maintain a linear release through master
> >>>>>>
> >>>>>> Feel free to add, tweak
> >>>>>>
> >>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
> >>>> members,
> >>>>>> votes should be avoided at all cost, they mean that we do not have
> >> clear
> >>>>>> consensus.
> >>>>>>
> >>>>>>
> >>>>>>>
> >>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
> >> runseb@gmail.com
> >>>>>
> >>>>>> wrote:
> >>>>>>>>
> >>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
> >>>>>>>>>
> >>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
> >>>>>>>>> Otherwise you should be able to do it cleanly.
> >>>>>>>>>
> >>>>>>>>> There's a good opportunity to do this next release. Instead of
> >>>>>>>>> creating a release branch, we freeze master and start creating
> dev
> >>>>>>>>> branches.
> >>>>>>>>
> >>>>>>>> +1
> >>>>>>>>
> >>>>>>>> This just amounts to treating master now like a release branch.
> >>>> Getting
> >>>>>> back to PL suggestion, that means
> >>>>>>>> that any commit to master would be through a PR or MERGE request
> on
> >>>> the
> >>>>>> ML. Anything else will be reverted by the RM.
> >>>>>>>>
> >>>>>>>> Marcus, do you feel like writing down a little process for this
> and
> >>>>>> some dates that we can target.
> >>>>>>>> It would be nice to do this for 4.6.
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
> >>>>>> daan.hoogland@gmail.com> wrote:
> >>>>>>>>>> We heavily invested in code now on master. Not looking forward
> to
> >>>>>>>>>> backporting that.
> >>>>>>>>>>
> >>>>>>>>>> mobile dev with bilingual spelling checker used (read at your
> own
> >>>>>> risk)
> >>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
> >>>>>>>>>>
> >>>>>>>>>>> Well, would we just swap the last release branch with master?
> >>>> Master
> >>>>>>>>>>> is the dev branch, and the last release is really what we have
> >> as a
> >>>>>>>>>>> stable branch.
> >>>>>>>>>>>
> >>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
> >>>>>> daan.hoogland@gmail.com>
> >>>>>>>>>>> wrote:
> >>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
> >>>>>> runseb@gmail.com>
> >>>>>>>>>>> wrote:
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
> >>>> pdion@cloudops.com
> >>>>>>>
> >>>>>>>>>>> wrote:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
> >>>>>> Release
> >>>>>>>>>>>>>> management targeting the next 4.6 releases.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Quick bullet point discussions:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> ideas to change release planning
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
> >> plugin
> >>>>>>>>>>> involve
> >>>>>>>>>>>>>> change on the core:
> >>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
> >>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
> >>>> could
> >>>>>>>>>>>>>> introduce issue the database schema.
> >>>>>>>>>>>>>> - Database schema version should be different then the
> >>>> application
> >>>>>>>>>>>>>> version.
> >>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and
> trigger
> >>>>>>>>>>> simulator
> >>>>>>>>>>>>>> job on  PullRequest.
> >>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our
> current
> >>>> way
> >>>>>> of
> >>>>>>>>>>>>>> supporting and back porting fixes to multiple release
> (4.3.x,
> >>>>>> 4.4.x,
> >>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
> >>>> release
> >>>>>>>>>>> is low,
> >>>>>>>>>>>>>> so that need to be improved.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> So, the main messages is that w'd like to improve the
> release
> >>>>>>>>>>> velocity, and
> >>>>>>>>>>>>>> release branch stability.  so we would like to propose few
> >>>> change
> >>>>>> in
> >>>>>>>>>>> the
> >>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
> >>>> merge
> >>>>>>>>>>> request,
> >>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that
> pass
> >>>>>> the PR
> >>>>>>>>>>> would
> >>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I think
> >> we
> >>>>>> pretty
> >>>>>>>>>>> much
> >>>>>>>>>>>>>> have everything in place to do that. At a first step we
> would
> >>>> use
> >>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from
> there.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> +1
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> We do need to realize what this means and be all fine with
> it.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> It means that if someone who is not RM directly commits to
> the
> >>>>>> release
> >>>>>>>>>>> branch, the commit will be reverted.
> >>>>>>>>>>>>> And that from the beginning of the branching…
> >>>>>>>>>>>> I agree and we can even go as far as reverting fixes that are
> >>>>>>>>>>>> cherry-picked in favour of merged forward.
> >>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it
> >> goes
> >>>>>> far
> >>>>>>>>>>> enough.
> >>>>>>>>>>>> Agreed here as well but let's take the step while discussing
> >>>> further
> >>>>>>>>>>>> steps and not implement to much process as well
> >>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> This still uses a paradigm where a release is made from a
> >> release
> >>>>>>>>>>> branch that was started from an unstable development branch.
> >>>>>>>>>>>>> Hence you still need *extensive* QA.
> >>>>>>>>>>>> The problem here is that there is no stable point to fork from
> >> at
> >>>>>> the
> >>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps
> in
> >>>> that
> >>>>>>>>>>>> direction.
> >>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> If we truly want to release faster, we need to release from
> the
> >>>>>> same
> >>>>>>>>>>> QA’d branch time after time….a release needs to be based on a
> >>>>>> previous
> >>>>>>>>>>> release
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have
> the
> >>>>>> added
> >>>>>>>>>>> benefit to not leave releases behind and have to focus on
> >>>>>> backporting.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Please comments :-)
> >>>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> --
> >>>>>>>>>>>> Daan
> >>>>>>>>>>>
> >>>>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>>>
> >>
> >>
>
>

Re: [DISCUSS] 4.6 release management

Posted by sebgoa <ru...@gmail.com>.
On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com> wrote:

> I can have a look at the merge of 4.5.1 and am willing to be one of the
> RMs, not to be the RM!
> 

I can RM as well. 

How about we lock down master on wednesday ?
From that point forward we only take PR into master -either you or me- all other direct commits to master will be reverted !!!!


-sebastien



> Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
> 
>> So no -1 on this.
>> 
>> Do we have volunteers to RM 4.6 on the master branch ?
>> 
>> I propose to set a date asap, tag master and tell everyone that starting
>> from that tag all commits to master except from RM will be reverted.
>> 
>> will need to make sure that all of 4.5.1 is in master
>> 
>> -sebastien
>> 
>> 
>> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com> wrote:
>> 
>>> Let's not do more quality improvement proces but just improve quality. If
>>> anybody want to add to the pages on the wiki, you're welkom but nobody
>> did
>>> for long time. +1 for the present state of Sebastien's views on things.
>> We
>>> can refine at any time.
>>> 
>>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
>>> 
>>>> 
>>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
>> wrote:
>>>> 
>>>>> Hi,
>>>>> 
>>>>> In my mind it was kind of making more sense to start by keeping 4.6
>> into
>>>> a
>>>>> separate branch, enforce pull-requests and deploy the CI. smaller step
>>>> but
>>>>> faster result, and from there, once we get stable with the CI
>>>> 
>>>> I hear you.
>>>> 
>>>> But we have waited for way too long for better CI. I see great efforts
>> in
>>>> that direction.
>>>> But I personally do not want to wait any longer to make a move.
>>>> 
>>>> We do open source, we should have fun, take risks, move fast, fail fast,
>>>> recover etc….
>>>> 
>>>> so let's JFDI
>>>> 
>>>>> and git flow;
>>>>> move into master, do fastest releases cycle. If we consider we can do
>> all
>>>>> that starting in 4.6, I'm all for it!
>>>> 
>>>> 
>>>> Is there really a difference between creating a 4.6 and doing what you
>>>> say, and tagging master (start) and doing it on master leading to 4.6
>>>> release ?
>>>> 
>>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If we
>>>> can improve a bit on the QA then we win.
>>>> Plus I think a different commit model will help a lot in quality.
>>>> 
>>>>> 
>>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
>>>>> 
>>>> 
>>>> We can do this proposal on email..and once we have consensus write it up
>>>> for archive in the wiki.
>>>> If we move to the wiki now, this effort is going to die.
>>>> 
>>>>> Seb: doesn't the vote would confirm the consensus?
>>>>> 
>>>> 
>>>> if we have consensus no need for vote.
>>>> 
>>>>> Raja:  do we have any documentation somewhere on how to use, contribute
>>>> to
>>>>> the smoke test? that could be our start for the CI tests?
>>>>> 
>>>>> 
>>>>> Cheers
>>>>> 
>>>>> 
>>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <ru...@gmail.com>
>>>>> wrote:
>>>>> 
>>>>>> 
>>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>>>>>>> 
>>>>>>> After reviewing the history as mentioned by Daan, unless we propose
>>>>>>> and vote on a newer workflow model I think the best we can do is to
>>>>>>> simply be more strict about commits to master. They all need to be
>>>>>>> merges that have been tested against master before merge. This will
>> in
>>>>>>> theory make master more stable, but doesn't really change the
>> workflow
>>>>>>> we've already agreed upon and have been working under (although
>>>>>>> bugfixes sometimes were not coming in from branches, and
>> cherry-picked
>>>>>>> bugfixes from branches will need to go into a branch first, tested
>>>>>>> against master, and merged to master). We can essentially set a date
>>>>>>> and do that any time, with some advance notice that direct commits
>>>>>>> will be reverted.
>>>>>> 
>>>>>> Yes +1.
>>>>>> 
>>>>>> -Set a date
>>>>>> -Tag master for reference
>>>>>> -Find a volunteer or two to RM master
>>>>>> -automatic revert on master if not from RM
>>>>>> -all commits to master come from PR, need clear review and green tests
>>>>>> -harden master (basic QA process), release 4.6 as a tag on master
>>>>>> -all features and fixes need to be made on branches or forks and onus
>> is
>>>>>> on devs to rebase to master
>>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
>>>> 4.4,
>>>>>> etc)
>>>>>> -from there forward only maintain a linear release through master
>>>>>> 
>>>>>> Feel free to add, tweak
>>>>>> 
>>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
>>>> members,
>>>>>> votes should be avoided at all cost, they mean that we do not have
>> clear
>>>>>> consensus.
>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
>> runseb@gmail.com
>>>>> 
>>>>>> wrote:
>>>>>>>> 
>>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
>>>>>>>>> 
>>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>>>>>>>>> Otherwise you should be able to do it cleanly.
>>>>>>>>> 
>>>>>>>>> There's a good opportunity to do this next release. Instead of
>>>>>>>>> creating a release branch, we freeze master and start creating dev
>>>>>>>>> branches.
>>>>>>>> 
>>>>>>>> +1
>>>>>>>> 
>>>>>>>> This just amounts to treating master now like a release branch.
>>>> Getting
>>>>>> back to PL suggestion, that means
>>>>>>>> that any commit to master would be through a PR or MERGE request on
>>>> the
>>>>>> ML. Anything else will be reverted by the RM.
>>>>>>>> 
>>>>>>>> Marcus, do you feel like writing down a little process for this and
>>>>>> some dates that we can target.
>>>>>>>> It would be nice to do this for 4.6.
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>>>>>> daan.hoogland@gmail.com> wrote:
>>>>>>>>>> We heavily invested in code now on master. Not looking forward to
>>>>>>>>>> backporting that.
>>>>>>>>>> 
>>>>>>>>>> mobile dev with bilingual spelling checker used (read at your own
>>>>>> risk)
>>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>>>>>>>>>> 
>>>>>>>>>>> Well, would we just swap the last release branch with master?
>>>> Master
>>>>>>>>>>> is the dev branch, and the last release is really what we have
>> as a
>>>>>>>>>>> stable branch.
>>>>>>>>>>> 
>>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>>>>>> daan.hoogland@gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>>>>>> runseb@gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
>>>> pdion@cloudops.com
>>>>>>> 
>>>>>>>>>>> wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
>>>>>> Release
>>>>>>>>>>>>>> management targeting the next 4.6 releases.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Quick bullet point discussions:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> ideas to change release planning
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
>> plugin
>>>>>>>>>>> involve
>>>>>>>>>>>>>> change on the core:
>>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
>>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
>>>> could
>>>>>>>>>>>>>> introduce issue the database schema.
>>>>>>>>>>>>>> - Database schema version should be different then the
>>>> application
>>>>>>>>>>>>>> version.
>>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
>>>>>>>>>>> simulator
>>>>>>>>>>>>>> job on  PullRequest.
>>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our current
>>>> way
>>>>>> of
>>>>>>>>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
>>>>>> 4.4.x,
>>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
>>>> release
>>>>>>>>>>> is low,
>>>>>>>>>>>>>> so that need to be improved.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> So, the main messages is that w'd like to improve the release
>>>>>>>>>>> velocity, and
>>>>>>>>>>>>>> release branch stability.  so we would like to propose few
>>>> change
>>>>>> in
>>>>>>>>>>> the
>>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
>>>> merge
>>>>>>>>>>> request,
>>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that pass
>>>>>> the PR
>>>>>>>>>>> would
>>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I think
>> we
>>>>>> pretty
>>>>>>>>>>> much
>>>>>>>>>>>>>> have everything in place to do that. At a first step we would
>>>> use
>>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from there.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> +1
>>>>>>>>>>>>> 
>>>>>>>>>>>>> We do need to realize what this means and be all fine with it.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> It means that if someone who is not RM directly commits to the
>>>>>> release
>>>>>>>>>>> branch, the commit will be reverted.
>>>>>>>>>>>>> And that from the beginning of the branching…
>>>>>>>>>>>> I agree and we can even go as far as reverting fixes that are
>>>>>>>>>>>> cherry-picked in favour of merged forward.
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it
>> goes
>>>>>> far
>>>>>>>>>>> enough.
>>>>>>>>>>>> Agreed here as well but let's take the step while discussing
>>>> further
>>>>>>>>>>>> steps and not implement to much process as well
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> This still uses a paradigm where a release is made from a
>> release
>>>>>>>>>>> branch that was started from an unstable development branch.
>>>>>>>>>>>>> Hence you still need *extensive* QA.
>>>>>>>>>>>> The problem here is that there is no stable point to fork from
>> at
>>>>>> the
>>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps in
>>>> that
>>>>>>>>>>>> direction.
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> If we truly want to release faster, we need to release from the
>>>>>> same
>>>>>>>>>>> QA’d branch time after time….a release needs to be based on a
>>>>>> previous
>>>>>>>>>>> release
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have the
>>>>>> added
>>>>>>>>>>> benefit to not leave releases behind and have to focus on
>>>>>> backporting.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Please comments :-)
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> --
>>>>>>>>>>>> Daan
>>>>>>>>>>> 
>>>>>>>> 
>>>>>> 
>>>>>> 
>>>> 
>>>> 
>> 
>> 


Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
I just did a test merge:
~/cloudstack/cloudstack (master)> git merge --no-ff --edit -s ours 4.5
gives a clean merge of the last bits from 4.5 and merges without conflicts

I will rerun a merge and push if the RC passes

Op wo 6 mei 2015 om 10:59 schreef Daan Hoogland <da...@gmail.com>:

> I can have a look at the merge of 4.5.1 and am willing to be one of the
> RMs, not to be the RM!
>
> Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
>
> So no -1 on this.
>>
>> Do we have volunteers to RM 4.6 on the master branch ?
>>
>> I propose to set a date asap, tag master and tell everyone that starting
>> from that tag all commits to master except from RM will be reverted.
>>
>> will need to make sure that all of 4.5.1 is in master
>>
>> -sebastien
>>
>>
>> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
>> wrote:
>>
>> > Let's not do more quality improvement proces but just improve quality.
>> If
>> > anybody want to add to the pages on the wiki, you're welkom but nobody
>> did
>> > for long time. +1 for the present state of Sebastien's views on things.
>> We
>> > can refine at any time.
>> >
>> > Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
>> >
>> >>
>> >> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
>> wrote:
>> >>
>> >>> Hi,
>> >>>
>> >>> In my mind it was kind of making more sense to start by keeping 4.6
>> into
>> >> a
>> >>> separate branch, enforce pull-requests and deploy the CI. smaller step
>> >> but
>> >>> faster result, and from there, once we get stable with the CI
>> >>
>> >> I hear you.
>> >>
>> >> But we have waited for way too long for better CI. I see great efforts
>> in
>> >> that direction.
>> >> But I personally do not want to wait any longer to make a move.
>> >>
>> >> We do open source, we should have fun, take risks, move fast, fail
>> fast,
>> >> recover etc….
>> >>
>> >> so let's JFDI
>> >>
>> >>> and git flow;
>> >>> move into master, do fastest releases cycle. If we consider we can do
>> all
>> >>> that starting in 4.6, I'm all for it!
>> >>
>> >>
>> >> Is there really a difference between creating a 4.6 and doing what you
>> >> say, and tagging master (start) and doing it on master leading to 4.6
>> >> release ?
>> >>
>> >> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If
>> we
>> >> can improve a bit on the QA then we win.
>> >> Plus I think a different commit model will help a lot in quality.
>> >>
>> >>>
>> >>> Marcus: are you preparing a proposal on this? wiki page? I can help
>> >>>
>> >>
>> >> We can do this proposal on email..and once we have consensus write it
>> up
>> >> for archive in the wiki.
>> >> If we move to the wiki now, this effort is going to die.
>> >>
>> >>> Seb: doesn't the vote would confirm the consensus?
>> >>>
>> >>
>> >> if we have consensus no need for vote.
>> >>
>> >>> Raja:  do we have any documentation somewhere on how to use,
>> contribute
>> >> to
>> >>> the smoke test? that could be our start for the CI tests?
>> >>>
>> >>>
>> >>> Cheers
>> >>>
>> >>>
>> >>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <runseb@gmail.com
>> >
>> >>> wrote:
>> >>>
>> >>>>
>> >>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>> >>>>>
>> >>>>> After reviewing the history as mentioned by Daan, unless we propose
>> >>>>> and vote on a newer workflow model I think the best we can do is to
>> >>>>> simply be more strict about commits to master. They all need to be
>> >>>>> merges that have been tested against master before merge. This will
>> in
>> >>>>> theory make master more stable, but doesn't really change the
>> workflow
>> >>>>> we've already agreed upon and have been working under (although
>> >>>>> bugfixes sometimes were not coming in from branches, and
>> cherry-picked
>> >>>>> bugfixes from branches will need to go into a branch first, tested
>> >>>>> against master, and merged to master). We can essentially set a date
>> >>>>> and do that any time, with some advance notice that direct commits
>> >>>>> will be reverted.
>> >>>>
>> >>>> Yes +1.
>> >>>>
>> >>>> -Set a date
>> >>>> -Tag master for reference
>> >>>> -Find a volunteer or two to RM master
>> >>>> -automatic revert on master if not from RM
>> >>>> -all commits to master come from PR, need clear review and green
>> tests
>> >>>> -harden master (basic QA process), release 4.6 as a tag on master
>> >>>> -all features and fixes need to be made on branches or forks and
>> onus is
>> >>>> on devs to rebase to master
>> >>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
>> >> 4.4,
>> >>>> etc)
>> >>>> -from there forward only maintain a linear release through master
>> >>>>
>> >>>> Feel free to add, tweak
>> >>>>
>> >>>> PS: No need to vote if we have consensus. Taking a clue from ASF
>> >> members,
>> >>>> votes should be avoided at all cost, they mean that we do not have
>> clear
>> >>>> consensus.
>> >>>>
>> >>>>
>> >>>>>
>> >>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
>> runseb@gmail.com
>> >>>
>> >>>> wrote:
>> >>>>>>
>> >>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
>> >>>>>>>
>> >>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>> >>>>>>> Otherwise you should be able to do it cleanly.
>> >>>>>>>
>> >>>>>>> There's a good opportunity to do this next release. Instead of
>> >>>>>>> creating a release branch, we freeze master and start creating dev
>> >>>>>>> branches.
>> >>>>>>
>> >>>>>> +1
>> >>>>>>
>> >>>>>> This just amounts to treating master now like a release branch.
>> >> Getting
>> >>>> back to PL suggestion, that means
>> >>>>>> that any commit to master would be through a PR or MERGE request on
>> >> the
>> >>>> ML. Anything else will be reverted by the RM.
>> >>>>>>
>> >>>>>> Marcus, do you feel like writing down a little process for this and
>> >>>> some dates that we can target.
>> >>>>>> It would be nice to do this for 4.6.
>> >>>>>>
>> >>>>>>>
>> >>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>> >>>> daan.hoogland@gmail.com> wrote:
>> >>>>>>>> We heavily invested in code now on master. Not looking forward to
>> >>>>>>>> backporting that.
>> >>>>>>>>
>> >>>>>>>> mobile dev with bilingual spelling checker used (read at your own
>> >>>> risk)
>> >>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>> >>>>>>>>
>> >>>>>>>>> Well, would we just swap the last release branch with master?
>> >> Master
>> >>>>>>>>> is the dev branch, and the last release is really what we have
>> as a
>> >>>>>>>>> stable branch.
>> >>>>>>>>>
>> >>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>> >>>> daan.hoogland@gmail.com>
>> >>>>>>>>> wrote:
>> >>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>> >>>> runseb@gmail.com>
>> >>>>>>>>> wrote:
>> >>>>>>>>>>>
>> >>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
>> >> pdion@cloudops.com
>> >>>>>
>> >>>>>>>>> wrote:
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
>> >>>> Release
>> >>>>>>>>>>>> management targeting the next 4.6 releases.
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> Quick bullet point discussions:
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> ideas to change release planning
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> - Plugin contribution is complicated because often  a new
>> plugin
>> >>>>>>>>> involve
>> >>>>>>>>>>>> change on the core:
>> >>>>>>>>>>>>  - ex: storage plugin involve changes on Hypervisor code
>> >>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
>> >> could
>> >>>>>>>>>>>> introduce issue the database schema.
>> >>>>>>>>>>>> - Database schema version should be different then the
>> >> application
>> >>>>>>>>>>>> version.
>> >>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
>> >>>>>>>>> simulator
>> >>>>>>>>>>>> job on  PullRequest.
>> >>>>>>>>>>>> - Some people (I'm part of them) are concerned on our current
>> >> way
>> >>>> of
>> >>>>>>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
>> >>>> 4.4.x,
>> >>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
>> >> release
>> >>>>>>>>> is low,
>> >>>>>>>>>>>> so that need to be improved.
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> So, the main messages is that w'd like to improve the release
>> >>>>>>>>> velocity, and
>> >>>>>>>>>>>> release branch stability.  so we would like to propose few
>> >> change
>> >>>> in
>> >>>>>>>>> the
>> >>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
>> >> merge
>> >>>>>>>>> request,
>> >>>>>>>>>>>> which would trigger a simulator job, ideally only if that
>> pass
>> >>>> the PR
>> >>>>>>>>> would
>> >>>>>>>>>>>> be accepted and automatically merged.  At this time, I think
>> we
>> >>>> pretty
>> >>>>>>>>> much
>> >>>>>>>>>>>> have everything in place to do that. At a first step we would
>> >> use
>> >>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from there.
>> >>>>>>>>>>>
>> >>>>>>>>>>> +1
>> >>>>>>>>>>>
>> >>>>>>>>>>> We do need to realize what this means and be all fine with it.
>> >>>>>>>>>>>
>> >>>>>>>>>>> It means that if someone who is not RM directly commits to the
>> >>>> release
>> >>>>>>>>> branch, the commit will be reverted.
>> >>>>>>>>>>> And that from the beginning of the branching…
>> >>>>>>>>>> I agree and we can even go as far as reverting fixes that are
>> >>>>>>>>>> cherry-picked in favour of merged forward.
>> >>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it
>> goes
>> >>>> far
>> >>>>>>>>> enough.
>> >>>>>>>>>> Agreed here as well but let's take the step while discussing
>> >> further
>> >>>>>>>>>> steps and not implement to much process as well
>> >>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>> This still uses a paradigm where a release is made from a
>> release
>> >>>>>>>>> branch that was started from an unstable development branch.
>> >>>>>>>>>>> Hence you still need *extensive* QA.
>> >>>>>>>>>> The problem here is that there is no stable point to fork from
>> at
>> >>>> the
>> >>>>>>>>>> moment. We will get there and we shouldn't stop taking steps in
>> >> that
>> >>>>>>>>>> direction.
>> >>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>> If we truly want to release faster, we need to release from
>> the
>> >>>> same
>> >>>>>>>>> QA’d branch time after time….a release needs to be based on a
>> >>>> previous
>> >>>>>>>>> release
>> >>>>>>>>>>>
>> >>>>>>>>>>> Basically, we need a rolling release cycle. That will have the
>> >>>> added
>> >>>>>>>>> benefit to not leave releases behind and have to focus on
>> >>>> backporting.
>> >>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> Please comments :-)
>> >>>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>> --
>> >>>>>>>>>> Daan
>> >>>>>>>>>
>> >>>>>>
>> >>>>
>> >>>>
>> >>
>> >>
>>
>>

Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
Will do tomorrow

On Wed, 6 May 2015 17:27 Rohit Yadav <bh...@apache.org> wrote:

> Hi Daan,
>
> I've merged awsapi after it passed travisCI tests and packaging worked
> (Here's a test repo without awsapi package:
> http://packages.bhaisaab.org/cloudstack/nukeawsapi/).
> Please go ahead with merging 4.5 on master. Let me know you've time
> and bandwidth to do it otherwise I can help with that as well.
>
> Regards.
>
> On Wed, May 6, 2015 at 4:00 PM, Daan Hoogland <da...@gmail.com>
> wrote:
> > Fcourse
> >
> >
> > On Wed, 6 May 2015 15:02 Sebastien Goasguen <ru...@gmail.com> wrote:
> >>
> >> Can you sync with Rohit, who is merging the noawsapi stuff as well..
> >>
> >> > On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>
> >> > wrote:
> >> >
> >> > I can have a look at the merge of 4.5.1 and am willing to be one of
> the
> >> > RMs, not to be the RM!
> >> >
> >> > Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
> >> >
> >> >> So no -1 on this.
> >> >>
> >> >> Do we have volunteers to RM 4.6 on the master branch ?
> >> >>
> >> >> I propose to set a date asap, tag master and tell everyone that
> >> >> starting
> >> >> from that tag all commits to master except from RM will be reverted.
> >> >>
> >> >> will need to make sure that all of 4.5.1 is in master
> >> >>
> >> >> -sebastien
> >> >>
> >> >>
> >> >> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
> >> >> wrote:
> >> >>
> >> >>> Let's not do more quality improvement proces but just improve
> quality.
> >> >>> If
> >> >>> anybody want to add to the pages on the wiki, you're welkom but
> nobody
> >> >> did
> >> >>> for long time. +1 for the present state of Sebastien's views on
> >> >>> things.
> >> >> We
> >> >>> can refine at any time.
> >> >>>
> >> >>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
> >> >>>
> >> >>>>
> >> >>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
> >> >> wrote:
> >> >>>>
> >> >>>>> Hi,
> >> >>>>>
> >> >>>>> In my mind it was kind of making more sense to start by keeping
> 4.6
> >> >> into
> >> >>>> a
> >> >>>>> separate branch, enforce pull-requests and deploy the CI. smaller
> >> >>>>> step
> >> >>>> but
> >> >>>>> faster result, and from there, once we get stable with the CI
> >> >>>>
> >> >>>> I hear you.
> >> >>>>
> >> >>>> But we have waited for way too long for better CI. I see great
> >> >>>> efforts
> >> >> in
> >> >>>> that direction.
> >> >>>> But I personally do not want to wait any longer to make a move.
> >> >>>>
> >> >>>> We do open source, we should have fun, take risks, move fast, fail
> >> >>>> fast,
> >> >>>> recover etc....
> >> >>>>
> >> >>>> so let's JFDI
> >> >>>>
> >> >>>>> and git flow;
> >> >>>>> move into master, do fastest releases cycle. If we consider we can
> >> >>>>> do
> >> >> all
> >> >>>>> that starting in 4.6, I'm all for it!
> >> >>>>
> >> >>>>
> >> >>>> Is there really a difference between creating a 4.6 and doing what
> >> >>>> you
> >> >>>> say, and tagging master (start) and doing it on master leading to
> 4.6
> >> >>>> release ?
> >> >>>>
> >> >>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5.
> If
> >> >>>> we
> >> >>>> can improve a bit on the QA then we win.
> >> >>>> Plus I think a different commit model will help a lot in quality.
> >> >>>>
> >> >>>>>
> >> >>>>> Marcus: are you preparing a proposal on this? wiki page? I can
> help
> >> >>>>>
> >> >>>>
> >> >>>> We can do this proposal on email..and once we have consensus write
> it
> >> >>>> up
> >> >>>> for archive in the wiki.
> >> >>>> If we move to the wiki now, this effort is going to die.
> >> >>>>
> >> >>>>> Seb: doesn't the vote would confirm the consensus?
> >> >>>>>
> >> >>>>
> >> >>>> if we have consensus no need for vote.
> >> >>>>
> >> >>>>> Raja:  do we have any documentation somewhere on how to use,
> >> >>>>> contribute
> >> >>>> to
> >> >>>>> the smoke test? that could be our start for the CI tests?
> >> >>>>>
> >> >>>>>
> >> >>>>> Cheers
> >> >>>>>
> >> >>>>>
> >> >>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen
> >> >>>>> <ru...@gmail.com>
> >> >>>>> wrote:
> >> >>>>>
> >> >>>>>>
> >> >>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com>
> wrote:
> >> >>>>>>>
> >> >>>>>>> After reviewing the history as mentioned by Daan, unless we
> >> >>>>>>> propose
> >> >>>>>>> and vote on a newer workflow model I think the best we can do is
> >> >>>>>>> to
> >> >>>>>>> simply be more strict about commits to master. They all need to
> be
> >> >>>>>>> merges that have been tested against master before merge. This
> >> >>>>>>> will
> >> >> in
> >> >>>>>>> theory make master more stable, but doesn't really change the
> >> >> workflow
> >> >>>>>>> we've already agreed upon and have been working under (although
> >> >>>>>>> bugfixes sometimes were not coming in from branches, and
> >> >> cherry-picked
> >> >>>>>>> bugfixes from branches will need to go into a branch first,
> tested
> >> >>>>>>> against master, and merged to master). We can essentially set a
> >> >>>>>>> date
> >> >>>>>>> and do that any time, with some advance notice that direct
> commits
> >> >>>>>>> will be reverted.
> >> >>>>>>
> >> >>>>>> Yes +1.
> >> >>>>>>
> >> >>>>>> -Set a date
> >> >>>>>> -Tag master for reference
> >> >>>>>> -Find a volunteer or two to RM master
> >> >>>>>> -automatic revert on master if not from RM
> >> >>>>>> -all commits to master come from PR, need clear review and green
> >> >>>>>> tests
> >> >>>>>> -harden master (basic QA process), release 4.6 as a tag on master
> >> >>>>>> -all features and fixes need to be made on branches or forks and
> >> >>>>>> onus
> >> >> is
> >> >>>>>> on devs to rebase to master
> >> >>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from
> >> >>>>>> 4.3,
> >> >>>> 4.4,
> >> >>>>>> etc)
> >> >>>>>> -from there forward only maintain a linear release through master
> >> >>>>>>
> >> >>>>>> Feel free to add, tweak
> >> >>>>>>
> >> >>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
> >> >>>> members,
> >> >>>>>> votes should be avoided at all cost, they mean that we do not
> have
> >> >> clear
> >> >>>>>> consensus.
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>>
> >> >>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
> >> >> runseb@gmail.com
> >> >>>>>
> >> >>>>>> wrote:
> >> >>>>>>>>
> >> >>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com>
> wrote:
> >> >>>>>>>>>
> >> >>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
> >> >>>>>>>>> Otherwise you should be able to do it cleanly.
> >> >>>>>>>>>
> >> >>>>>>>>> There's a good opportunity to do this next release. Instead of
> >> >>>>>>>>> creating a release branch, we freeze master and start creating
> >> >>>>>>>>> dev
> >> >>>>>>>>> branches.
> >> >>>>>>>>
> >> >>>>>>>> +1
> >> >>>>>>>>
> >> >>>>>>>> This just amounts to treating master now like a release branch.
> >> >>>> Getting
> >> >>>>>> back to PL suggestion, that means
> >> >>>>>>>> that any commit to master would be through a PR or MERGE
> request
> >> >>>>>>>> on
> >> >>>> the
> >> >>>>>> ML. Anything else will be reverted by the RM.
> >> >>>>>>>>
> >> >>>>>>>> Marcus, do you feel like writing down a little process for this
> >> >>>>>>>> and
> >> >>>>>> some dates that we can target.
> >> >>>>>>>> It would be nice to do this for 4.6.
> >> >>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
> >> >>>>>> daan.hoogland@gmail.com> wrote:
> >> >>>>>>>>>> We heavily invested in code now on master. Not looking
> forward
> >> >>>>>>>>>> to
> >> >>>>>>>>>> backporting that.
> >> >>>>>>>>>>
> >> >>>>>>>>>> mobile dev with bilingual spelling checker used (read at your
> >> >>>>>>>>>> own
> >> >>>>>> risk)
> >> >>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <shadowsor@gmail.com
> >:
> >> >>>>>>>>>>
> >> >>>>>>>>>>> Well, would we just swap the last release branch with
> master?
> >> >>>> Master
> >> >>>>>>>>>>> is the dev branch, and the last release is really what we
> have
> >> >> as a
> >> >>>>>>>>>>> stable branch.
> >> >>>>>>>>>>>
> >> >>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
> >> >>>>>> daan.hoogland@gmail.com>
> >> >>>>>>>>>>> wrote:
> >> >>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
> >> >>>>>> runseb@gmail.com>
> >> >>>>>>>>>>> wrote:
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
> >> >>>> pdion@cloudops.com
> >> >>>>>>>
> >> >>>>>>>>>>> wrote:
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table
> about
> >> >>>>>> Release
> >> >>>>>>>>>>>>>> management targeting the next 4.6 releases.
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> Quick bullet point discussions:
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> ideas to change release planning
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
> >> >> plugin
> >> >>>>>>>>>>> involve
> >> >>>>>>>>>>>>>> change on the core:
> >> >>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
> >> >>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model
> >> >>>>>>>>>>>>>> which
> >> >>>> could
> >> >>>>>>>>>>>>>> introduce issue the database schema.
> >> >>>>>>>>>>>>>> - Database schema version should be different then the
> >> >>>> application
> >> >>>>>>>>>>>>>> version.
> >> >>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and
> >> >>>>>>>>>>>>>> trigger
> >> >>>>>>>>>>> simulator
> >> >>>>>>>>>>>>>> job on  PullRequest.
> >> >>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our
> >> >>>>>>>>>>>>>> current
> >> >>>> way
> >> >>>>>> of
> >> >>>>>>>>>>>>>> supporting and back porting fixes to multiple release
> >> >>>>>>>>>>>>>> (4.3.x,
> >> >>>>>> 4.4.x,
> >> >>>>>>>>>>>>>> 4.5.x). But the current level of confidence against
> latest
> >> >>>> release
> >> >>>>>>>>>>> is low,
> >> >>>>>>>>>>>>>> so that need to be improved.
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> So, the main messages is that w'd like to improve the
> >> >>>>>>>>>>>>>> release
> >> >>>>>>>>>>> velocity, and
> >> >>>>>>>>>>>>>> release branch stability.  so we would like to propose
> few
> >> >>>> change
> >> >>>>>> in
> >> >>>>>>>>>>> the
> >> >>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request
> or
> >> >>>> merge
> >> >>>>>>>>>>> request,
> >> >>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that
> >> >>>>>>>>>>>>>> pass
> >> >>>>>> the PR
> >> >>>>>>>>>>> would
> >> >>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I
> >> >>>>>>>>>>>>>> think
> >> >> we
> >> >>>>>> pretty
> >> >>>>>>>>>>> much
> >> >>>>>>>>>>>>>> have everything in place to do that. At a first step we
> >> >>>>>>>>>>>>>> would
> >> >>>> use
> >> >>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from
> >> >>>>>>>>>>>>>> there.
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> +1
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> We do need to realize what this means and be all fine with
> >> >>>>>>>>>>>>> it.
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> It means that if someone who is not RM directly commits to
> >> >>>>>>>>>>>>> the
> >> >>>>>> release
> >> >>>>>>>>>>> branch, the commit will be reverted.
> >> >>>>>>>>>>>>> And that from the beginning of the branching...
> >> >>>>>>>>>>>> I agree and we can even go as far as reverting fixes that
> are
> >> >>>>>>>>>>>> cherry-picked in favour of merged forward.
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> IMHO, I think this would be a good step but I don't think
> it
> >> >> goes
> >> >>>>>> far
> >> >>>>>>>>>>> enough.
> >> >>>>>>>>>>>> Agreed here as well but let's take the step while
> discussing
> >> >>>> further
> >> >>>>>>>>>>>> steps and not implement to much process as well
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> This still uses a paradigm where a release is made from a
> >> >> release
> >> >>>>>>>>>>> branch that was started from an unstable development branch.
> >> >>>>>>>>>>>>> Hence you still need *extensive* QA.
> >> >>>>>>>>>>>> The problem here is that there is no stable point to fork
> >> >>>>>>>>>>>> from
> >> >> at
> >> >>>>>> the
> >> >>>>>>>>>>>> moment. We will get there and we shouldn't stop taking
> steps
> >> >>>>>>>>>>>> in
> >> >>>> that
> >> >>>>>>>>>>>> direction.
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> If we truly want to release faster, we need to release
> from
> >> >>>>>>>>>>>>> the
> >> >>>>>> same
> >> >>>>>>>>>>> QA'd branch time after time....a release needs to be based
> on a
> >> >>>>>> previous
> >> >>>>>>>>>>> release
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have
> >> >>>>>>>>>>>>> the
> >> >>>>>> added
> >> >>>>>>>>>>> benefit to not leave releases behind and have to focus on
> >> >>>>>> backporting.
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>>>>>>> Please comments :-)
> >> >>>>>>>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>>>>> --
> >> >>>>>>>>>>>> Daan
> >> >>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>
> >> >>>>
> >> >>
> >> >>
> >>
> >
>

Re: [DISCUSS] 4.6 release management

Posted by Rohit Yadav <bh...@apache.org>.
Hi Daan,

I've merged awsapi after it passed travisCI tests and packaging worked
(Here's a test repo without awsapi package:
http://packages.bhaisaab.org/cloudstack/nukeawsapi/).
Please go ahead with merging 4.5 on master. Let me know you've time
and bandwidth to do it otherwise I can help with that as well.

Regards.

On Wed, May 6, 2015 at 4:00 PM, Daan Hoogland <da...@gmail.com> wrote:
> Fcourse
>
>
> On Wed, 6 May 2015 15:02 Sebastien Goasguen <ru...@gmail.com> wrote:
>>
>> Can you sync with Rohit, who is merging the noawsapi stuff as well..
>>
>> > On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>
>> > wrote:
>> >
>> > I can have a look at the merge of 4.5.1 and am willing to be one of the
>> > RMs, not to be the RM!
>> >
>> > Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
>> >
>> >> So no -1 on this.
>> >>
>> >> Do we have volunteers to RM 4.6 on the master branch ?
>> >>
>> >> I propose to set a date asap, tag master and tell everyone that
>> >> starting
>> >> from that tag all commits to master except from RM will be reverted.
>> >>
>> >> will need to make sure that all of 4.5.1 is in master
>> >>
>> >> -sebastien
>> >>
>> >>
>> >> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
>> >> wrote:
>> >>
>> >>> Let's not do more quality improvement proces but just improve quality.
>> >>> If
>> >>> anybody want to add to the pages on the wiki, you're welkom but nobody
>> >> did
>> >>> for long time. +1 for the present state of Sebastien's views on
>> >>> things.
>> >> We
>> >>> can refine at any time.
>> >>>
>> >>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
>> >>>
>> >>>>
>> >>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
>> >> wrote:
>> >>>>
>> >>>>> Hi,
>> >>>>>
>> >>>>> In my mind it was kind of making more sense to start by keeping 4.6
>> >> into
>> >>>> a
>> >>>>> separate branch, enforce pull-requests and deploy the CI. smaller
>> >>>>> step
>> >>>> but
>> >>>>> faster result, and from there, once we get stable with the CI
>> >>>>
>> >>>> I hear you.
>> >>>>
>> >>>> But we have waited for way too long for better CI. I see great
>> >>>> efforts
>> >> in
>> >>>> that direction.
>> >>>> But I personally do not want to wait any longer to make a move.
>> >>>>
>> >>>> We do open source, we should have fun, take risks, move fast, fail
>> >>>> fast,
>> >>>> recover etc....
>> >>>>
>> >>>> so let's JFDI
>> >>>>
>> >>>>> and git flow;
>> >>>>> move into master, do fastest releases cycle. If we consider we can
>> >>>>> do
>> >> all
>> >>>>> that starting in 4.6, I'm all for it!
>> >>>>
>> >>>>
>> >>>> Is there really a difference between creating a 4.6 and doing what
>> >>>> you
>> >>>> say, and tagging master (start) and doing it on master leading to 4.6
>> >>>> release ?
>> >>>>
>> >>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If
>> >>>> we
>> >>>> can improve a bit on the QA then we win.
>> >>>> Plus I think a different commit model will help a lot in quality.
>> >>>>
>> >>>>>
>> >>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
>> >>>>>
>> >>>>
>> >>>> We can do this proposal on email..and once we have consensus write it
>> >>>> up
>> >>>> for archive in the wiki.
>> >>>> If we move to the wiki now, this effort is going to die.
>> >>>>
>> >>>>> Seb: doesn't the vote would confirm the consensus?
>> >>>>>
>> >>>>
>> >>>> if we have consensus no need for vote.
>> >>>>
>> >>>>> Raja:  do we have any documentation somewhere on how to use,
>> >>>>> contribute
>> >>>> to
>> >>>>> the smoke test? that could be our start for the CI tests?
>> >>>>>
>> >>>>>
>> >>>>> Cheers
>> >>>>>
>> >>>>>
>> >>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen
>> >>>>> <ru...@gmail.com>
>> >>>>> wrote:
>> >>>>>
>> >>>>>>
>> >>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>> >>>>>>>
>> >>>>>>> After reviewing the history as mentioned by Daan, unless we
>> >>>>>>> propose
>> >>>>>>> and vote on a newer workflow model I think the best we can do is
>> >>>>>>> to
>> >>>>>>> simply be more strict about commits to master. They all need to be
>> >>>>>>> merges that have been tested against master before merge. This
>> >>>>>>> will
>> >> in
>> >>>>>>> theory make master more stable, but doesn't really change the
>> >> workflow
>> >>>>>>> we've already agreed upon and have been working under (although
>> >>>>>>> bugfixes sometimes were not coming in from branches, and
>> >> cherry-picked
>> >>>>>>> bugfixes from branches will need to go into a branch first, tested
>> >>>>>>> against master, and merged to master). We can essentially set a
>> >>>>>>> date
>> >>>>>>> and do that any time, with some advance notice that direct commits
>> >>>>>>> will be reverted.
>> >>>>>>
>> >>>>>> Yes +1.
>> >>>>>>
>> >>>>>> -Set a date
>> >>>>>> -Tag master for reference
>> >>>>>> -Find a volunteer or two to RM master
>> >>>>>> -automatic revert on master if not from RM
>> >>>>>> -all commits to master come from PR, need clear review and green
>> >>>>>> tests
>> >>>>>> -harden master (basic QA process), release 4.6 as a tag on master
>> >>>>>> -all features and fixes need to be made on branches or forks and
>> >>>>>> onus
>> >> is
>> >>>>>> on devs to rebase to master
>> >>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from
>> >>>>>> 4.3,
>> >>>> 4.4,
>> >>>>>> etc)
>> >>>>>> -from there forward only maintain a linear release through master
>> >>>>>>
>> >>>>>> Feel free to add, tweak
>> >>>>>>
>> >>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
>> >>>> members,
>> >>>>>> votes should be avoided at all cost, they mean that we do not have
>> >> clear
>> >>>>>> consensus.
>> >>>>>>
>> >>>>>>
>> >>>>>>>
>> >>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
>> >> runseb@gmail.com
>> >>>>>
>> >>>>>> wrote:
>> >>>>>>>>
>> >>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
>> >>>>>>>>>
>> >>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>> >>>>>>>>> Otherwise you should be able to do it cleanly.
>> >>>>>>>>>
>> >>>>>>>>> There's a good opportunity to do this next release. Instead of
>> >>>>>>>>> creating a release branch, we freeze master and start creating
>> >>>>>>>>> dev
>> >>>>>>>>> branches.
>> >>>>>>>>
>> >>>>>>>> +1
>> >>>>>>>>
>> >>>>>>>> This just amounts to treating master now like a release branch.
>> >>>> Getting
>> >>>>>> back to PL suggestion, that means
>> >>>>>>>> that any commit to master would be through a PR or MERGE request
>> >>>>>>>> on
>> >>>> the
>> >>>>>> ML. Anything else will be reverted by the RM.
>> >>>>>>>>
>> >>>>>>>> Marcus, do you feel like writing down a little process for this
>> >>>>>>>> and
>> >>>>>> some dates that we can target.
>> >>>>>>>> It would be nice to do this for 4.6.
>> >>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>> >>>>>> daan.hoogland@gmail.com> wrote:
>> >>>>>>>>>> We heavily invested in code now on master. Not looking forward
>> >>>>>>>>>> to
>> >>>>>>>>>> backporting that.
>> >>>>>>>>>>
>> >>>>>>>>>> mobile dev with bilingual spelling checker used (read at your
>> >>>>>>>>>> own
>> >>>>>> risk)
>> >>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>> >>>>>>>>>>
>> >>>>>>>>>>> Well, would we just swap the last release branch with master?
>> >>>> Master
>> >>>>>>>>>>> is the dev branch, and the last release is really what we have
>> >> as a
>> >>>>>>>>>>> stable branch.
>> >>>>>>>>>>>
>> >>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>> >>>>>> daan.hoogland@gmail.com>
>> >>>>>>>>>>> wrote:
>> >>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>> >>>>>> runseb@gmail.com>
>> >>>>>>>>>>> wrote:
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
>> >>>> pdion@cloudops.com
>> >>>>>>>
>> >>>>>>>>>>> wrote:
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
>> >>>>>> Release
>> >>>>>>>>>>>>>> management targeting the next 4.6 releases.
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>> Quick bullet point discussions:
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>> ideas to change release planning
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
>> >> plugin
>> >>>>>>>>>>> involve
>> >>>>>>>>>>>>>> change on the core:
>> >>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
>> >>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model
>> >>>>>>>>>>>>>> which
>> >>>> could
>> >>>>>>>>>>>>>> introduce issue the database schema.
>> >>>>>>>>>>>>>> - Database schema version should be different then the
>> >>>> application
>> >>>>>>>>>>>>>> version.
>> >>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and
>> >>>>>>>>>>>>>> trigger
>> >>>>>>>>>>> simulator
>> >>>>>>>>>>>>>> job on  PullRequest.
>> >>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our
>> >>>>>>>>>>>>>> current
>> >>>> way
>> >>>>>> of
>> >>>>>>>>>>>>>> supporting and back porting fixes to multiple release
>> >>>>>>>>>>>>>> (4.3.x,
>> >>>>>> 4.4.x,
>> >>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
>> >>>> release
>> >>>>>>>>>>> is low,
>> >>>>>>>>>>>>>> so that need to be improved.
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>> So, the main messages is that w'd like to improve the
>> >>>>>>>>>>>>>> release
>> >>>>>>>>>>> velocity, and
>> >>>>>>>>>>>>>> release branch stability.  so we would like to propose few
>> >>>> change
>> >>>>>> in
>> >>>>>>>>>>> the
>> >>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
>> >>>> merge
>> >>>>>>>>>>> request,
>> >>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that
>> >>>>>>>>>>>>>> pass
>> >>>>>> the PR
>> >>>>>>>>>>> would
>> >>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I
>> >>>>>>>>>>>>>> think
>> >> we
>> >>>>>> pretty
>> >>>>>>>>>>> much
>> >>>>>>>>>>>>>> have everything in place to do that. At a first step we
>> >>>>>>>>>>>>>> would
>> >>>> use
>> >>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from
>> >>>>>>>>>>>>>> there.
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>> +1
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>> We do need to realize what this means and be all fine with
>> >>>>>>>>>>>>> it.
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>> It means that if someone who is not RM directly commits to
>> >>>>>>>>>>>>> the
>> >>>>>> release
>> >>>>>>>>>>> branch, the commit will be reverted.
>> >>>>>>>>>>>>> And that from the beginning of the branching...
>> >>>>>>>>>>>> I agree and we can even go as far as reverting fixes that are
>> >>>>>>>>>>>> cherry-picked in favour of merged forward.
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>> IMHO, I think this would be a good step but I don't think it
>> >> goes
>> >>>>>> far
>> >>>>>>>>>>> enough.
>> >>>>>>>>>>>> Agreed here as well but let's take the step while discussing
>> >>>> further
>> >>>>>>>>>>>> steps and not implement to much process as well
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>> This still uses a paradigm where a release is made from a
>> >> release
>> >>>>>>>>>>> branch that was started from an unstable development branch.
>> >>>>>>>>>>>>> Hence you still need *extensive* QA.
>> >>>>>>>>>>>> The problem here is that there is no stable point to fork
>> >>>>>>>>>>>> from
>> >> at
>> >>>>>> the
>> >>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps
>> >>>>>>>>>>>> in
>> >>>> that
>> >>>>>>>>>>>> direction.
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>> If we truly want to release faster, we need to release from
>> >>>>>>>>>>>>> the
>> >>>>>> same
>> >>>>>>>>>>> QA'd branch time after time....a release needs to be based on a
>> >>>>>> previous
>> >>>>>>>>>>> release
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have
>> >>>>>>>>>>>>> the
>> >>>>>> added
>> >>>>>>>>>>> benefit to not leave releases behind and have to focus on
>> >>>>>> backporting.
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>>>
>> >>>>>>>>>>>>>> Please comments :-)
>> >>>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>> --
>> >>>>>>>>>>>> Daan
>> >>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>
>> >>>>
>> >>
>> >>
>>
>

Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
Fcourse

On Wed, 6 May 2015 15:02 Sebastien Goasguen <ru...@gmail.com> wrote:

> Can you sync with Rohit, who is merging the noawsapi stuff as well..
>
> > On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com>
> wrote:
> >
> > I can have a look at the merge of 4.5.1 and am willing to be one of the
> > RMs, not to be the RM!
> >
> > Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
> >
> >> So no -1 on this.
> >>
> >> Do we have volunteers to RM 4.6 on the master branch ?
> >>
> >> I propose to set a date asap, tag master and tell everyone that starting
> >> from that tag all commits to master except from RM will be reverted.
> >>
> >> will need to make sure that all of 4.5.1 is in master
> >>
> >> -sebastien
> >>
> >>
> >> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com>
> wrote:
> >>
> >>> Let's not do more quality improvement proces but just improve quality.
> If
> >>> anybody want to add to the pages on the wiki, you're welkom but nobody
> >> did
> >>> for long time. +1 for the present state of Sebastien's views on things.
> >> We
> >>> can refine at any time.
> >>>
> >>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
> >>>
> >>>>
> >>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
> >> wrote:
> >>>>
> >>>>> Hi,
> >>>>>
> >>>>> In my mind it was kind of making more sense to start by keeping 4.6
> >> into
> >>>> a
> >>>>> separate branch, enforce pull-requests and deploy the CI. smaller
> step
> >>>> but
> >>>>> faster result, and from there, once we get stable with the CI
> >>>>
> >>>> I hear you.
> >>>>
> >>>> But we have waited for way too long for better CI. I see great efforts
> >> in
> >>>> that direction.
> >>>> But I personally do not want to wait any longer to make a move.
> >>>>
> >>>> We do open source, we should have fun, take risks, move fast, fail
> fast,
> >>>> recover etc….
> >>>>
> >>>> so let's JFDI
> >>>>
> >>>>> and git flow;
> >>>>> move into master, do fastest releases cycle. If we consider we can do
> >> all
> >>>>> that starting in 4.6, I'm all for it!
> >>>>
> >>>>
> >>>> Is there really a difference between creating a 4.6 and doing what you
> >>>> say, and tagging master (start) and doing it on master leading to 4.6
> >>>> release ?
> >>>>
> >>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If
> we
> >>>> can improve a bit on the QA then we win.
> >>>> Plus I think a different commit model will help a lot in quality.
> >>>>
> >>>>>
> >>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
> >>>>>
> >>>>
> >>>> We can do this proposal on email..and once we have consensus write it
> up
> >>>> for archive in the wiki.
> >>>> If we move to the wiki now, this effort is going to die.
> >>>>
> >>>>> Seb: doesn't the vote would confirm the consensus?
> >>>>>
> >>>>
> >>>> if we have consensus no need for vote.
> >>>>
> >>>>> Raja:  do we have any documentation somewhere on how to use,
> contribute
> >>>> to
> >>>>> the smoke test? that could be our start for the CI tests?
> >>>>>
> >>>>>
> >>>>> Cheers
> >>>>>
> >>>>>
> >>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <
> runseb@gmail.com>
> >>>>> wrote:
> >>>>>
> >>>>>>
> >>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
> >>>>>>>
> >>>>>>> After reviewing the history as mentioned by Daan, unless we propose
> >>>>>>> and vote on a newer workflow model I think the best we can do is to
> >>>>>>> simply be more strict about commits to master. They all need to be
> >>>>>>> merges that have been tested against master before merge. This will
> >> in
> >>>>>>> theory make master more stable, but doesn't really change the
> >> workflow
> >>>>>>> we've already agreed upon and have been working under (although
> >>>>>>> bugfixes sometimes were not coming in from branches, and
> >> cherry-picked
> >>>>>>> bugfixes from branches will need to go into a branch first, tested
> >>>>>>> against master, and merged to master). We can essentially set a
> date
> >>>>>>> and do that any time, with some advance notice that direct commits
> >>>>>>> will be reverted.
> >>>>>>
> >>>>>> Yes +1.
> >>>>>>
> >>>>>> -Set a date
> >>>>>> -Tag master for reference
> >>>>>> -Find a volunteer or two to RM master
> >>>>>> -automatic revert on master if not from RM
> >>>>>> -all commits to master come from PR, need clear review and green
> tests
> >>>>>> -harden master (basic QA process), release 4.6 as a tag on master
> >>>>>> -all features and fixes need to be made on branches or forks and
> onus
> >> is
> >>>>>> on devs to rebase to master
> >>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
> >>>> 4.4,
> >>>>>> etc)
> >>>>>> -from there forward only maintain a linear release through master
> >>>>>>
> >>>>>> Feel free to add, tweak
> >>>>>>
> >>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
> >>>> members,
> >>>>>> votes should be avoided at all cost, they mean that we do not have
> >> clear
> >>>>>> consensus.
> >>>>>>
> >>>>>>
> >>>>>>>
> >>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
> >> runseb@gmail.com
> >>>>>
> >>>>>> wrote:
> >>>>>>>>
> >>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
> >>>>>>>>>
> >>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
> >>>>>>>>> Otherwise you should be able to do it cleanly.
> >>>>>>>>>
> >>>>>>>>> There's a good opportunity to do this next release. Instead of
> >>>>>>>>> creating a release branch, we freeze master and start creating
> dev
> >>>>>>>>> branches.
> >>>>>>>>
> >>>>>>>> +1
> >>>>>>>>
> >>>>>>>> This just amounts to treating master now like a release branch.
> >>>> Getting
> >>>>>> back to PL suggestion, that means
> >>>>>>>> that any commit to master would be through a PR or MERGE request
> on
> >>>> the
> >>>>>> ML. Anything else will be reverted by the RM.
> >>>>>>>>
> >>>>>>>> Marcus, do you feel like writing down a little process for this
> and
> >>>>>> some dates that we can target.
> >>>>>>>> It would be nice to do this for 4.6.
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
> >>>>>> daan.hoogland@gmail.com> wrote:
> >>>>>>>>>> We heavily invested in code now on master. Not looking forward
> to
> >>>>>>>>>> backporting that.
> >>>>>>>>>>
> >>>>>>>>>> mobile dev with bilingual spelling checker used (read at your
> own
> >>>>>> risk)
> >>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
> >>>>>>>>>>
> >>>>>>>>>>> Well, would we just swap the last release branch with master?
> >>>> Master
> >>>>>>>>>>> is the dev branch, and the last release is really what we have
> >> as a
> >>>>>>>>>>> stable branch.
> >>>>>>>>>>>
> >>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
> >>>>>> daan.hoogland@gmail.com>
> >>>>>>>>>>> wrote:
> >>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
> >>>>>> runseb@gmail.com>
> >>>>>>>>>>> wrote:
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
> >>>> pdion@cloudops.com
> >>>>>>>
> >>>>>>>>>>> wrote:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
> >>>>>> Release
> >>>>>>>>>>>>>> management targeting the next 4.6 releases.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Quick bullet point discussions:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> ideas to change release planning
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
> >> plugin
> >>>>>>>>>>> involve
> >>>>>>>>>>>>>> change on the core:
> >>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
> >>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
> >>>> could
> >>>>>>>>>>>>>> introduce issue the database schema.
> >>>>>>>>>>>>>> - Database schema version should be different then the
> >>>> application
> >>>>>>>>>>>>>> version.
> >>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and
> trigger
> >>>>>>>>>>> simulator
> >>>>>>>>>>>>>> job on  PullRequest.
> >>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our
> current
> >>>> way
> >>>>>> of
> >>>>>>>>>>>>>> supporting and back porting fixes to multiple release
> (4.3.x,
> >>>>>> 4.4.x,
> >>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
> >>>> release
> >>>>>>>>>>> is low,
> >>>>>>>>>>>>>> so that need to be improved.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> So, the main messages is that w'd like to improve the
> release
> >>>>>>>>>>> velocity, and
> >>>>>>>>>>>>>> release branch stability.  so we would like to propose few
> >>>> change
> >>>>>> in
> >>>>>>>>>>> the
> >>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
> >>>> merge
> >>>>>>>>>>> request,
> >>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that
> pass
> >>>>>> the PR
> >>>>>>>>>>> would
> >>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I think
> >> we
> >>>>>> pretty
> >>>>>>>>>>> much
> >>>>>>>>>>>>>> have everything in place to do that. At a first step we
> would
> >>>> use
> >>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from
> there.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> +1
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> We do need to realize what this means and be all fine with
> it.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> It means that if someone who is not RM directly commits to
> the
> >>>>>> release
> >>>>>>>>>>> branch, the commit will be reverted.
> >>>>>>>>>>>>> And that from the beginning of the branching…
> >>>>>>>>>>>> I agree and we can even go as far as reverting fixes that are
> >>>>>>>>>>>> cherry-picked in favour of merged forward.
> >>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it
> >> goes
> >>>>>> far
> >>>>>>>>>>> enough.
> >>>>>>>>>>>> Agreed here as well but let's take the step while discussing
> >>>> further
> >>>>>>>>>>>> steps and not implement to much process as well
> >>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> This still uses a paradigm where a release is made from a
> >> release
> >>>>>>>>>>> branch that was started from an unstable development branch.
> >>>>>>>>>>>>> Hence you still need *extensive* QA.
> >>>>>>>>>>>> The problem here is that there is no stable point to fork from
> >> at
> >>>>>> the
> >>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps
> in
> >>>> that
> >>>>>>>>>>>> direction.
> >>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> If we truly want to release faster, we need to release from
> the
> >>>>>> same
> >>>>>>>>>>> QA’d branch time after time….a release needs to be based on a
> >>>>>> previous
> >>>>>>>>>>> release
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have
> the
> >>>>>> added
> >>>>>>>>>>> benefit to not leave releases behind and have to focus on
> >>>>>> backporting.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Please comments :-)
> >>>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> --
> >>>>>>>>>>>> Daan
> >>>>>>>>>>>
> >>>>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>>>
> >>
> >>
>
>

Re: [DISCUSS] 4.6 release management

Posted by Sebastien Goasguen <ru...@gmail.com>.
Can you sync with Rohit, who is merging the noawsapi stuff as well..

> On May 6, 2015, at 10:59 AM, Daan Hoogland <da...@gmail.com> wrote:
> 
> I can have a look at the merge of 4.5.1 and am willing to be one of the
> RMs, not to be the RM!
> 
> Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:
> 
>> So no -1 on this.
>> 
>> Do we have volunteers to RM 4.6 on the master branch ?
>> 
>> I propose to set a date asap, tag master and tell everyone that starting
>> from that tag all commits to master except from RM will be reverted.
>> 
>> will need to make sure that all of 4.5.1 is in master
>> 
>> -sebastien
>> 
>> 
>> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com> wrote:
>> 
>>> Let's not do more quality improvement proces but just improve quality. If
>>> anybody want to add to the pages on the wiki, you're welkom but nobody
>> did
>>> for long time. +1 for the present state of Sebastien's views on things.
>> We
>>> can refine at any time.
>>> 
>>> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
>>> 
>>>> 
>>>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
>> wrote:
>>>> 
>>>>> Hi,
>>>>> 
>>>>> In my mind it was kind of making more sense to start by keeping 4.6
>> into
>>>> a
>>>>> separate branch, enforce pull-requests and deploy the CI. smaller step
>>>> but
>>>>> faster result, and from there, once we get stable with the CI
>>>> 
>>>> I hear you.
>>>> 
>>>> But we have waited for way too long for better CI. I see great efforts
>> in
>>>> that direction.
>>>> But I personally do not want to wait any longer to make a move.
>>>> 
>>>> We do open source, we should have fun, take risks, move fast, fail fast,
>>>> recover etc….
>>>> 
>>>> so let's JFDI
>>>> 
>>>>> and git flow;
>>>>> move into master, do fastest releases cycle. If we consider we can do
>> all
>>>>> that starting in 4.6, I'm all for it!
>>>> 
>>>> 
>>>> Is there really a difference between creating a 4.6 and doing what you
>>>> say, and tagging master (start) and doing it on master leading to 4.6
>>>> release ?
>>>> 
>>>> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If we
>>>> can improve a bit on the QA then we win.
>>>> Plus I think a different commit model will help a lot in quality.
>>>> 
>>>>> 
>>>>> Marcus: are you preparing a proposal on this? wiki page? I can help
>>>>> 
>>>> 
>>>> We can do this proposal on email..and once we have consensus write it up
>>>> for archive in the wiki.
>>>> If we move to the wiki now, this effort is going to die.
>>>> 
>>>>> Seb: doesn't the vote would confirm the consensus?
>>>>> 
>>>> 
>>>> if we have consensus no need for vote.
>>>> 
>>>>> Raja:  do we have any documentation somewhere on how to use, contribute
>>>> to
>>>>> the smoke test? that could be our start for the CI tests?
>>>>> 
>>>>> 
>>>>> Cheers
>>>>> 
>>>>> 
>>>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <ru...@gmail.com>
>>>>> wrote:
>>>>> 
>>>>>> 
>>>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>>>>>>> 
>>>>>>> After reviewing the history as mentioned by Daan, unless we propose
>>>>>>> and vote on a newer workflow model I think the best we can do is to
>>>>>>> simply be more strict about commits to master. They all need to be
>>>>>>> merges that have been tested against master before merge. This will
>> in
>>>>>>> theory make master more stable, but doesn't really change the
>> workflow
>>>>>>> we've already agreed upon and have been working under (although
>>>>>>> bugfixes sometimes were not coming in from branches, and
>> cherry-picked
>>>>>>> bugfixes from branches will need to go into a branch first, tested
>>>>>>> against master, and merged to master). We can essentially set a date
>>>>>>> and do that any time, with some advance notice that direct commits
>>>>>>> will be reverted.
>>>>>> 
>>>>>> Yes +1.
>>>>>> 
>>>>>> -Set a date
>>>>>> -Tag master for reference
>>>>>> -Find a volunteer or two to RM master
>>>>>> -automatic revert on master if not from RM
>>>>>> -all commits to master come from PR, need clear review and green tests
>>>>>> -harden master (basic QA process), release 4.6 as a tag on master
>>>>>> -all features and fixes need to be made on branches or forks and onus
>> is
>>>>>> on devs to rebase to master
>>>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
>>>> 4.4,
>>>>>> etc)
>>>>>> -from there forward only maintain a linear release through master
>>>>>> 
>>>>>> Feel free to add, tweak
>>>>>> 
>>>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
>>>> members,
>>>>>> votes should be avoided at all cost, they mean that we do not have
>> clear
>>>>>> consensus.
>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
>> runseb@gmail.com
>>>>> 
>>>>>> wrote:
>>>>>>>> 
>>>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
>>>>>>>>> 
>>>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>>>>>>>>> Otherwise you should be able to do it cleanly.
>>>>>>>>> 
>>>>>>>>> There's a good opportunity to do this next release. Instead of
>>>>>>>>> creating a release branch, we freeze master and start creating dev
>>>>>>>>> branches.
>>>>>>>> 
>>>>>>>> +1
>>>>>>>> 
>>>>>>>> This just amounts to treating master now like a release branch.
>>>> Getting
>>>>>> back to PL suggestion, that means
>>>>>>>> that any commit to master would be through a PR or MERGE request on
>>>> the
>>>>>> ML. Anything else will be reverted by the RM.
>>>>>>>> 
>>>>>>>> Marcus, do you feel like writing down a little process for this and
>>>>>> some dates that we can target.
>>>>>>>> It would be nice to do this for 4.6.
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>>>>>> daan.hoogland@gmail.com> wrote:
>>>>>>>>>> We heavily invested in code now on master. Not looking forward to
>>>>>>>>>> backporting that.
>>>>>>>>>> 
>>>>>>>>>> mobile dev with bilingual spelling checker used (read at your own
>>>>>> risk)
>>>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>>>>>>>>>> 
>>>>>>>>>>> Well, would we just swap the last release branch with master?
>>>> Master
>>>>>>>>>>> is the dev branch, and the last release is really what we have
>> as a
>>>>>>>>>>> stable branch.
>>>>>>>>>>> 
>>>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>>>>>> daan.hoogland@gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>>>>>> runseb@gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
>>>> pdion@cloudops.com
>>>>>>> 
>>>>>>>>>>> wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
>>>>>> Release
>>>>>>>>>>>>>> management targeting the next 4.6 releases.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Quick bullet point discussions:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> ideas to change release planning
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> - Plugin contribution is complicated because often  a new
>> plugin
>>>>>>>>>>> involve
>>>>>>>>>>>>>> change on the core:
>>>>>>>>>>>>>> - ex: storage plugin involve changes on Hypervisor code
>>>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
>>>> could
>>>>>>>>>>>>>> introduce issue the database schema.
>>>>>>>>>>>>>> - Database schema version should be different then the
>>>> application
>>>>>>>>>>>>>> version.
>>>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
>>>>>>>>>>> simulator
>>>>>>>>>>>>>> job on  PullRequest.
>>>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our current
>>>> way
>>>>>> of
>>>>>>>>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
>>>>>> 4.4.x,
>>>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
>>>> release
>>>>>>>>>>> is low,
>>>>>>>>>>>>>> so that need to be improved.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> So, the main messages is that w'd like to improve the release
>>>>>>>>>>> velocity, and
>>>>>>>>>>>>>> release branch stability.  so we would like to propose few
>>>> change
>>>>>> in
>>>>>>>>>>> the
>>>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
>>>> merge
>>>>>>>>>>> request,
>>>>>>>>>>>>>> which would trigger a simulator job, ideally only if that pass
>>>>>> the PR
>>>>>>>>>>> would
>>>>>>>>>>>>>> be accepted and automatically merged.  At this time, I think
>> we
>>>>>> pretty
>>>>>>>>>>> much
>>>>>>>>>>>>>> have everything in place to do that. At a first step we would
>>>> use
>>>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from there.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> +1
>>>>>>>>>>>>> 
>>>>>>>>>>>>> We do need to realize what this means and be all fine with it.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> It means that if someone who is not RM directly commits to the
>>>>>> release
>>>>>>>>>>> branch, the commit will be reverted.
>>>>>>>>>>>>> And that from the beginning of the branching…
>>>>>>>>>>>> I agree and we can even go as far as reverting fixes that are
>>>>>>>>>>>> cherry-picked in favour of merged forward.
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it
>> goes
>>>>>> far
>>>>>>>>>>> enough.
>>>>>>>>>>>> Agreed here as well but let's take the step while discussing
>>>> further
>>>>>>>>>>>> steps and not implement to much process as well
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> This still uses a paradigm where a release is made from a
>> release
>>>>>>>>>>> branch that was started from an unstable development branch.
>>>>>>>>>>>>> Hence you still need *extensive* QA.
>>>>>>>>>>>> The problem here is that there is no stable point to fork from
>> at
>>>>>> the
>>>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps in
>>>> that
>>>>>>>>>>>> direction.
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> If we truly want to release faster, we need to release from the
>>>>>> same
>>>>>>>>>>> QA’d branch time after time….a release needs to be based on a
>>>>>> previous
>>>>>>>>>>> release
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Basically, we need a rolling release cycle. That will have the
>>>>>> added
>>>>>>>>>>> benefit to not leave releases behind and have to focus on
>>>>>> backporting.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Please comments :-)
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> --
>>>>>>>>>>>> Daan
>>>>>>>>>>> 
>>>>>>>> 
>>>>>> 
>>>>>> 
>>>> 
>>>> 
>> 
>> 


Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
I can have a look at the merge of 4.5.1 and am willing to be one of the
RMs, not to be the RM!

Op wo 6 mei 2015 om 09:47 schreef sebgoa <ru...@gmail.com>:

> So no -1 on this.
>
> Do we have volunteers to RM 4.6 on the master branch ?
>
> I propose to set a date asap, tag master and tell everyone that starting
> from that tag all commits to master except from RM will be reverted.
>
> will need to make sure that all of 4.5.1 is in master
>
> -sebastien
>
>
> On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com> wrote:
>
> > Let's not do more quality improvement proces but just improve quality. If
> > anybody want to add to the pages on the wiki, you're welkom but nobody
> did
> > for long time. +1 for the present state of Sebastien's views on things.
> We
> > can refine at any time.
> >
> > Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
> >
> >>
> >> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org>
> wrote:
> >>
> >>> Hi,
> >>>
> >>> In my mind it was kind of making more sense to start by keeping 4.6
> into
> >> a
> >>> separate branch, enforce pull-requests and deploy the CI. smaller step
> >> but
> >>> faster result, and from there, once we get stable with the CI
> >>
> >> I hear you.
> >>
> >> But we have waited for way too long for better CI. I see great efforts
> in
> >> that direction.
> >> But I personally do not want to wait any longer to make a move.
> >>
> >> We do open source, we should have fun, take risks, move fast, fail fast,
> >> recover etc….
> >>
> >> so let's JFDI
> >>
> >>> and git flow;
> >>> move into master, do fastest releases cycle. If we consider we can do
> all
> >>> that starting in 4.6, I'm all for it!
> >>
> >>
> >> Is there really a difference between creating a 4.6 and doing what you
> >> say, and tagging master (start) and doing it on master leading to 4.6
> >> release ?
> >>
> >> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If we
> >> can improve a bit on the QA then we win.
> >> Plus I think a different commit model will help a lot in quality.
> >>
> >>>
> >>> Marcus: are you preparing a proposal on this? wiki page? I can help
> >>>
> >>
> >> We can do this proposal on email..and once we have consensus write it up
> >> for archive in the wiki.
> >> If we move to the wiki now, this effort is going to die.
> >>
> >>> Seb: doesn't the vote would confirm the consensus?
> >>>
> >>
> >> if we have consensus no need for vote.
> >>
> >>> Raja:  do we have any documentation somewhere on how to use, contribute
> >> to
> >>> the smoke test? that could be our start for the CI tests?
> >>>
> >>>
> >>> Cheers
> >>>
> >>>
> >>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <ru...@gmail.com>
> >>> wrote:
> >>>
> >>>>
> >>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
> >>>>>
> >>>>> After reviewing the history as mentioned by Daan, unless we propose
> >>>>> and vote on a newer workflow model I think the best we can do is to
> >>>>> simply be more strict about commits to master. They all need to be
> >>>>> merges that have been tested against master before merge. This will
> in
> >>>>> theory make master more stable, but doesn't really change the
> workflow
> >>>>> we've already agreed upon and have been working under (although
> >>>>> bugfixes sometimes were not coming in from branches, and
> cherry-picked
> >>>>> bugfixes from branches will need to go into a branch first, tested
> >>>>> against master, and merged to master). We can essentially set a date
> >>>>> and do that any time, with some advance notice that direct commits
> >>>>> will be reverted.
> >>>>
> >>>> Yes +1.
> >>>>
> >>>> -Set a date
> >>>> -Tag master for reference
> >>>> -Find a volunteer or two to RM master
> >>>> -automatic revert on master if not from RM
> >>>> -all commits to master come from PR, need clear review and green tests
> >>>> -harden master (basic QA process), release 4.6 as a tag on master
> >>>> -all features and fixes need to be made on branches or forks and onus
> is
> >>>> on devs to rebase to master
> >>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
> >> 4.4,
> >>>> etc)
> >>>> -from there forward only maintain a linear release through master
> >>>>
> >>>> Feel free to add, tweak
> >>>>
> >>>> PS: No need to vote if we have consensus. Taking a clue from ASF
> >> members,
> >>>> votes should be avoided at all cost, they mean that we do not have
> clear
> >>>> consensus.
> >>>>
> >>>>
> >>>>>
> >>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <
> runseb@gmail.com
> >>>
> >>>> wrote:
> >>>>>>
> >>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
> >>>>>>>
> >>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
> >>>>>>> Otherwise you should be able to do it cleanly.
> >>>>>>>
> >>>>>>> There's a good opportunity to do this next release. Instead of
> >>>>>>> creating a release branch, we freeze master and start creating dev
> >>>>>>> branches.
> >>>>>>
> >>>>>> +1
> >>>>>>
> >>>>>> This just amounts to treating master now like a release branch.
> >> Getting
> >>>> back to PL suggestion, that means
> >>>>>> that any commit to master would be through a PR or MERGE request on
> >> the
> >>>> ML. Anything else will be reverted by the RM.
> >>>>>>
> >>>>>> Marcus, do you feel like writing down a little process for this and
> >>>> some dates that we can target.
> >>>>>> It would be nice to do this for 4.6.
> >>>>>>
> >>>>>>>
> >>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
> >>>> daan.hoogland@gmail.com> wrote:
> >>>>>>>> We heavily invested in code now on master. Not looking forward to
> >>>>>>>> backporting that.
> >>>>>>>>
> >>>>>>>> mobile dev with bilingual spelling checker used (read at your own
> >>>> risk)
> >>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
> >>>>>>>>
> >>>>>>>>> Well, would we just swap the last release branch with master?
> >> Master
> >>>>>>>>> is the dev branch, and the last release is really what we have
> as a
> >>>>>>>>> stable branch.
> >>>>>>>>>
> >>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
> >>>> daan.hoogland@gmail.com>
> >>>>>>>>> wrote:
> >>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
> >>>> runseb@gmail.com>
> >>>>>>>>> wrote:
> >>>>>>>>>>>
> >>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
> >> pdion@cloudops.com
> >>>>>
> >>>>>>>>> wrote:
> >>>>>>>>>>>>
> >>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
> >>>> Release
> >>>>>>>>>>>> management targeting the next 4.6 releases.
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> Quick bullet point discussions:
> >>>>>>>>>>>>
> >>>>>>>>>>>> ideas to change release planning
> >>>>>>>>>>>>
> >>>>>>>>>>>> - Plugin contribution is complicated because often  a new
> plugin
> >>>>>>>>> involve
> >>>>>>>>>>>> change on the core:
> >>>>>>>>>>>>  - ex: storage plugin involve changes on Hypervisor code
> >>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
> >> could
> >>>>>>>>>>>> introduce issue the database schema.
> >>>>>>>>>>>> - Database schema version should be different then the
> >> application
> >>>>>>>>>>>> version.
> >>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
> >>>>>>>>> simulator
> >>>>>>>>>>>> job on  PullRequest.
> >>>>>>>>>>>> - Some people (I'm part of them) are concerned on our current
> >> way
> >>>> of
> >>>>>>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
> >>>> 4.4.x,
> >>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
> >> release
> >>>>>>>>> is low,
> >>>>>>>>>>>> so that need to be improved.
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> So, the main messages is that w'd like to improve the release
> >>>>>>>>> velocity, and
> >>>>>>>>>>>> release branch stability.  so we would like to propose few
> >> change
> >>>> in
> >>>>>>>>> the
> >>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
> >>>>>>>>>>>>
> >>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
> >> merge
> >>>>>>>>> request,
> >>>>>>>>>>>> which would trigger a simulator job, ideally only if that pass
> >>>> the PR
> >>>>>>>>> would
> >>>>>>>>>>>> be accepted and automatically merged.  At this time, I think
> we
> >>>> pretty
> >>>>>>>>> much
> >>>>>>>>>>>> have everything in place to do that. At a first step we would
> >> use
> >>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from there.
> >>>>>>>>>>>
> >>>>>>>>>>> +1
> >>>>>>>>>>>
> >>>>>>>>>>> We do need to realize what this means and be all fine with it.
> >>>>>>>>>>>
> >>>>>>>>>>> It means that if someone who is not RM directly commits to the
> >>>> release
> >>>>>>>>> branch, the commit will be reverted.
> >>>>>>>>>>> And that from the beginning of the branching…
> >>>>>>>>>> I agree and we can even go as far as reverting fixes that are
> >>>>>>>>>> cherry-picked in favour of merged forward.
> >>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it
> goes
> >>>> far
> >>>>>>>>> enough.
> >>>>>>>>>> Agreed here as well but let's take the step while discussing
> >> further
> >>>>>>>>>> steps and not implement to much process as well
> >>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> This still uses a paradigm where a release is made from a
> release
> >>>>>>>>> branch that was started from an unstable development branch.
> >>>>>>>>>>> Hence you still need *extensive* QA.
> >>>>>>>>>> The problem here is that there is no stable point to fork from
> at
> >>>> the
> >>>>>>>>>> moment. We will get there and we shouldn't stop taking steps in
> >> that
> >>>>>>>>>> direction.
> >>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> If we truly want to release faster, we need to release from the
> >>>> same
> >>>>>>>>> QA’d branch time after time….a release needs to be based on a
> >>>> previous
> >>>>>>>>> release
> >>>>>>>>>>>
> >>>>>>>>>>> Basically, we need a rolling release cycle. That will have the
> >>>> added
> >>>>>>>>> benefit to not leave releases behind and have to focus on
> >>>> backporting.
> >>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> Please comments :-)
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> --
> >>>>>>>>>> Daan
> >>>>>>>>>
> >>>>>>
> >>>>
> >>>>
> >>
> >>
>
>

Re: [DISCUSS] 4.6 release management

Posted by sebgoa <ru...@gmail.com>.
So no -1 on this.

Do we have volunteers to RM 4.6 on the master branch ?

I propose to set a date asap, tag master and tell everyone that starting from that tag all commits to master except from RM will be reverted.

will need to make sure that all of 4.5.1 is in master 

-sebastien


On May 1, 2015, at 1:19 PM, Daan Hoogland <da...@gmail.com> wrote:

> Let's not do more quality improvement proces but just improve quality. If
> anybody want to add to the pages on the wiki, you're welkom but nobody did
> for long time. +1 for the present state of Sebastien's views on things. We
> can refine at any time.
> 
> Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:
> 
>> 
>> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org> wrote:
>> 
>>> Hi,
>>> 
>>> In my mind it was kind of making more sense to start by keeping 4.6 into
>> a
>>> separate branch, enforce pull-requests and deploy the CI. smaller step
>> but
>>> faster result, and from there, once we get stable with the CI
>> 
>> I hear you.
>> 
>> But we have waited for way too long for better CI. I see great efforts in
>> that direction.
>> But I personally do not want to wait any longer to make a move.
>> 
>> We do open source, we should have fun, take risks, move fast, fail fast,
>> recover etc….
>> 
>> so let's JFDI
>> 
>>> and git flow;
>>> move into master, do fastest releases cycle. If we consider we can do all
>>> that starting in 4.6, I'm all for it!
>> 
>> 
>> Is there really a difference between creating a 4.6 and doing what you
>> say, and tagging master (start) and doing it on master leading to 4.6
>> release ?
>> 
>> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If we
>> can improve a bit on the QA then we win.
>> Plus I think a different commit model will help a lot in quality.
>> 
>>> 
>>> Marcus: are you preparing a proposal on this? wiki page? I can help
>>> 
>> 
>> We can do this proposal on email..and once we have consensus write it up
>> for archive in the wiki.
>> If we move to the wiki now, this effort is going to die.
>> 
>>> Seb: doesn't the vote would confirm the consensus?
>>> 
>> 
>> if we have consensus no need for vote.
>> 
>>> Raja:  do we have any documentation somewhere on how to use, contribute
>> to
>>> the smoke test? that could be our start for the CI tests?
>>> 
>>> 
>>> Cheers
>>> 
>>> 
>>> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <ru...@gmail.com>
>>> wrote:
>>> 
>>>> 
>>>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>>>>> 
>>>>> After reviewing the history as mentioned by Daan, unless we propose
>>>>> and vote on a newer workflow model I think the best we can do is to
>>>>> simply be more strict about commits to master. They all need to be
>>>>> merges that have been tested against master before merge. This will in
>>>>> theory make master more stable, but doesn't really change the workflow
>>>>> we've already agreed upon and have been working under (although
>>>>> bugfixes sometimes were not coming in from branches, and cherry-picked
>>>>> bugfixes from branches will need to go into a branch first, tested
>>>>> against master, and merged to master). We can essentially set a date
>>>>> and do that any time, with some advance notice that direct commits
>>>>> will be reverted.
>>>> 
>>>> Yes +1.
>>>> 
>>>> -Set a date
>>>> -Tag master for reference
>>>> -Find a volunteer or two to RM master
>>>> -automatic revert on master if not from RM
>>>> -all commits to master come from PR, need clear review and green tests
>>>> -harden master (basic QA process), release 4.6 as a tag on master
>>>> -all features and fixes need to be made on branches or forks and onus is
>>>> on devs to rebase to master
>>>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
>> 4.4,
>>>> etc)
>>>> -from there forward only maintain a linear release through master
>>>> 
>>>> Feel free to add, tweak
>>>> 
>>>> PS: No need to vote if we have consensus. Taking a clue from ASF
>> members,
>>>> votes should be avoided at all cost, they mean that we do not have clear
>>>> consensus.
>>>> 
>>>> 
>>>>> 
>>>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <runseb@gmail.com
>>> 
>>>> wrote:
>>>>>> 
>>>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
>>>>>>> 
>>>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>>>>>>> Otherwise you should be able to do it cleanly.
>>>>>>> 
>>>>>>> There's a good opportunity to do this next release. Instead of
>>>>>>> creating a release branch, we freeze master and start creating dev
>>>>>>> branches.
>>>>>> 
>>>>>> +1
>>>>>> 
>>>>>> This just amounts to treating master now like a release branch.
>> Getting
>>>> back to PL suggestion, that means
>>>>>> that any commit to master would be through a PR or MERGE request on
>> the
>>>> ML. Anything else will be reverted by the RM.
>>>>>> 
>>>>>> Marcus, do you feel like writing down a little process for this and
>>>> some dates that we can target.
>>>>>> It would be nice to do this for 4.6.
>>>>>> 
>>>>>>> 
>>>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>>>> daan.hoogland@gmail.com> wrote:
>>>>>>>> We heavily invested in code now on master. Not looking forward to
>>>>>>>> backporting that.
>>>>>>>> 
>>>>>>>> mobile dev with bilingual spelling checker used (read at your own
>>>> risk)
>>>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>>>>>>>> 
>>>>>>>>> Well, would we just swap the last release branch with master?
>> Master
>>>>>>>>> is the dev branch, and the last release is really what we have as a
>>>>>>>>> stable branch.
>>>>>>>>> 
>>>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>>>> daan.hoogland@gmail.com>
>>>>>>>>> wrote:
>>>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>>>> runseb@gmail.com>
>>>>>>>>> wrote:
>>>>>>>>>>> 
>>>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
>> pdion@cloudops.com
>>>>> 
>>>>>>>>> wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>> Today during the CloudStackdays  we did a round table about
>>>> Release
>>>>>>>>>>>> management targeting the next 4.6 releases.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> Quick bullet point discussions:
>>>>>>>>>>>> 
>>>>>>>>>>>> ideas to change release planning
>>>>>>>>>>>> 
>>>>>>>>>>>> - Plugin contribution is complicated because often  a new plugin
>>>>>>>>> involve
>>>>>>>>>>>> change on the core:
>>>>>>>>>>>>  - ex: storage plugin involve changes on Hypervisor code
>>>>>>>>>>>> - There is an idea of going on a 2 weeks release model which
>> could
>>>>>>>>>>>> introduce issue the database schema.
>>>>>>>>>>>> - Database schema version should be different then the
>> application
>>>>>>>>>>>> version.
>>>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
>>>>>>>>> simulator
>>>>>>>>>>>> job on  PullRequest.
>>>>>>>>>>>> - Some people (I'm part of them) are concerned on our current
>> way
>>>> of
>>>>>>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
>>>> 4.4.x,
>>>>>>>>>>>> 4.5.x). But the current level of confidence against latest
>> release
>>>>>>>>> is low,
>>>>>>>>>>>> so that need to be improved.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> So, the main messages is that w'd like to improve the release
>>>>>>>>> velocity, and
>>>>>>>>>>>> release branch stability.  so we would like to propose few
>> change
>>>> in
>>>>>>>>> the
>>>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>>>>>>>>>>>> 
>>>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
>> merge
>>>>>>>>> request,
>>>>>>>>>>>> which would trigger a simulator job, ideally only if that pass
>>>> the PR
>>>>>>>>> would
>>>>>>>>>>>> be accepted and automatically merged.  At this time, I think we
>>>> pretty
>>>>>>>>> much
>>>>>>>>>>>> have everything in place to do that. At a first step we would
>> use
>>>>>>>>>>>> simulator+marvin jobs then improve tests coverage from there.
>>>>>>>>>>> 
>>>>>>>>>>> +1
>>>>>>>>>>> 
>>>>>>>>>>> We do need to realize what this means and be all fine with it.
>>>>>>>>>>> 
>>>>>>>>>>> It means that if someone who is not RM directly commits to the
>>>> release
>>>>>>>>> branch, the commit will be reverted.
>>>>>>>>>>> And that from the beginning of the branching…
>>>>>>>>>> I agree and we can even go as far as reverting fixes that are
>>>>>>>>>> cherry-picked in favour of merged forward.
>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> IMHO, I think this would be a good step but I don’t think it goes
>>>> far
>>>>>>>>> enough.
>>>>>>>>>> Agreed here as well but let's take the step while discussing
>> further
>>>>>>>>>> steps and not implement to much process as well
>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> This still uses a paradigm where a release is made from a release
>>>>>>>>> branch that was started from an unstable development branch.
>>>>>>>>>>> Hence you still need *extensive* QA.
>>>>>>>>>> The problem here is that there is no stable point to fork from at
>>>> the
>>>>>>>>>> moment. We will get there and we shouldn't stop taking steps in
>> that
>>>>>>>>>> direction.
>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> If we truly want to release faster, we need to release from the
>>>> same
>>>>>>>>> QA’d branch time after time….a release needs to be based on a
>>>> previous
>>>>>>>>> release
>>>>>>>>>>> 
>>>>>>>>>>> Basically, we need a rolling release cycle. That will have the
>>>> added
>>>>>>>>> benefit to not leave releases behind and have to focus on
>>>> backporting.
>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> Please comments :-)
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> --
>>>>>>>>>> Daan
>>>>>>>>> 
>>>>>> 
>>>> 
>>>> 
>> 
>> 


Re: [DISCUSS] 4.6 release management

Posted by Daan Hoogland <da...@gmail.com>.
Let's not do more quality improvement proces but just improve quality. If
anybody want to add to the pages on the wiki, you're welkom but nobody did
for long time. +1 for the present state of Sebastien's views on things. We
can refine at any time.

Op vr 1 mei 2015 om 09:55 schreef sebgoa <ru...@gmail.com>:

>
> On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org> wrote:
>
> > Hi,
> >
> > In my mind it was kind of making more sense to start by keeping 4.6 into
> a
> > separate branch, enforce pull-requests and deploy the CI. smaller step
> but
> > faster result, and from there, once we get stable with the CI
>
> I hear you.
>
> But we have waited for way too long for better CI. I see great efforts in
> that direction.
> But I personally do not want to wait any longer to make a move.
>
> We do open source, we should have fun, take risks, move fast, fail fast,
> recover etc….
>
> so let's JFDI
>
> > and git flow;
> > move into master, do fastest releases cycle. If we consider we can do all
> > that starting in 4.6, I'm all for it!
>
>
> Is there really a difference between creating a 4.6 and doing what you
> say, and tagging master (start) and doing it on master leading to 4.6
> release ?
>
> Assuming the QA does not improve, 4.6 would not be worse than 4.5. If we
> can improve a bit on the QA then we win.
> Plus I think a different commit model will help a lot in quality.
>
> >
> > Marcus: are you preparing a proposal on this? wiki page? I can help
> >
>
> We can do this proposal on email..and once we have consensus write it up
> for archive in the wiki.
> If we move to the wiki now, this effort is going to die.
>
> > Seb: doesn't the vote would confirm the consensus?
> >
>
> if we have consensus no need for vote.
>
> > Raja:  do we have any documentation somewhere on how to use, contribute
> to
> > the smoke test? that could be our start for the CI tests?
> >
> >
> > Cheers
> >
> >
> > On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <ru...@gmail.com>
> > wrote:
> >
> >>
> >>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
> >>>
> >>> After reviewing the history as mentioned by Daan, unless we propose
> >>> and vote on a newer workflow model I think the best we can do is to
> >>> simply be more strict about commits to master. They all need to be
> >>> merges that have been tested against master before merge. This will in
> >>> theory make master more stable, but doesn't really change the workflow
> >>> we've already agreed upon and have been working under (although
> >>> bugfixes sometimes were not coming in from branches, and cherry-picked
> >>> bugfixes from branches will need to go into a branch first, tested
> >>> against master, and merged to master). We can essentially set a date
> >>> and do that any time, with some advance notice that direct commits
> >>> will be reverted.
> >>
> >> Yes +1.
> >>
> >> -Set a date
> >> -Tag master for reference
> >> -Find a volunteer or two to RM master
> >> -automatic revert on master if not from RM
> >> -all commits to master come from PR, need clear review and green tests
> >> -harden master (basic QA process), release 4.6 as a tag on master
> >> -all features and fixes need to be made on branches or forks and onus is
> >> on devs to rebase to master
> >> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3,
> 4.4,
> >> etc)
> >> -from there forward only maintain a linear release through master
> >>
> >> Feel free to add, tweak
> >>
> >> PS: No need to vote if we have consensus. Taking a clue from ASF
> members,
> >> votes should be avoided at all cost, they mean that we do not have clear
> >> consensus.
> >>
> >>
> >>>
> >>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <runseb@gmail.com
> >
> >> wrote:
> >>>>
> >>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
> >>>>>
> >>>>> Have they diverged that much? Due to cherry-picking, I guess.
> >>>>> Otherwise you should be able to do it cleanly.
> >>>>>
> >>>>> There's a good opportunity to do this next release. Instead of
> >>>>> creating a release branch, we freeze master and start creating dev
> >>>>> branches.
> >>>>
> >>>> +1
> >>>>
> >>>> This just amounts to treating master now like a release branch.
> Getting
> >> back to PL suggestion, that means
> >>>> that any commit to master would be through a PR or MERGE request on
> the
> >> ML. Anything else will be reverted by the RM.
> >>>>
> >>>> Marcus, do you feel like writing down a little process for this and
> >> some dates that we can target.
> >>>> It would be nice to do this for 4.6.
> >>>>
> >>>>>
> >>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
> >> daan.hoogland@gmail.com> wrote:
> >>>>>> We heavily invested in code now on master. Not looking forward to
> >>>>>> backporting that.
> >>>>>>
> >>>>>> mobile dev with bilingual spelling checker used (read at your own
> >> risk)
> >>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
> >>>>>>
> >>>>>>> Well, would we just swap the last release branch with master?
> Master
> >>>>>>> is the dev branch, and the last release is really what we have as a
> >>>>>>> stable branch.
> >>>>>>>
> >>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
> >> daan.hoogland@gmail.com>
> >>>>>>> wrote:
> >>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
> >> runseb@gmail.com>
> >>>>>>> wrote:
> >>>>>>>>>
> >>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <
> pdion@cloudops.com
> >>>
> >>>>>>> wrote:
> >>>>>>>>>>
> >>>>>>>>>> Today during the CloudStackdays  we did a round table about
> >> Release
> >>>>>>>>>> management targeting the next 4.6 releases.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Quick bullet point discussions:
> >>>>>>>>>>
> >>>>>>>>>> ideas to change release planning
> >>>>>>>>>>
> >>>>>>>>>> - Plugin contribution is complicated because often  a new plugin
> >>>>>>> involve
> >>>>>>>>>> change on the core:
> >>>>>>>>>>   - ex: storage plugin involve changes on Hypervisor code
> >>>>>>>>>> - There is an idea of going on a 2 weeks release model which
> could
> >>>>>>>>>> introduce issue the database schema.
> >>>>>>>>>> - Database schema version should be different then the
> application
> >>>>>>>>>> version.
> >>>>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
> >>>>>>> simulator
> >>>>>>>>>> job on  PullRequest.
> >>>>>>>>>> - Some people (I'm part of them) are concerned on our current
> way
> >> of
> >>>>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
> >> 4.4.x,
> >>>>>>>>>> 4.5.x). But the current level of confidence against latest
> release
> >>>>>>> is low,
> >>>>>>>>>> so that need to be improved.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> So, the main messages is that w'd like to improve the release
> >>>>>>> velocity, and
> >>>>>>>>>> release branch stability.  so we would like to propose few
> change
> >> in
> >>>>>>> the
> >>>>>>>>>> way we would add code to the 4.6 branch as follow:
> >>>>>>>>>>
> >>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or
> merge
> >>>>>>> request,
> >>>>>>>>>> which would trigger a simulator job, ideally only if that pass
> >> the PR
> >>>>>>> would
> >>>>>>>>>> be accepted and automatically merged.  At this time, I think we
> >> pretty
> >>>>>>> much
> >>>>>>>>>> have everything in place to do that. At a first step we would
> use
> >>>>>>>>>> simulator+marvin jobs then improve tests coverage from there.
> >>>>>>>>>
> >>>>>>>>> +1
> >>>>>>>>>
> >>>>>>>>> We do need to realize what this means and be all fine with it.
> >>>>>>>>>
> >>>>>>>>> It means that if someone who is not RM directly commits to the
> >> release
> >>>>>>> branch, the commit will be reverted.
> >>>>>>>>> And that from the beginning of the branching…
> >>>>>>>> I agree and we can even go as far as reverting fixes that are
> >>>>>>>> cherry-picked in favour of merged forward.
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> IMHO, I think this would be a good step but I don’t think it goes
> >> far
> >>>>>>> enough.
> >>>>>>>> Agreed here as well but let's take the step while discussing
> further
> >>>>>>>> steps and not implement to much process as well
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> This still uses a paradigm where a release is made from a release
> >>>>>>> branch that was started from an unstable development branch.
> >>>>>>>>> Hence you still need *extensive* QA.
> >>>>>>>> The problem here is that there is no stable point to fork from at
> >> the
> >>>>>>>> moment. We will get there and we shouldn't stop taking steps in
> that
> >>>>>>>> direction.
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> If we truly want to release faster, we need to release from the
> >> same
> >>>>>>> QA’d branch time after time….a release needs to be based on a
> >> previous
> >>>>>>> release
> >>>>>>>>>
> >>>>>>>>> Basically, we need a rolling release cycle. That will have the
> >> added
> >>>>>>> benefit to not leave releases behind and have to focus on
> >> backporting.
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Please comments :-)
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>> Daan
> >>>>>>>
> >>>>
> >>
> >>
>
>

Re: [DISCUSS] 4.6 release management

Posted by sebgoa <ru...@gmail.com>.
On May 1, 2015, at 12:52 AM, Pierre-Luc Dion <pd...@apache.org> wrote:

> Hi,
> 
> In my mind it was kind of making more sense to start by keeping 4.6 into a
> separate branch, enforce pull-requests and deploy the CI. smaller step but
> faster result, and from there, once we get stable with the CI

I hear you.

But we have waited for way too long for better CI. I see great efforts in that direction.
But I personally do not want to wait any longer to make a move.

We do open source, we should have fun, take risks, move fast, fail fast, recover etc….

so let's JFDI

> and git flow;
> move into master, do fastest releases cycle. If we consider we can do all
> that starting in 4.6, I'm all for it!


Is there really a difference between creating a 4.6 and doing what you say, and tagging master (start) and doing it on master leading to 4.6 release ?

Assuming the QA does not improve, 4.6 would not be worse than 4.5. If we can improve a bit on the QA then we win.
Plus I think a different commit model will help a lot in quality.

> 
> Marcus: are you preparing a proposal on this? wiki page? I can help
> 

We can do this proposal on email..and once we have consensus write it up for archive in the wiki.
If we move to the wiki now, this effort is going to die.

> Seb: doesn't the vote would confirm the consensus?
> 

if we have consensus no need for vote.

> Raja:  do we have any documentation somewhere on how to use, contribute to
> the smoke test? that could be our start for the CI tests?
> 
> 
> Cheers
> 
> 
> On Thu, Apr 30, 2015 at 3:58 AM, Sebastien Goasguen <ru...@gmail.com>
> wrote:
> 
>> 
>>> On Apr 29, 2015, at 9:49 PM, Marcus <sh...@gmail.com> wrote:
>>> 
>>> After reviewing the history as mentioned by Daan, unless we propose
>>> and vote on a newer workflow model I think the best we can do is to
>>> simply be more strict about commits to master. They all need to be
>>> merges that have been tested against master before merge. This will in
>>> theory make master more stable, but doesn't really change the workflow
>>> we've already agreed upon and have been working under (although
>>> bugfixes sometimes were not coming in from branches, and cherry-picked
>>> bugfixes from branches will need to go into a branch first, tested
>>> against master, and merged to master). We can essentially set a date
>>> and do that any time, with some advance notice that direct commits
>>> will be reverted.
>> 
>> Yes +1.
>> 
>> -Set a date
>> -Tag master for reference
>> -Find a volunteer or two to RM master
>> -automatic revert on master if not from RM
>> -all commits to master come from PR, need clear review and green tests
>> -harden master (basic QA process), release 4.6 as a tag on master
>> -all features and fixes need to be made on branches or forks and onus is
>> on devs to rebase to master
>> -brings everyone onto 4.6 (make sure we have upgrade paths from 4.3, 4.4,
>> etc)
>> -from there forward only maintain a linear release through master
>> 
>> Feel free to add, tweak
>> 
>> PS: No need to vote if we have consensus. Taking a clue from ASF members,
>> votes should be avoided at all cost, they mean that we do not have clear
>> consensus.
>> 
>> 
>>> 
>>> On Sat, Apr 18, 2015 at 12:50 AM, Sebastien Goasguen <ru...@gmail.com>
>> wrote:
>>>> 
>>>>> On Apr 18, 2015, at 8:36 AM, Marcus <sh...@gmail.com> wrote:
>>>>> 
>>>>> Have they diverged that much? Due to cherry-picking, I guess.
>>>>> Otherwise you should be able to do it cleanly.
>>>>> 
>>>>> There's a good opportunity to do this next release. Instead of
>>>>> creating a release branch, we freeze master and start creating dev
>>>>> branches.
>>>> 
>>>> +1
>>>> 
>>>> This just amounts to treating master now like a release branch. Getting
>> back to PL suggestion, that means
>>>> that any commit to master would be through a PR or MERGE request on the
>> ML. Anything else will be reverted by the RM.
>>>> 
>>>> Marcus, do you feel like writing down a little process for this and
>> some dates that we can target.
>>>> It would be nice to do this for 4.6.
>>>> 
>>>>> 
>>>>> On Fri, Apr 17, 2015 at 10:46 PM, Daan Hoogland <
>> daan.hoogland@gmail.com> wrote:
>>>>>> We heavily invested in code now on master. Not looking forward to
>>>>>> backporting that.
>>>>>> 
>>>>>> mobile dev with bilingual spelling checker used (read at your own
>> risk)
>>>>>> Op 17 apr. 2015 21:02 schreef "Marcus" <sh...@gmail.com>:
>>>>>> 
>>>>>>> Well, would we just swap the last release branch with master? Master
>>>>>>> is the dev branch, and the last release is really what we have as a
>>>>>>> stable branch.
>>>>>>> 
>>>>>>> On Fri, Apr 17, 2015 at 8:44 AM, Daan Hoogland <
>> daan.hoogland@gmail.com>
>>>>>>> wrote:
>>>>>>>> On Fri, Apr 17, 2015 at 2:43 AM, Sebastien Goasguen <
>> runseb@gmail.com>
>>>>>>> wrote:
>>>>>>>>> 
>>>>>>>>>> On Apr 17, 2015, at 12:49 AM, Pierre-Luc Dion <pdion@cloudops.com
>>> 
>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>> Today during the CloudStackdays  we did a round table about
>> Release
>>>>>>>>>> management targeting the next 4.6 releases.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> Quick bullet point discussions:
>>>>>>>>>> 
>>>>>>>>>> ideas to change release planning
>>>>>>>>>> 
>>>>>>>>>> - Plugin contribution is complicated because often  a new plugin
>>>>>>> involve
>>>>>>>>>> change on the core:
>>>>>>>>>>   - ex: storage plugin involve changes on Hypervisor code
>>>>>>>>>> - There is an idea of going on a 2 weeks release model which could
>>>>>>>>>> introduce issue the database schema.
>>>>>>>>>> - Database schema version should be different then the application
>>>>>>>>>> version.
>>>>>>>>>> - There is a will to enforce git workflow in 4.6  and trigger
>>>>>>> simulator
>>>>>>>>>> job on  PullRequest.
>>>>>>>>>> - Some people (I'm part of them) are concerned on our current way
>> of
>>>>>>>>>> supporting and back porting fixes to multiple release (4.3.x,
>> 4.4.x,
>>>>>>>>>> 4.5.x). But the current level of confidence against latest release
>>>>>>> is low,
>>>>>>>>>> so that need to be improved.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> So, the main messages is that w'd like to improve the release
>>>>>>> velocity, and
>>>>>>>>>> release branch stability.  so we would like to propose few change
>> in
>>>>>>> the
>>>>>>>>>> way we would add code to the 4.6 branch as follow:
>>>>>>>>>> 
>>>>>>>>>> - All new contribution to 4.6 would be thru Pull Request or merge
>>>>>>> request,
>>>>>>>>>> which would trigger a simulator job, ideally only if that pass
>> the PR
>>>>>>> would
>>>>>>>>>> be accepted and automatically merged.  At this time, I think we
>> pretty
>>>>>>> much
>>>>>>>>>> have everything in place to do that. At a first step we would use
>>>>>>>>>> simulator+marvin jobs then improve tests coverage from there.
>>>>>>>>> 
>>>>>>>>> +1
>>>>>>>>> 
>>>>>>>>> We do need to realize what this means and be all fine with it.
>>>>>>>>> 
>>>>>>>>> It means that if someone who is not RM directly commits to the
>> release
>>>>>>> branch, the commit will be reverted.
>>>>>>>>> And that from the beginning of the branching…
>>>>>>>> I agree and we can even go as far as reverting fixes that are
>>>>>>>> cherry-picked in favour of merged forward.
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> IMHO, I think this would be a good step but I don’t think it goes
>> far
>>>>>>> enough.
>>>>>>>> Agreed here as well but let's take the step while discussing further
>>>>>>>> steps and not implement to much process as well
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> This still uses a paradigm where a release is made from a release
>>>>>>> branch that was started from an unstable development branch.
>>>>>>>>> Hence you still need *extensive* QA.
>>>>>>>> The problem here is that there is no stable point to fork from at
>> the
>>>>>>>> moment. We will get there and we shouldn't stop taking steps in that
>>>>>>>> direction.
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> If we truly want to release faster, we need to release from the
>> same
>>>>>>> QA’d branch time after time….a release needs to be based on a
>> previous
>>>>>>> release
>>>>>>>>> 
>>>>>>>>> Basically, we need a rolling release cycle. That will have the
>> added
>>>>>>> benefit to not leave releases behind and have to focus on
>> backporting.
>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> Please comments :-)
>>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> --
>>>>>>>> Daan
>>>>>>> 
>>>> 
>> 
>>