Re: CI improvment part 1

2015-03-24 Thread Pierre-Luc Dion
I'm waking up this old thread.

I was reviewing some jenkins jobs and took a closer look at simulatorfast,
 We currently have a jenkins job running every 20mins for the
simulatorfast, That seams great and seams to provide a good coverage and is
perform quite fast, although it's currently running on the pytest branch
which is now fairly outdated.

I've tried a merge into master and endup with a bunch of conflict.
Considering the plus value of using pytest, Would it be possible to update
and merge pytest branch so we could use it
 as CI tests?


Regards,



On Wed, Dec 3, 2014 at 5:13 PM, Edison Su edison...@citrix.com wrote:

 haven't have time to work on it since last update.

  -Original Message-
  From: Rohit Yadav [mailto:rohit.ya...@shapeblue.com]
  Sent: Tuesday, December 02, 2014 9:53 PM
  To: dev@cloudstack.apache.org; Edison Su
  Subject: Re: CI improvment part 1
 
  Hi Edison,
 
  Just curious, any update on the pytest effort? Thanks.
 
  On Friday 26 September 2014 10:13 AM, Edison Su wrote:
   Highlights the improvements on marvin I made in these days on pytest
  branch:
   1. Switch test framework from nose to pytest, while also maintain the
 back-
  compatibility for existing test cases.
pytest is more flexible than nose, more enjoyable to work with.
   2. Speed up test speed a LOT: It only takes 250-300 seconds for a
 single run
  for all the test cases under test/integration/smoke folder, while it
 usually
  takes 40 minutes to run before.
   The speed up is coming from running test cases in parallel.
 pytest-xdist is
  modified to fix the issue:
  https://bitbucket.org/hpk42/pytest/issue/175/way-to-control-how-pytest-
  xdist-runs-tests. we have a lot of existing test cases have to run in
 sequence
  per test class.
   3. Add a new Jenkins job at
  http://jenkins.buildacloud.org/job/fastsimulatorbuild/, which only
 takes 22
  minutes for a full cycle buildtest.
A new VM is created on digitalocean: 4G memory, 40G SSD, and added
  into Jenkins.buildacloud.org. SSD is life saver, it really makes big
 difference
  during build/test.
A new docker image is created, which has all the tools installed
 in order
  to build and test: e.g. java/mysql/python/git/ installed.
A new Jenkins job is created to build and test periodically in
 every 20
  minutes.
  
   So far, the Jenkins job works very well, if everybody ok with what I am
  doing, I want to merge pytest branch into master later. With a quick CI
 in
  hand, we then can start to think about how to add gerrit into our system.
 
  --
  Regards,
  Rohit Yadav
  Software Architect, ShapeBlue
  M. +91 8826230892 | 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 Software Engineeringhttp://shapeblue.com/cloudstack-
  software-engineering/
  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: CI improvment part 1

2014-12-04 Thread Edison Su
haven't have time to work on it since last update.

 -Original Message-
 From: Rohit Yadav [mailto:rohit.ya...@shapeblue.com]
 Sent: Tuesday, December 02, 2014 9:53 PM
 To: dev@cloudstack.apache.org; Edison Su
 Subject: Re: CI improvment part 1
 
 Hi Edison,
 
 Just curious, any update on the pytest effort? Thanks.
 
 On Friday 26 September 2014 10:13 AM, Edison Su wrote:
  Highlights the improvements on marvin I made in these days on pytest
 branch:
  1. Switch test framework from nose to pytest, while also maintain the back-
 compatibility for existing test cases.
   pytest is more flexible than nose, more enjoyable to work with.
  2. Speed up test speed a LOT: It only takes 250-300 seconds for a single run
 for all the test cases under test/integration/smoke folder, while it usually
 takes 40 minutes to run before.
  The speed up is coming from running test cases in parallel. 
  pytest-xdist is
 modified to fix the issue:
 https://bitbucket.org/hpk42/pytest/issue/175/way-to-control-how-pytest-
 xdist-runs-tests. we have a lot of existing test cases have to run in sequence
 per test class.
  3. Add a new Jenkins job at
 http://jenkins.buildacloud.org/job/fastsimulatorbuild/, which only takes 22
 minutes for a full cycle buildtest.
   A new VM is created on digitalocean: 4G memory, 40G SSD, and added
 into Jenkins.buildacloud.org. SSD is life saver, it really makes big 
 difference
 during build/test.
   A new docker image is created, which has all the tools installed in 
  order
 to build and test: e.g. java/mysql/python/git/ installed.
   A new Jenkins job is created to build and test periodically in every 20
 minutes.
 
  So far, the Jenkins job works very well, if everybody ok with what I am
 doing, I want to merge pytest branch into master later. With a quick CI in
 hand, we then can start to think about how to add gerrit into our system.
 
 --
 Regards,
 Rohit Yadav
 Software Architect, ShapeBlue
 M. +91 8826230892 | 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 Software Engineeringhttp://shapeblue.com/cloudstack-
 software-engineering/
 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: CI improvment part 1

