Babel / Server Tool Development Process

From Eclipsepedia

Jump to: navigation, search

Contents

Babel Team Development Strategy

Prioritizing Strategy

The Babel team's strategy to processing bugs and feature requests is (in order):

  1. Bugs that cause incorrect translations to be saved or prevent people from enter translations
  2. Finishing the version zero issues (deployment, documentation)
  3. Bugs preventing project teams from adding their projects to Babel
  4. Server performance issues
  5. Bugs preventing users from consuming the output of Babel
  6. New features

Setting up a Development Environment

The Babel server environment is a typical LAMP environment. Apache 2.x, PHP 5.x, MySQL 5.x and a CVS client are likely the only prerequisites.

Steps to setting up a Babel Development Environment on Linux:

Create a directory alias in Apache

   Alias /babel/ "/var/www/babel/server/html/"
   <Directory "/var/www/babel/server/html/">
       AllowOverride None
       Order allow,deny
       Allow from all
   </Directory>

Obtain the code from CVS

   cd /var/www/babel/    # not /var/www/babel/html!
   cvs -d :pserver:anonymous@dev.eclipse.org:/cvsroot/technology co -d server/ org.eclipse.babel/server


Set up the MySQL database

Configure the classes/base.conf file with the MySQL database information.

   db_read_host=localhost
   db_read_user=babel
   db_read_pass=babelpassword
   db_read_name=babel
   context=dev

Using your favourite MySQL administration tool, create a database for Babel. It is also recommended to create a MySQL user for Babel.

   mysql> create database babel;
   mysql> grant SELECT, INSERT, UPDATE, DELETE on babel.* to babel@'localhost' identified by 'babelpassword';
   mysql> flush privileges;
   

Replace the username, hostname and password according to your specific environment. Load the babel tables and sample data (the root account is used here, as the 'babel' account doesn't have CREATE/DROP privileges):

   mysql -u root -p babel < /var/www/babel/server/babel-setup.sql



Submitting code patches

Release process