Re: implementing git workflow

2014-08-06 Thread Daan Hoogland
I don't think we should hold on improving our way of working just
because it is not perfect yet. Some things are unclear so we can't do
those. Other things are perfectly clear and need to wait for nothing
else. That doesn't mean that a second vote isn't needed. It is if not
for anything else then for making sure we all want to go in the same
direction. I posted a lengthy reply on the vote thread to answer any
concerns and provoke more discussion. Let's see if that breeds further
ideas and then decide on a next phase/vote.

makes sense?

On Wed, Aug 6, 2014 at 6:23 AM, Rajani Karuturi
rajani.karut...@citrix.com wrote:
 For a proposal which got all +1’s[1] what are the next steps to do?? It was 
 made clear on the voting thread that required branching changes would be done 
 if the vote passes[2]

 Though the content in the document changed, the original proposal hasn’t 
 changed. Its still the same.
 It is explained in details with all the commands and more details in the 
 wiki. Hence there is quite a bit of text changes. It is not a diversion from 
 what is already discussed.

 [1] http://markmail.org/message/h7nh6ozseien7ezh
 [2] http://markmail.org/message/u7k6wv5kslb4ysyn

 ~Rajani



 On 06-Aug-2014, at 12:56 am, David Nalley 
 da...@gnsa.usmailto:da...@gnsa.us wrote:

 On Tue, Aug 5, 2014 at 2:51 PM, Alena Prokharchyk
 alena.prokharc...@citrix.commailto:alena.prokharc...@citrix.com wrote:
 I think we should hold on with the git workflow implementation till all
 the decisions on the items written by Leo, are discussed and finalized.

 The very beginning of ³git workflow vote² shows that the vote was just to
 get people opinion on the proposal. Before adopting it and cutting the
 develop branch, all the questions should be cleared out.


 I agree with Alena - the vote was framed as opinion, not adoption.
 Moreover, the document voted on has been changed ~10 times since we
 started the vote, and the differences are substantial:

 https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=30738915selectedPageVersions=32selectedPageVersions=22

 Agreement to do something and the following implementation are not
 necessarily instantaneous.




-- 
Daan


Re: implementing git workflow

2014-08-06 Thread Rajani Karuturi
I added a pre push hook to the [wiki page] which rejects any commits which 
doesn’t start with ‘Merge branch’ on master


[wiki page] 
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-githooks


~Rajani



On 05-Aug-2014, at 6:48 pm, Daan Hoogland 
daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

That sound good to me

On Tue, Aug 5, 2014 at 2:15 PM, Rajani Karuturi
rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:

On 05-Aug-2014, at 4:47 pm, Daan Hoogland 
daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

On Tue, Aug 5, 2014 at 12:45 PM, Rohit Yadav 
rohit.ya...@shapeblue.commailto:rohit.ya...@shapeblue.com wrote:
1. Can we enable a git hook to prevent the commits to master post the switch?

It’s possible theoretically but to do that in less than 48 hours could be a 
challenge, you can open a ticket on JIRA/ASF-infra or contact the fine folks on 
ASF infra such as humbledooh (irc etc.).


Let's not do this. Next problem will be who and when can commit on
master. Committers have responsibility to do this and to do it at the
right time.


agreed. Will try to update the wiki with some pre-commit hook which committers 
can use locally.

--
Daan

~Rajani



--
Daan



Re: implementing git workflow

2014-08-06 Thread Alena Prokharchyk
Agree with Daan. The first vote was needed to get the peoples opinions on
whether we need to change our current git model (we certainly do as there
are so many problems in the current flow), and the article was just the
point of reference on how other people do it on the field. Now we have to
see what exactly would benefit CS from this model, and what won’t be
applicable or useful at all. There are many software models, and what
suits one, might not be applicable to another.

So only after all the questions are cleared out and the process is
documented, we should start the second vote. And I think we can’t change
the document after the vote has started; it makes previous voting
obsolete. Only after the second vote passes, we can start implementing it.


Thanks,
Alena.

On 8/5/14, 11:05 PM, Daan Hoogland daan.hoogl...@gmail.com wrote:

I don't think we should hold on improving our way of working just
because it is not perfect yet. Some things are unclear so we can't do
those. Other things are perfectly clear and need to wait for nothing
else. That doesn't mean that a second vote isn't needed. It is if not
for anything else then for making sure we all want to go in the same
direction. I posted a lengthy reply on the vote thread to answer any
concerns and provoke more discussion. Let's see if that breeds further
ideas and then decide on a next phase/vote.

makes sense?

On Wed, Aug 6, 2014 at 6:23 AM, Rajani Karuturi
rajani.karut...@citrix.com wrote:
 For a proposal which got all +1’s[1] what are the next steps to do?? It
was made clear on the voting thread that required branching changes
would be done if the vote passes[2]

 Though the content in the document changed, the original proposal
hasn’t changed. Its still the same.
 It is explained in details with all the commands and more details in
the wiki. Hence there is quite a bit of text changes. It is not a
diversion from what is already discussed.

 [1] http://markmail.org/message/h7nh6ozseien7ezh
 [2] http://markmail.org/message/u7k6wv5kslb4ysyn

 ~Rajani



 On 06-Aug-2014, at 12:56 am, David Nalley
da...@gnsa.usmailto:da...@gnsa.us wrote:

 On Tue, Aug 5, 2014 at 2:51 PM, Alena Prokharchyk
 alena.prokharc...@citrix.commailto:alena.prokharc...@citrix.com