2014-12-02 Thread Rohit Yadav

Hi Edison,

Just curious, any update on the pytest effort? Thanks.

On Friday 26 September 2014 10:13 AM, Edison Su wrote:

Highlights the improvements on marvin I made in these days on pytest branch:
1. Switch test framework from nose to pytest, while also maintain the 
back-compatibility for existing test cases.
 pytest is more flexible than nose, more enjoyable to work with.
2. Speed up test speed a LOT: It only takes 250-300 seconds for a single run 
for all the test cases under test/integration/smoke folder, while it usually 
takes 40 minutes to run before.
The speed up is coming from running test cases in parallel. pytest-xdist is 
modified to fix the issue: 
https://bitbucket.org/hpk42/pytest/issue/175/way-to-control-how-pytest-xdist-runs-tests.
 we have a lot of existing test cases have to run in sequence per test class.
3. Add a new Jenkins job at http://jenkins.buildacloud.org/job/fastsimulatorbuild/, 
which only takes 22 minutes for a full cycle buildtest.
 A new VM is created on digitalocean: 4G memory, 40G SSD, and added into 
Jenkins.buildacloud.org. SSD is life saver, it really makes big difference 
during build/test.
 A new docker image is created, which has all the tools installed in order 
to build and test: e.g. java/mysql/python/git/ installed.
 A new Jenkins job is created to build and test periodically in every 20 
minutes.

So far, the Jenkins job works very well, if everybody ok with what I am doing, 
I want to merge pytest branch into master later. With a quick CI in hand, we 
then can start to think about how to add gerrit into our system.


--
Regards,
Rohit Yadav
Software Architect, ShapeBlue
M. +91 8826230892 | 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 Software 
Engineeringhttp://shapeblue.com/cloudstack-software-engineering/
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: CI improvment part 1

2014-09-26 Thread Hugo Trippaers
Hey Edison,

Nice job!  Speeding up the simulator is an important step :-)

We should probably try to get the new setup working with Travis so we can run 
it on every commit. I don;t think we nee gerrit yet (who other discussion) but 
if we get this testing every github pull request and every newly created 
hotfix/bugfix/feature branch we have the same effect right.

Cheers,

Hugo



On 26 sep. 2014, at 06:43, Edison Su edison...@citrix.com wrote:

 Highlights the improvements on marvin I made in these days on pytest branch:
 1. Switch test framework from nose to pytest, while also maintain the 
 back-compatibility for existing test cases.
pytest is more flexible than nose, more enjoyable to work with. 
 2. Speed up test speed a LOT: It only takes 250-300 seconds for a single run 
 for all the test cases under test/integration/smoke folder, while it usually 
 takes 40 minutes to run before.
   The speed up is coming from running test cases in parallel. pytest-xdist is 
 modified to fix the issue: 
 https://bitbucket.org/hpk42/pytest/issue/175/way-to-control-how-pytest-xdist-runs-tests.
  we have a lot of existing test cases have to run in sequence per test class.
 3. Add a new Jenkins job at 
 http://jenkins.buildacloud.org/job/fastsimulatorbuild/, which only takes 22 
 minutes for a full cycle buildtest.
A new VM is created on digitalocean: 4G memory, 40G SSD, and added into 
 Jenkins.buildacloud.org. SSD is life saver, it really makes big difference 
 during build/test.
A new docker image is created, which has all the tools installed in order 
 to build and test: e.g. java/mysql/python/git/ installed. 
