View source | Discuss this page | Page history | Printable version   

Promote PI to Main

Contents

Prerequisite

Promote Steps

$ hg clone https://code.openbravo.com/erp/devel/main main
$ hg clone https://code.openbravo.com/erp/devel/pi pi
$ cd  /path/to/main/
$ hg pull -u /path/to/pi
Do hg merge 
Do hg resolve
Commit the changes to repo using hg commit -m "merge from pi"


How Integrated to builds.openbravo.com

Objective

Main aim is to archive automatic promotion of "good" revisions to main. what do we mean with "good"? We measure this as a set of builds and tests that are run successfully on a specific code revision on the pre-integration repo. When this happens then all the code up to that revision is selected to be promoted to the stable repository main.

Criteria for the process

Work flow

This is the proposed workflow in the *integration* stage:

Example:
1. Incremental build for PostgreSQL (erp_devel_int-inc-pgsql).
* This job polls from int-1. If there are changes it runs the job.
* If the job is successful, it pushes the changesets to a new repository, int-2.
2. Incremental build for Oracle (erp_devel_int-inc-oracle).
* This job polls from int-2. If there are changes it runs the job.
* If the job is successful, it pushes the changesets to a new repository,  int-3.
3. Full build for PostgreSQL (erp_devel_int-full-pgsql).
* This job polls from int-3. If there are changes it runs the job.
* If the job is successful, it pushes the changesets to a new repository, int-4.
(...)
N. Sanity test upgrade from 2.40 (erp_devel_int-sanity-tests)
* This job polls from int-X. If there are changes it runs the job.

Job specification

Job titile Sequence Tied to Pull changes from Update repo Estimate (hh.mm.ss)
erp_pi_to_main_promotion_check 1 master https://code.openbravo.com/erp/devel/pi https://code.openbravo.com/erp/devel/int and int-1(local) 00.10.00
erp_devel_int-inc-pgsql 2 slave-2 int-1 int-2 00.10.00
erp_devel_int-inc-oracle 3 master int-2 int-3 00.10.00
erp_devel_int-full-pgsql 4 master int-3 int-4 00.20.00
erp_devel_int-pgsql-db-full-consistency-test 5 master int-4 int-5 00.30.00
erp_devel_int-full-oracle 6 master int-5 int-6 00.25.00
erp_devel_int-module-installation-test 7 slave-2 int-6 int-7 01.05.00
erp_devel_int-module-integrity-test 8 master int-7 int-8 00.20.00
erp_devel_int-pgsql-smoke-test 9 slave-2 int-8 int-9 03.30.00
erp_devel_int-oracle-smoke-test 10 slave-2 int-9 int-10 03.40.00
erp_devel_int-sanity-tests 11 master Refers to workspace of full build (/srv/hudson/jobs/erp_devel_int-full-pgsql/workspace) push from int-10 to int-11 00.00.05
erp_upgrade_to_latest_obx 12 slave1 int-11 int-12 00.00.05
erp_promote_pi_to_main 13 master int-12 http://code.openbravo.com/erp/devel/main 00.02.00
erp_devel_main_obx 14 master http://code.openbravo.com/erp/devel/main copy the obx file to http://builds.openbravo.com/erp 00.05.00

Above jobs that trigger test/build with respect to pi main integration can be seen here

Notification

Mail Formate:

Subject : 2.50MPX ready for QA, Notifying about:

Note: we can use hudson-cli for the same. eg: java -jar hudson-cli.jar -s http://builds[dot]openbravo[dot]com mail

Retrieved from "http://wiki.openbravo.com/wiki/Promote_PI_to_Main"

This page has been accessed 5,548 times. This page was last modified on 2 February 2010, at 07:14. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.