wrote:
 I think we should hold on with the git workflow implementation till all
 the decisions on the items written by Leo, are discussed and finalized.

 The very beginning of ³git workflow vote² shows that the vote was just
to
 get people opinion on the proposal. Before adopting it and cutting the
 develop branch, all the questions should be cleared out.


 I agree with Alena - the vote was framed as opinion, not adoption.
 Moreover, the document voted on has been changed ~10 times since we
 started the vote, and the differences are substantial:

 
https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageI
d=30738915selectedPageVersions=32selectedPageVersions=22

 Agreement to do something and the following implementation are not
 necessarily instantaneous.




-- 
Daan



Re: implementing git workflow

2014-08-06 Thread Rajani Karuturi
I am not advocating that we should follow git-flow.

If you see my original [proposal], it has no mention of git-flow. I just
felt that we are abusing git and put some points which could help us
improve.

Git-flow is something which I liked and felt that it would make us treat
git well.

I am okay with any proposal which addresses those.


I suggest not to discuss on this anymore. We had long discussions and still
failed to reach consensus.

lets put up a new one and I would be happy to vote.


David/Alena/anyone else,

Can you take this up and put a proposal for vote?



[proposal] http://markmail.org/message/dawo4oannrdgpfgs


On Wed, Aug 6, 2014 at 10:37 PM, Alena Prokharchyk 
alena.prokharc...@citrix.com wrote:

 Agree with Daan. The first vote was needed to get the peoples opinions on
 whether we need to change our current git model (we certainly do as there
 are so many problems in the current flow), and the article was just the
 point of reference on how other people do it on the field. Now we have to
 see what exactly would benefit CS from this model, and what won’t be
 applicable or useful at all. There are many software models, and what
 suits one, might not be applicable to another.

 So only after all the questions are cleared out and the process is
 documented, we should start the second vote. And I think we can’t change
 the document after the vote has started; it makes previous voting
 obsolete. Only after the second vote passes, we can start implementing it.


 Thanks,
 Alena.

 On 8/5/14, 11:05 PM, Daan Hoogland daan.hoogl...@gmail.com wrote:

 I don't think we should hold on improving our way of working just
 because it is not perfect yet. Some things are unclear so we can't do
 those. Other things are perfectly clear and need to wait for nothing
 else. That doesn't mean that a second vote isn't needed. It is if not
 for anything else then for making sure we all want to go in the same
 direction. I posted a lengthy reply on the vote thread to answer any
 concerns and provoke more discussion. Let's see if that breeds further
 ideas and then decide on a next phase/vote.
 
 makes sense?
 
 On Wed, Aug 6, 2014 at 6:23 AM, Rajani Karuturi
 rajani.karut...@citrix.com wrote:
  For a proposal which got all +1’s[1] what are the next steps to do?? It
 was made clear on the voting thread that required branching changes
 would be done if the vote passes[2]
 
  Though the content in the document changed, the original proposal
 hasn’t changed. Its still the same.
  It is explained in details with all the commands and more details in
 the wiki. Hence there is quite a bit of text changes. It is not a
 diversion from what is already discussed.
 
  [1] http://markmail.org/message/h7nh6ozseien7ezh
  [2] http://markmail.org/message/u7k6wv5kslb4ysyn
 
  ~Rajani
 
 
 
  On 06-Aug-2014, at 12:56 am, David Nalley
 da...@gnsa.usmailto:da...@gnsa.us wrote:
 
  On Tue, Aug 5, 2014 at 2:51 PM, Alena Prokharchyk
  alena.prokharc...@citrix.commailto:alena.prokharc...@citrix.com
 wrote:
  I think we should hold on with the git workflow implementation till all
  the decisions on the items written by Leo, are discussed and finalized.
 
  The very beginning of ³git workflow vote² shows that the vote was just
 to
  get people opinion on the proposal. Before adopting it and cutting the
  develop branch, all the questions should be cleared out.
 
 
  I agree with Alena - the vote was framed as opinion, not adoption.
  Moreover, the document voted on has been changed ~10 times since we
  started the vote, and the differences are substantial:
 
 
 
 https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageI
 d=30738915selectedPageVersions=32selectedPageVersions=22
 
  Agreement to do something and the following implementation are not
  necessarily instantaneous.
 
 
 
 
 --
 Daan




-- 
~Rajani


Re: implementing git workflow

2014-08-06 Thread Rajani Karuturi
below mail landed in the wrong thread. wanted to post on the git flow vote
thread. Will post again on that thread for the folks following it.


