Our Continuous Integration framework is now in charge of automatically
promoting code from pi to main [1]. I would like to share with you what
this means for a developer in all the future releases, starting
with 2.50MP10.

In a nutshell, the integration process takes around 8-10 hours to run all
the tests [2] and to promote the changesets to erp/devel/main. This process
is run twice per day, at 1:00 and 12:00 CET.

The tests take a group of changesets that have passed some minimum tests
in erp/devel/pi and starts the process with those. They are tested as a
group, so if the last changeset has a problem none of the changesets will
be promoted till that problem is solved.

Related to the releases, this means that:

* Freeze day:

  For the release we'll take the code in erp/devel/main that day at
  midnight. The last test that can make your code be promoted for the
  release is the day before at 12:00CET. If you push later, no problem,
  but it won't make it into the next release.

* Risks:

  If you want your changesets to be included in the next release, the sooner
  you push the better. If you push the day before in the evening there
  is big chance that your changesets won't make it into the release.

* Effect on other's work:

  Your pushes affect not only your work, but others. Don't push code that
  is not ready just to push sooner.  If devA pushes 100 changesets and
  then devB pushes 2, and if user's B changesets are faulty, those 102
  changesets won't be promoted until they are fixed. To put it clearly:
  your commits can make other's work not be included in the next
  release.

* Plan:

  Plan your big merges and new developments in advance, based on the
  release calendar [3]. Ideally, do these merges right after
  erp/devel/main is unfrozen, and not just before the freeze.

Other than that the integration is going well. Right now erp/devel/main is
just 4 changesets behind erp/devel/pi. So this message's goal is to make
you know how the integration process works and learn how to organize
your work based on that.



Juan Pablo


[1] http://pmpearl.blogspot.com/2009/11/automatic-promotion-of-stable-code.html
[2] http://builds.openbravo.com/view/devel-int/
[3] 
http://wiki.openbravo.com/wiki/Release_Management#Release_schedules_and_signing


------------------------------------------------------------------------------
Join us December 9, 2009 for the Red Hat Virtual Experience,
a free event focused on virtualization and cloud computing. 
Attend in-depth sessions from your desk. Your couch. Anywhere.
http://p.sf.net/sfu/redhat-sfdev2dev
_______________________________________________
Openbravo-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-development

Reply via email to