A new Jenkins job is created to build and test periodically in every 20 
 minutes. 
 
 So far, the Jenkins job works very well, if everybody ok with what I am 
 doing, I want to merge pytest branch into master later. With a quick CI in 
 hand, we then can start to think about how to add gerrit into our system.
 



Re: CI improvment part 1

2014-09-26 Thread Leo Simons
On Sep 26, 2014, at 6:43 AM, Edison Su edison...@citrix.com wrote:
 Highlights the improvements on marvin I made in these days on pytest branch:
 1. Switch test framework from nose to pytest, while also maintain the 
 back-compatibility for existing test cases.
pytest is more flexible than nose, more enjoyable to work with. 
 2. Speed up test speed a LOT: It only takes 250-300 seconds for a single run 
 for all the test cases under test/integration/smoke folder, while it usually 
 takes 40 minutes to run before.

So that is *8* to *10* times faster! Wow :-). Very cool, that’s worth a lot if 
you ask me!

cheers,

Leo



Re: CI improvment part 1

2014-09-26 Thread Rohit Yadav
Great effort Edison, much needed!

How soon would it be in a shape to merge in master and have some wiki pages on 
it so we can write tests using pytest than nose? It usually takes 12-15 mins on 
Travis to build CloudStack and we split tests, so on Travis we would be able to 
run all simulator/integration tests in less than 20 mins.

On 26-Sep-2014, at 6:43 am, Edison Su edison...@citrix.com wrote:
 Highlights the improvements on marvin I made in these days on pytest branch:
 1. Switch test framework from nose to pytest, while also maintain the 
 back-compatibility for existing test cases.
pytest is more flexible than nose, more enjoyable to work with.
 2. Speed up test speed a LOT: It only takes 250-300 seconds for a single run 
 for all the test cases under test/integration/smoke folder, while it usually 
 takes 40 minutes to run before.
   The speed up is coming from running test cases in parallel. pytest-xdist is 
 modified to fix the issue: 
 https://bitbucket.org/hpk42/pytest/issue/175/way-to-control-how-pytest-xdist-runs-tests.
  we have a lot of existing test cases have to run in sequence per test class.
 3. Add a new Jenkins job at 
 http://jenkins.buildacloud.org/job/fastsimulatorbuild/, which only takes 22 
 minutes for a full cycle buildtest.
A new VM is created on digitalocean: 4G memory, 40G SSD, and added into 
 Jenkins.buildacloud.org. SSD is life saver, it really makes big difference 
 during build/test.
A new docker image is created, which has all the tools installed in order 
 to build and test: e.g. java/mysql/python/git/ installed.
A new Jenkins job is created to build and test periodically in every 20 
 minutes.

 So far, the Jenkins job works very well, if everybody ok with what I am 
 doing, I want to merge pytest branch into master later. With a quick CI in 
 hand, we then can start to think about how to add gerrit into our system.


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.


CI improvment part 1

2014-09-25 Thread Edison Su
Highlights the improvements on marvin I made in these days on pytest branch:
1. Switch test framework from nose to pytest, while also maintain the 
back-compatibility for existing test cases.
pytest is more flexible than nose, more enjoyable to work with. 
2. Speed up test speed a LOT: It only takes 250-300 seconds for a single run 
for all the test cases under test/integration/smoke folder, while it usually 
takes 40 minutes to run before.
   The speed up is coming from running test cases in parallel. pytest-xdist is 
modified to fix the issue: 
https://bitbucket.org/hpk42/pytest/issue/175/way-to-control-how-pytest-xdist-runs-tests.
 we have a lot of existing test cases have to run in sequence per test class.
3. Add a new Jenkins job at 
http://jenkins.buildacloud.org/job/fastsimulatorbuild/, which only takes 22 
minutes for a full cycle buildtest.
A new VM is created on digitalocean: 4G memory, 40G SSD, and added into 
Jenkins.buildacloud.org. SSD is life saver, it really makes big difference 
during build/test.
A new docker image is created, which has all the tools installed in order 
to build and test: e.g. java/mysql/python/git/ installed. 
A new Jenkins job is created to build and test periodically in every 20 
minutes. 

So far, the Jenkins job works very well, if everybody ok with what I am doing, 
I want to merge pytest branch into master later. With a quick CI in hand, we 
then can start to think about how to add gerrit into our system.