On Thu, Aug 7, 2014 at 10:08 AM, Rajani Karuturi raj...@apache.org wrote:

 I am not advocating that we should follow git-flow.

 If you see my original [proposal], it has no mention of git-flow. I just
 felt that we are abusing git and put some points which could help us
 improve.

 Git-flow is something which I liked and felt that it would make us treat
 git well.

 I am okay with any proposal which addresses those.


 I suggest not to discuss on this anymore. We had long discussions and
 still failed to reach consensus.

 lets put up a new one and I would be happy to vote.


 David/Alena/anyone else,

 Can you take this up and put a proposal for vote?



 [proposal] http://markmail.org/message/dawo4oannrdgpfgs


 On Wed, Aug 6, 2014 at 10:37 PM, Alena Prokharchyk 
 alena.prokharc...@citrix.com wrote:

 Agree with Daan. The first vote was needed to get the peoples opinions on
 whether we need to change our current git model (we certainly do as there
 are so many problems in the current flow), and the article was just the
 point of reference on how other people do it on the field. Now we have to
 see what exactly would benefit CS from this model, and what won’t be
 applicable or useful at all. There are many software models, and what
 suits one, might not be applicable to another.

 So only after all the questions are cleared out and the process is
 documented, we should start the second vote. And I think we can’t change
 the document after the vote has started; it makes previous voting
 obsolete. Only after the second vote passes, we can start implementing it.


 Thanks,
 Alena.

 On 8/5/14, 11:05 PM, Daan Hoogland daan.hoogl...@gmail.com wrote:

 I don't think we should hold on improving our way of working just
 because it is not perfect yet. Some things are unclear so we can't do
 those. Other things are perfectly clear and need to wait for nothing
 else. That doesn't mean that a second vote isn't needed. It is if not
 for anything else then for making sure we all want to go in the same
 direction. I posted a lengthy reply on the vote thread to answer any
 concerns and provoke more discussion. Let's see if that breeds further
 ideas and then decide on a next phase/vote.
 
 makes sense?
 
 On Wed, Aug 6, 2014 at 6:23 AM, Rajani Karuturi
 rajani.karut...@citrix.com wrote:
  For a proposal which got all +1’s[1] what are the next steps to do?? It
 was made clear on the voting thread that required branching changes
 would be done if the vote passes[2]
 
  Though the content in the document changed, the original proposal
 hasn’t changed. Its still the same.
  It is explained in details with all the commands and more details in
 the wiki. Hence there is quite a bit of text changes. It is not a
 diversion from what is already discussed.
 
  [1] http://markmail.org/message/h7nh6ozseien7ezh
  [2] http://markmail.org/message/u7k6wv5kslb4ysyn
 
  ~Rajani
 
 
 
  On 06-Aug-2014, at 12:56 am, David Nalley
 da...@gnsa.usmailto:da...@gnsa.us wrote:
 
  On Tue, Aug 5, 2014 at 2:51 PM, Alena Prokharchyk
  alena.prokharc...@citrix.commailto:alena.prokharc...@citrix.com
 wrote:
  I think we should hold on with the git workflow implementation till all
  the decisions on the items written by Leo, are discussed and finalized.
 
  The very beginning of ³git workflow vote² shows that the vote was just
 to
  get people opinion on the proposal. Before adopting it and cutting the
  develop branch, all the questions should be cleared out.
 
 
  I agree with Alena - the vote was framed as opinion, not adoption.
  Moreover, the document voted on has been changed ~10 times since we
  started the vote, and the differences are substantial:
 
 
 
 https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageI
 d=30738915selectedPageVersions=32selectedPageVersions=22
 
  Agreement to do something and the following implementation are not
  necessarily instantaneous.
 
 
 
 
 --
 Daan




 --
 ~Rajani




-- 
~Rajani


Re: implementing git workflow

2014-08-05 Thread Daan Hoogland
Leo, great work. I should volunteer you more often. (volunteer me back at will)

Rajani, Yes you are absolutaly right on the one hand. No, the
community had decided that it couldn't support beyond the next release
as it is to small, on the other hand. In the middle: By just saying
this you have provided a model for parties that base products on ACS
to support based on the apache source tree. I think we should adhere
to it. I will look into it to see if we can for 4.4 (to replace the
model I have been proposing in mails over the last couple of days.

On Tue, Aug 5, 2014 at 6:38 AM, Rajani Karuturi
rajani.karut...@citrix.com wrote:
 Hi Leo,
 Thanks for the detailed wiki.

 shouldn’t we use git flow support for LTS releases? 
 http://stackoverflow.com/a/16866118/201514


 ~Rajani



 On 04-Aug-2014, at 7:29 pm, Leo Simons lsim...@schubergphilis.com wrote:

 Hey folks,

 Since Daan volunteered me to do some docs, I’ve updated Rohit’s page at
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git

 with additional details.

 I went back through all the e-mails on the subject to find 
 questions/concerns, addressed the ones I think have consensus and 
 highlighted a few places where additional decision/discussion may be needed.

 Remaining topics I’m not sure about:
 * when to cut over
 * how to cut over
 * policy for who merges to release branches
 * policy for adding features in micro releases
 * what to name hot fixes

 Comments on each below.

 When to cut over
 
 I think docs are quite sufficient now. I’d personally suggest to just do it.

 Since the vote is done I think any committer should feel free to pick up the 
 ball :)

 How to cut over
 ---
 * Someone has to make the branches and announce the flip on the mailing list.
 * Everyone has to flip / git flow init / etc.
 * Someone has to update jenkins.buildacloud.org to build the new develop 
 branch.
 * ???
 * Profit.

 Again, I’d personally suggest to just do it.

 Policy for who merges to release branches
 -
 There was some unresolved discussion about
 1. when it is ok to directly commit to the release branch
 2. when it is ok for other people than the release manager to merge to the 
 release branch
 3. when/how to do a freeze of a release branch

 Git flow says:
 1. basically never
 2. what’s a release manager?
 3. never, cut release branch == feature freeze, tag release == freeze

 Personally I would suggest
 1. never unless you are doing release management (i.e. version bump) commits
 2. always as long as you are confident and prepared to suffer the wrath of 
 doing it wrong, ask the release manager to do it if you are not confident
 3. at the jurisdiction of the release manager

 Policy for adding features onto release branches
 
 It has been cloudstack practice to include new features (or enable features) 
 in micro releases.

 I did document how to do this within the git-flow model, but I strongly 
 suggest to simply stop doing it.

 I suggest the policy is that this can be done as an exception to the rule 
 after discussion on the mailing list, using lazy consensus, with the release 
 manager doing the merge to the release branch.

 what to name hotfixes
 -
 hotfix/jira-ticket

 the -summary should be descriptive and is optional.

 hotfix/4.4-jira-ticket

 for fixes to 4.4.x.



 cheers,



 Leo





