Contents

Introduction

The 2.50 version of the Openbravo ERP professional relies on rPath Linux and other related tools like rBuilder, Conary, rMake and cvc. This document explains the process of updating packages in this version.

General process

The typical workflow consists on a developer modifying a package, which is later committed and cooked in the rBuilder machine. Once the developer is satisfied with the result it's promoted to the QA label, where the quality assurance team tests it. Once it passes the tests it is promoted to the release label, and finally it is mirrored into an update server.

Package modification

Firstly, we modify whatever is required in the package(s) we want. As an example, we'll add gzip support to Apache HTTPD. To achieve this, we need to add a file (e.g. mod_deflate.conf) to /etc/httpd/conf.d/ with some specific syntax. So we create the file and add it to the packager's list:

Test

The package by default has been cooked in a label called ops.openbravo.com@openbravo:ops-2.50-devel. Consider that there are 3 stages, and one label corresponds to every stage:

Development: ops.openbravo.com@openbravo:ops-2.50-devel

QA: ops.openbravo.com@openbravo:obn-2.50-qa

Release: ops.openbravo.com@openbravo:ops-2.50

Now you should take an image of the appliance, and point it to get updates from the rBuilder machine. This is done by modifying the /etc/conary/config.d/on file and by replacing rmirror.openbravo.com by on.openbravo.com.

Update the appliance and test that the required feature is enabled. In this case we would use Firebug to check this.

Promote to QA

As the package has passed our personal tests, we want QA to test them so that it can be published. So we promote it to the QA label:

$ ops-2.50-promote-qa

This scripts does it all automatically. So now the QA team can be notified about this.

Promote to Release

Once the QA team gives the green light, we can promote them to the Release label:

$ ops-2.50-promote-release

Release Notes

Publish

Mirroring

Now the updates are available in the Release label of the rBuilder machine. But this machine is in a LAN and not accessible from the Internet. So we mirror the contents of this label to a machine called the Update Server. Basically this is a mirror copy of the Release label, just dedicated to serving updates to appliance users.

This step must be performed using the rBuilder's admin interface. So log in in the rBuilder's rAPA interface and go to the Schedule Outbound Mirroring menu item. Then click on Mirror Now. This triggers the mirroring process. Check the logs to make sure that it has compelted succesfully.

Notification

Send an e-mail to on-update-announce@openbravo.com with OBUA-<yyyy-mm-dd> Openbravo ERP Cloud Appliance 2.50 as the subject and the following body: