On May 21, 2014, at 12:40 AM, Animesh Chaturvedi 
<animesh.chaturv...@citrix.com> wrote:

> Hugo without putting certain rules we are not going to get out of the 
> situation. I think it may seem draconian but stating "No merges are allowed 
> without a successful run of the automation"

Let's be specific. Are we talking about merges of features or every commit.

A successful run of all integration tests with the simulator can take 45 
minutes maybe more. This means that everyone will have to wait for this to 
complete for even a typo.

> is beneficial for everyone. It forces focus on automation and helps mitigate 
> regression. If we run into challenges in implementing those rules like 
> toolset not ready or infra then we would have to fix those. 
> 

Why don't Citrix developers show us how they would do it in the open ? Right 
now it's all hidden. 

> Animesh
> 
>> -----Original Message-----
>> From: Trippie [mailto:trip...@gmail.com] On Behalf Of Hugo Trippaers
>> Sent: Wednesday, May 14, 2014 12:32 AM
>> To: dev@cloudstack.apache.org
>> Subject: Re: [PROPOSAL] Using continuous integration to maintain our code
>> quality...
>> 
>> Hey Alex,
>> 
>> Nice job on getting this all done and working on some guidelines to improve
>> quality of the overal guidelines. We discussed a lot of these things at the 
>> last
>> CCC and i'm happy to see them here.
>> 
>> I do have some feedback on the policy though.
>> 
>> Specifically with the line stating "No merges are allowed without a 
>> successful
>> run of the automation". You stated yourself that the infra running the
>> automation is being run by Citrix. Introducing this statement links our 
>> policy
>> to Citrix in such a way that we can't commit if the citrix supplied Infra is 
>> not
>> availalbe. That doesn't sound like a good thing. Anyway part of being a
>> committer is the responsibility to make a correct decision when and how to
>> commit to the central code base, this includes deciding when running
>> automation tests is appropriate. You know i'm in favor of quality controls
>> and i am a strong proponent of testing before committing, but each
>> committer has his own responsibility in this and has to show he/she takes
>> this seriously.
>> 
>> The JIRA process is pretty good and will certainly help with keeping track of
>> what is going on, but is not mandatory in my opinion. Also arranging for a
>> review is not a responsibility of the developer of a piece of code. If that 
>> is
>> necessary it is the community that fails, the really responsibility to do 
>> code
>> reviews is with the committers, "Each committer has a responsibility to
>> monitor the changes made for potential issues, both coding and legal."
>> (http://www.apache.org/dev/new-committers-guide.html).
>> 
>> I'm a firm believer of providing tooling and support to help make "doing the
>> right thing" as easy as possible. In my opinion the focus should be on making
>> sure this tooling is as easy to use as possible so committers and 
>> contributors
>> will want to use this, because it helps them instead of forcing them to use 
>> it
>> by policy.
>> 
>> Cheers,
>> 
>> Hugo
>> 
>> 
>> On 7 mei 2014, at 02:03, Alex Huang <alex.hu...@citrix.com> wrote:
>> 
>>> Hi All,
>>> 
>>> This is something I brought up a long time ago but really didn't have the
>> resources to get it all up and running until now.  Throughout the past year,
>> Edison, Prasanna, Amogh, Bharat, Koushik, Talluri, and others have been
>> chipping away at it.  At this point, we finally pull together a continuous
>> integration setup that we can use to make sure that CloudStack master and
>> the currently release branch are always stable.  This is getting pretty 
>> close to
>> be completed and we like to share it with the community in hopes that we
>> can reduce/eliminate that problems we've seen with our recent releases.
>> Currently, the physical hardware are hosted by Citrix but we'll be more than
>> willing to donate the work to infra when that's all settled.
>>> 
>>> This does require effort from the community to make a change in their
>> development process.  These steps are detailed at [1].  I like to get 
>> feedback
>> on what everyone think about this.
>>> 
>>> What have we done:
>>> - We replaced a large selection of the BVT tests to run with the simulator
>> instead of actual hardware.  This shortens the duration of each BVT run.
>> Today, a BVT that runs tests for XenServer and KVM completes in 30-40
>> minutes.
>>> - We will run the new BVT on master and the current release branch on a
>> continuous basis.
>>> - Developers can use Jenkins to ask BVT to be run on their branch so they
>> can know it won't break the continuous integration before they merge to
>> master and the current release branch.
>>> 
>>> Please have a read and let me know what you think.
>>> 
>>> --Alex
>>> 
>>> [1]
>> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Development+Pro
>> cess
> 

Reply via email to