-- 
Daan


Re: implementing git workflow

2014-08-05 Thread Rajani Karuturi
Daan,
I think we should do the branch related changes[1] and make the switch. Are we 
waiting for a RM for 4.5?

[1] 
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


~Rajani



On 05-Aug-2014, at 1:01 pm, Daan Hoogland 
daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

Leo, great work. I should volunteer you more often. (volunteer me back at will)

Rajani, Yes you are absolutaly right on the one hand. No, the
community had decided that it couldn't support beyond the next release
as it is to small, on the other hand. In the middle: By just saying
this you have provided a model for parties that base products on ACS
to support based on the apache source tree. I think we should adhere
to it. I will look into it to see if we can for 4.4 (to replace the
model I have been proposing in mails over the last couple of days.

On Tue, Aug 5, 2014 at 6:38 AM, Rajani Karuturi
rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
Hi Leo,
Thanks for the detailed wiki.

shouldn’t we use git flow support for LTS releases? 
http://stackoverflow.com/a/16866118/201514


~Rajani



On 04-Aug-2014, at 7:29 pm, Leo Simons 
lsim...@schubergphilis.commailto:lsim...@schubergphilis.com wrote:

Hey folks,

Since Daan volunteered me to do some docs, I’ve updated Rohit’s page at
  https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git

with additional details.

I went back through all the e-mails on the subject to find questions/concerns, 
addressed the ones I think have consensus and highlighted a few places where 
additional decision/discussion may be needed.

Remaining topics I’m not sure about:
* when to cut over
* how to cut over
* policy for who merges to release branches
* policy for adding features in micro releases
* what to name hot fixes

Comments on each below.

When to cut over

I think docs are quite sufficient now. I’d personally suggest to just do it.

Since the vote is done I think any committer should feel free to pick up the 
ball :)

How to cut over
---
* Someone has to make the branches and announce the flip on the mailing list.
* Everyone has to flip / git flow init / etc.
* Someone has to update jenkins.buildacloud.orghttp://jenkins.buildacloud.org 
to build the new develop branch.
* ???
* Profit.

Again, I’d personally suggest to just do it.

Policy for who merges to release branches
-
There was some unresolved discussion about
1. when it is ok to directly commit to the release branch
2. when it is ok for other people than the release manager to merge to the 
release branch
3. when/how to do a freeze of a release branch

Git flow says:
1. basically never
2. what’s a release manager?
3. never, cut release branch == feature freeze, tag release == freeze

Personally I would suggest
1. never unless you are doing release management (i.e. version bump) commits
2. always as long as you are confident and prepared to suffer the wrath of 
doing it wrong, ask the release manager to do it if you are not confident
3. at the jurisdiction of the release manager

Policy for adding features onto release branches

It has been cloudstack practice to include new features (or enable features) in 
micro releases.

I did document how to do this within the git-flow model, but I strongly suggest 
to simply stop doing it.

I suggest the policy is that this can be done as an exception to the rule after 
discussion on the mailing list, using lazy consensus, with the release manager 
doing the merge to the release branch.

what to name hotfixes
-
hotfix/jira-ticket

the -summary should be descriptive and is optional.

hotfix/4.4-jira-ticket

for fixes to 4.4.x.



cheers,



Leo





--
Daan



Re: implementing git workflow

2014-08-05 Thread Daan Hoogland
On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
rajani.karut...@citrix.com wrote:
 Daan,
 I think we should do the branch related changes[1] and make the switch. Are 
 we waiting for a RM for 4.5?

 [1] 
 https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


 ~Rajani


No Rajani, We don't need an RM to make the switch (as Leo pointed
out). Yours the honor as you came up with the idea. Let's go for it.
I'll model the 4.4 work as much as possible towards your example.

-- 
Daan


Re: implementing git workflow

2014-08-05 Thread Rajani Karuturi
Hi Daan,

I created develop branch on commit cc725e53e304781148a6bf077e05d844fe88207c and 
pushed it.


I am trying to create the  4.5 branch. For this, I need to change the version 
number in develop branch.
Release Procedure wiki mention a script to change to version number. [1]
Is it safe to just run it?

Should we wait for 4.5 RM to create the release the branch?

[1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+Procedure




~Rajani



On 05-Aug-2014, at 2:27 pm, Daan Hoogland 
daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
Daan,
I think we should do the branch related changes[1] and make the switch. Are we 
waiting for a RM for 4.5?

[1] 
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


~Rajani


No Rajani, We don't need an RM to make the switch (as Leo pointed
out). Yours the honor as you came up with the idea. Let's go for it.
I'll model the 4.4 work as much as possible towards your example.

--
Daan



RE: implementing git workflow

2014-08-05 Thread Santhosh Edukulla
Post the proposal vote, we should have given some time buffer, or prior 
intimation of a day or two before this switch i believe. There were still 
people using master till today for their development purpose, holding on it at 
sudden may not be appropriate.

Regards,
Santhosh

From: Rajani Karuturi [rajani.karut...@citrix.com]
Sent: Tuesday, August 05, 2014 5:46 AM
To: dev@cloudstack.apache.org
Subject: Re: implementing git workflow

Hi Daan,

I created develop branch on commit cc725e53e304781148a6bf077e05d844fe88207c and 
pushed it.


I am trying to create the  4.5 branch. For this, I need to change the version 
number in develop branch.
Release Procedure wiki mention a script to change to version number. [1]
Is it safe to just run it?

Should we wait for 4.5 RM to create the release the branch?

[1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+Procedure




~Rajani



On 05-Aug-2014, at 2:27 pm, Daan Hoogland 
daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
Daan,
I think we should do the branch related changes[1] and make the switch. Are we 
waiting for a RM for 4.5?

[1] 
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


~Rajani


No Rajani, We don't need an RM to make the switch (as Leo pointed
out). Yours the honor as you came up with the idea. Let's go for it.
I'll model the 4.4 work as much as possible towards your example.

--
Daan



Re: implementing git workflow

2014-08-05 Thread Rajani Karuturi
The switch to the new git flow is postponed to 7th aug.

we have two open questions to answer before that:
1. Can we enable a git hook to prevent the commits to master post the switch?
2. should we create the release branch as well or wait for RM to do it?


~Rajani



On 05-Aug-2014, at 3:16 pm, Rajani Karuturi 
rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:

Hi Daan,

I created develop branch on commit cc725e53e304781148a6bf077e05d844fe88207c and 
pushed it.


I am trying to create the  4.5 branch. For this, I need to change the version 
number in develop branch.
Release Procedure wiki mention a script to change to version number. [1]
Is it safe to just run it?

Should we wait for 4.5 RM to create the release the branch?

[1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+Procedure




~Rajani



On 05-Aug-2014, at 2:27 pm, Daan Hoogland 
daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
Daan,
I think we should do the branch related changes[1] and make the switch. Are we 
waiting for a RM for 4.5?

[1] 
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


~Rajani


No Rajani, We don't need an RM to make the switch (as Leo pointed
out). Yours the honor as you came up with the idea. Let's go for it.
I'll model the 4.4 work as much as possible towards your example.

--
Daan




Re: implementing git workflow

2014-08-05 Thread Daan Hoogland
Santhosh, Though in principle you are right I hardly think this can be
called suddenly.

On Tue, Aug 5, 2014 at 11:52 AM, Santhosh Edukulla
santhosh.eduku...@citrix.com wrote:
 Post the proposal vote, we should have given some time buffer, or prior 
 intimation of a day or two before this switch i believe. There were still 
 people using master till today for their development purpose, holding on it 
 at sudden may not be appropriate.

 Regards,
 Santhosh
 
 From: Rajani Karuturi [rajani.karut...@citrix.com]
 Sent: Tuesday, August 05, 2014 5:46 AM
 To: dev@cloudstack.apache.org
 Subject: Re: implementing git workflow

 Hi Daan,

 I created develop branch on commit cc725e53e304781148a6bf077e05d844fe88207c 
 and pushed it.


 I am trying to create the  4.5 branch. For this, I need to change the version 
 number in develop branch.
 Release Procedure wiki mention a script to change to version number. [1]
 Is it safe to just run it?

 Should we wait for 4.5 RM to create the release the branch?

 [1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+Procedure




 ~Rajani



 On 05-Aug-2014, at 2:27 pm, Daan Hoogland 
 daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

 On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
 rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
 Daan,
 I think we should do the branch related changes[1] and make the switch. Are 
 we waiting for a RM for 4.5?

 [1] 
 https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


 ~Rajani


 No Rajani, We don't need an RM to make the switch (as Leo pointed
 out). Yours the honor as you came up with the idea. Let's go for it.
 I'll model the 4.4 work as much as possible towards your example.

 --
 Daan




-- 
Daan


Re: implementing git workflow

2014-08-05 Thread Daan Hoogland
ad 1. Git hooks in the central repo require assistence of apache
infra. I think all committers should be able to do this. If people
don't comply their work should be reverted.
ad 2. We shouldn't need an RM. The gitflow model implies that
committers share the load of RM.

On Tue, Aug 5, 2014 at 12:35 PM, Rajani Karuturi
rajani.karut...@citrix.com wrote:
 The switch to the new git flow is postponed to 7th aug.

 we have two open questions to answer before that:
 1. Can we enable a git hook to prevent the commits to master post the switch?
 2. should we create the release branch as well or wait for RM to do it?


 ~Rajani



 On 05-Aug-2014, at 3:16 pm, Rajani Karuturi 
 rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:

 Hi Daan,

 I created develop branch on commit cc725e53e304781148a6bf077e05d844fe88207c 
 and pushed it.


 I am trying to create the  4.5 branch. For this, I need to change the version 
 number in develop branch.
 Release Procedure wiki mention a script to change to version number. [1]
 Is it safe to just run it?

 Should we wait for 4.5 RM to create the release the branch?

 [1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+Procedure




 ~Rajani



 On 05-Aug-2014, at 2:27 pm, Daan Hoogland 
 daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

 On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
 rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
 Daan,
 I think we should do the branch related changes[1] and make the switch. Are 
 we waiting for a RM for 4.5?

 [1] 
 https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


 ~Rajani


 No Rajani, We don't need an RM to make the switch (as Leo pointed
 out). Yours the honor as you came up with the idea. Let's go for it.
 I'll model the 4.4 work as much as possible towards your example.

 --
 Daan





-- 
Daan


Re: implementing git workflow

2014-08-05 Thread Rohit Yadav
Hi Rajani,

On 05-Aug-2014, at 12:35 pm, Rajani Karuturi rajani.karut...@citrix.com wrote:

 The switch to the new git flow is postponed to 7th aug.

Thanks for that, this means you’ll do it again on 7th August 00:00UTC?

Meanwhile this means we’re to follow our normal workflow and commit on master.

 we have two open questions to answer before that:
 1. Can we enable a git hook to prevent the commits to master post the switch?

It’s possible theoretically but to do that in less than 48 hours could be a 
challenge, you can open a ticket on JIRA/ASF-infra or contact the fine folks on 
ASF infra such as humbledooh (irc etc.).

 2. should we create the release branch as well or wait for RM to do it?

Since, you’re implementing the gitflow worflow, you should do it (create all 
the necessary branches).

Regards.



 ~Rajani



 On 05-Aug-2014, at 3:16 pm, Rajani Karuturi 
 rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:

 Hi Daan,

 I created develop branch on commit cc725e53e304781148a6bf077e05d844fe88207c 
 and pushed it.


 I am trying to create the  4.5 branch. For this, I need to change the version 
 number in develop branch.
 Release Procedure wiki mention a script to change to version number. [1]
 Is it safe to just run it?

 Should we wait for 4.5 RM to create the release the branch?

 [1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+Procedure




 ~Rajani



 On 05-Aug-2014, at 2:27 pm, Daan Hoogland 
 daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:

 On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
 rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
 Daan,
 I think we should do the branch related changes[1] and make the switch. Are 
 we waiting for a RM for 4.5?

 [1] 
 https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow


 ~Rajani


 No Rajani, We don't need an RM to make the switch (as Leo pointed
 out). Yours the honor as you came up with the idea. Let's go for it.
 I'll model the 4.4 work as much as possible towards your example.

 --
 Daan



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




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

IaaS Cloud Design  Buildhttp://shapeblue.com/iaas-cloud-design-and-build//
CSForge – rapid IaaS deployment frameworkhttp://shapeblue.com/csforge/
CloudStack Consultinghttp://shapeblue.com/cloudstack-consultancy/
CloudStack Infrastructure 
Supporthttp://shapeblue.com/cloudstack-infrastructure-support/
CloudStack Bootcamp Training Courseshttp://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: implementing git workflow

2014-08-05 Thread Daan Hoogland
On Tue, Aug 5, 2014 at 12:45 PM, Rohit Yadav rohit.ya...@shapeblue.com wrote:
 1. Can we enable a git hook to prevent the commits to master post the switch?

 It’s possible theoretically but to do that in less than 48 hours could be a 
 challenge, you can open a ticket on JIRA/ASF-infra or contact the fine folks 
 on ASF infra such as humbledooh (irc etc.).


Let's not do this. Next problem will be who and when can commit on
master. Committers have responsibility to do this and to do it at the
right time.

-- 
Daan


Re: implementing git workflow

2014-08-05 Thread Rajani Karuturi

~Rajani



On 05-Aug-2014, at 4:15 pm, Rohit Yadav rohit.ya...@shapeblue.com wrote:

 Hi Rajani,
 
 On 05-Aug-2014, at 12:35 pm, Rajani Karuturi rajani.karut...@citrix.com 
 wrote:
 
 The switch to the new git flow is postponed to 7th aug.
 
 Thanks for that, this means you’ll do it again on 7th August 00:00UTC?

I am planning to do this 48 hrs from now, which would be around 5:00PM IST on 
7th august.

 
 Meanwhile this means we’re to follow our normal workflow and commit on master.
 
 we have two open questions to answer before that:
 1. Can we enable a git hook to prevent the commits to master post the switch?
 
 It’s possible theoretically but to do that in less than 48 hours could be a 
 challenge, you can open a ticket on JIRA/ASF-infra or contact the fine folks 
 on ASF infra such as humbledooh (irc etc.).
 
 2. should we create the release branch as well or wait for RM to do it?
 
 Since, you’re implementing the gitflow worflow, you should do it (create all 
 the necessary branches).
 
 Regards.
 
 
 
 ~Rajani
 
 
 
 On 05-Aug-2014, at 3:16 pm, Rajani Karuturi 
 rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
 
 Hi Daan,
 
 I created develop branch on commit cc725e53e304781148a6bf077e05d844fe88207c 
 and pushed it.
 
 
 I am trying to create the  4.5 branch. For this, I need to change the 
 version number in develop branch.
 Release Procedure wiki mention a script to change to version number. [1]
 Is it safe to just run it?
 
 Should we wait for 4.5 RM to create the release the branch?
 
 [1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+Procedure
 
 
 
 
 ~Rajani
 
 
 
 On 05-Aug-2014, at 2:27 pm, Daan Hoogland 
 daan.hoogl...@gmail.commailto:daan.hoogl...@gmail.com wrote:
 
 On Tue, Aug 5, 2014 at 10:52 AM, Rajani Karuturi
 rajani.karut...@citrix.commailto:rajani.karut...@citrix.com wrote:
 Daan,
 I think we should do the branch related changes[1] and make the switch. Are 
 we waiting for a RM for 4.5?
 
 [1] 
 https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git#Git-Movetogit-flow
 
 
 ~Rajani
 
 
 No Rajani, We don't need an RM to make the switch (as Leo pointed
 out). Yours the honor as you came up with the idea. Let's go for it.
 I'll model the 4.4 work as much as possible towards your example.
 
 --
 Daan
 
 
 
 Regards,
 Rohit Yadav
 Software Architect, ShapeBlue
 M. +41 779015219 | rohit.ya...@shapeblue.com
 Blog: bhaisaab.org | Twitter: @_bhaisaab
 
 
 
 
 Find out more about ShapeBlue and our range of CloudStack related services
 
 IaaS Cloud Design  Buildhttp://shapeblue.com/iaas-cloud-design-and-build//
 CSForge – rapid IaaS deployment frameworkhttp://shapeblue.com/csforge/
 CloudStack Consultinghttp://shapeblue.com/cloudstack-consultancy/
 CloudStack Infrastructure 
 Supporthttp://shapeblue.com/cloudstack-infrastructure-support/
 CloudStack Bootcamp Training 
 Courseshttp://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: implementing git workflow

2014-08-05 Thread Rajani Karuturi

On 05-Aug-2014, at 4:47 pm, Daan Hoogland daan.hoogl...@gmail.com wrote:

 On Tue, Aug 5, 2014 at 12:45 PM, Rohit Yadav rohit.ya...@shapeblue.com 
 wrote:
 1. Can we enable a git hook to prevent the commits to master post the 
 switch?
 
 It’s possible theoretically but to do that in less than 48 hours could be a 
 challenge, you can open a ticket on JIRA/ASF-infra or contact the fine folks 
 on ASF infra such as humbledooh (irc etc.).
 
 
 Let's not do this. Next problem will be who and when can commit on
 master. Committers have responsibility to do this and to do it at the
 right time.
 

agreed. Will try to update the wiki with some pre-commit hook which committers 
can use locally. 

 -- 
 Daan

~Rajani

Re: implementing git workflow

2014-08-05 Thread Daan Hoogland
That sound good to me

On Tue, Aug 5, 2014 at 2:15 PM, Rajani Karuturi
rajani.karut...@citrix.com wrote:

 On 05-Aug-2014, at 4:47 pm, Daan Hoogland daan.hoogl...@gmail.com wrote:

 On Tue, Aug 5, 2014 at 12:45 PM, Rohit Yadav rohit.ya...@shapeblue.com 
 wrote:
 1. Can we enable a git hook to prevent the commits to master post the 
 switch?

 It’s possible theoretically but to do that in less than 48 hours could be a 
 challenge, you can open a ticket on JIRA/ASF-infra or contact the fine 
 folks on ASF infra such as humbledooh (irc etc.).


 Let's not do this. Next problem will be who and when can commit on
 master. Committers have responsibility to do this and to do it at the
 right time.


 agreed. Will try to update the wiki with some pre-commit hook which 
 committers can use locally.

 --
 Daan

 ~Rajani



-- 
Daan


Re: implementing git workflow

2014-08-05 Thread David Nalley
  we have two open questions to answer before that:
  1. Can we enable a git hook to prevent the commits to master post the 
  switch?

 It’s possible theoretically but to do that in less than 48 hours could be a 
 challenge, you can open a ticket on JIRA/ASF-infra or contact the fine folks 
 on ASF infra such as humbledooh (irc etc.).


Let me preemptively say that Infra will not implement one-off commit
hooks for a repo. These become difficult to maintain at scale (we have
close to 300 writable repos) and is often causes a performance problem
at scale, which becomes difficult to watch for.

--David


Re: implementing git workflow

2014-08-05 Thread Alena Prokharchyk
I think we should hold on with the git workflow implementation till all
the decisions on the items written by Leo, are discussed and finalized.

The very beginning of ³git workflow vote² shows that the vote was just to
get people opinion on the proposal. Before adopting it and cutting the
develop branch, all the questions should be cleared out.


Rohit Yadav

+1

Hugo, I think we started this voting thread to get opinion on the
proposal. I feel it may need some iteration and community agreement before
we adopt it.

Suggestions, flames and opinions are welcome.

Regards.


On 31-Jul-2014, at 12:43 pm, Hugo Trippaers h...@trippaers.nl wrote:

Rajani,

To make it clear for everyone. This is the vote to adopt this new way of
working right? Or is it just to get an opinion on the proposal?

If it is indeed the vote to adopt this way of working it means that all
committers will change how we interact with the branches in the
CloudStack git.

It¹s is a good thing in my book, but we need to be clear what the
expected result is when this vote has concluded in 72 hours.

Cheers,

Hugo



-Alena.



On 8/4/14, 6:59 AM, Leo Simons lsim...@schubergphilis.com wrote:

Hey folks,

Since Daan volunteered me to do some docs, I¹ve updated Rohit¹s page at
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git

with additional details.

I went back through all the e-mails on the subject to find
questions/concerns, addressed the ones I think have consensus and
highlighted a few places where additional decision/discussion may be
needed.

Remaining topics I¹m not sure about:
* when to cut over
* how to cut over
* policy for who merges to release branches
* policy for adding features in micro releases
* what to name hot fixes

Comments on each below.

When to cut over

I think docs are quite sufficient now. I¹d personally suggest to just do
it.

Since the vote is done I think any committer should feel free to pick up
the ball :)

How to cut over
---
* Someone has to make the branches and announce the flip on the mailing
list.
* Everyone has to flip / git flow init / etc.
* Someone has to update jenkins.buildacloud.org to build the new develop
branch.
* ???
* Profit.

Again, I¹d personally suggest to just do it.

Policy for who merges to release branches
-
There was some unresolved discussion about
1. when it is ok to directly commit to the release branch
2. when it is ok for other people than the release manager to merge to
the release branch
3. when/how to do a freeze of a release branch

Git flow says:
1. basically never
2. what¹s a release manager?
3. never, cut release branch == feature freeze, tag release == freeze

Personally I would suggest
1. never unless you are doing release management (i.e. version bump)
commits
2. always as long as you are confident and prepared to suffer the wrath
of doing it wrong, ask the release manager to do it if you are not
confident
3. at the jurisdiction of the release manager

Policy for adding features onto release branches

It has been cloudstack practice to include new features (or enable
features) in micro releases.

I did document how to do this within the git-flow model, but I strongly
suggest to simply stop doing it.

I suggest the policy is that this can be done as an exception to the rule
after discussion on the mailing list, using lazy consensus, with the
release manager doing the merge to the release branch.

what to name hotfixes
-
hotfix/jira-ticket

the -summary should be descriptive and is optional.

hotfix/4.4-jira-ticket

for fixes to 4.4.x.



cheers,



Leo




Re: implementing git workflow

2014-08-05 Thread David Nalley
On Tue, Aug 5, 2014 at 2:51 PM, Alena Prokharchyk
alena.prokharc...@citrix.com wrote:
 I think we should hold on with the git workflow implementation till all
 the decisions on the items written by Leo, are discussed and finalized.

 The very beginning of ³git workflow vote² shows that the vote was just to
 get people opinion on the proposal. Before adopting it and cutting the
 develop branch, all the questions should be cleared out.


I agree with Alena - the vote was framed as opinion, not adoption.
Moreover, the document voted on has been changed ~10 times since we
started the vote, and the differences are substantial:

https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=30738915selectedPageVersions=32selectedPageVersions=22

Agreement to do something and the following implementation are not
necessarily instantaneous.


Re: implementing git workflow

2014-08-05 Thread Rajani Karuturi
For a proposal which got all +1’s[1] what are the next steps to do?? It was 
made clear on the voting thread that required branching changes would be done 
if the vote passes[2]

Though the content in the document changed, the original proposal hasn’t 
changed. Its still the same.
It is explained in details with all the commands and more details in the wiki. 
Hence there is quite a bit of text changes. It is not a diversion from what is 
already discussed.

[1] http://markmail.org/message/h7nh6ozseien7ezh
[2] http://markmail.org/message/u7k6wv5kslb4ysyn

~Rajani



On 06-Aug-2014, at 12:56 am, David Nalley da...@gnsa.usmailto:da...@gnsa.us 
wrote:

On Tue, Aug 5, 2014 at 2:51 PM, Alena Prokharchyk
alena.prokharc...@citrix.commailto:alena.prokharc...@citrix.com wrote:
I think we should hold on with the git workflow implementation till all
the decisions on the items written by Leo, are discussed and finalized.

The very beginning of ³git workflow vote² shows that the vote was just to
get people opinion on the proposal. Before adopting it and cutting the
develop branch, all the questions should be cleared out.


I agree with Alena - the vote was framed as opinion, not adoption.
Moreover, the document voted on has been changed ~10 times since we
started the vote, and the differences are substantial:

https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=30738915selectedPageVersions=32selectedPageVersions=22

Agreement to do something and the following implementation are not
necessarily instantaneous.



Re: implementing git workflow

2014-08-04 Thread Rajani Karuturi
Hi Leo,
Thanks for the detailed wiki. 

shouldn’t we use git flow support for LTS releases? 
http://stackoverflow.com/a/16866118/201514 


~Rajani



On 04-Aug-2014, at 7:29 pm, Leo Simons lsim...@schubergphilis.com wrote:

 Hey folks,
 
 Since Daan volunteered me to do some docs, I’ve updated Rohit’s page at
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Git
 
 with additional details.
 
 I went back through all the e-mails on the subject to find 
 questions/concerns, addressed the ones I think have consensus and highlighted 
 a few places where additional decision/discussion may be needed.
 
 Remaining topics I’m not sure about:
 * when to cut over
 * how to cut over
 * policy for who merges to release branches
 * policy for adding features in micro releases
 * what to name hot fixes
 
 Comments on each below.
 
 When to cut over
 
 I think docs are quite sufficient now. I’d personally suggest to just do it.
 
 Since the vote is done I think any committer should feel free to pick up the 
 ball :)
 
 How to cut over
 ---
 * Someone has to make the branches and announce the flip on the mailing list.
 * Everyone has to flip / git flow init / etc.
 * Someone has to update jenkins.buildacloud.org to build the new develop 
 branch.
 * ???
 * Profit.
 
 Again, I’d personally suggest to just do it.
 
 Policy for who merges to release branches
 -
 There was some unresolved discussion about
 1. when it is ok to directly commit to the release branch
 2. when it is ok for other people than the release manager to merge to the 
 release branch
 3. when/how to do a freeze of a release branch
 
 Git flow says:
 1. basically never
 2. what’s a release manager?
 3. never, cut release branch == feature freeze, tag release == freeze
 
 Personally I would suggest
 1. never unless you are doing release management (i.e. version bump) commits
 2. always as long as you are confident and prepared to suffer the wrath of 
 doing it wrong, ask the release manager to do it if you are not confident
 3. at the jurisdiction of the release manager
 
 Policy for adding features onto release branches
 
 It has been cloudstack practice to include new features (or enable features) 
 in micro releases.
 
 I did document how to do this within the git-flow model, but I strongly 
 suggest to simply stop doing it.
 
 I suggest the policy is that this can be done as an exception to the rule 
 after discussion on the mailing list, using lazy consensus, with the release 
 manager doing the merge to the release branch.
 
 what to name hotfixes
 -
 hotfix/jira-ticket
 
 the -summary should be descriptive and is optional.
 
 hotfix/4.4-jira-ticket
 
 for fixes to 4.4.x.
 
 
 
 cheers,
 
 
 
 Leo