Menu

Home

Zitec COM Bogdan Grigore

About


CodePax is a web based deployment tool built in PHP used to for source code and database control. Uses SVN for source control and runs on both Linux and Windows.

The database versioning module is currently available for MySQL, PostgreSQL and SQL server engines.

It also uses a simple but yet powerful hook system to allow post release operations. The hooks can be run independent by the versioning process.

This small app is deployed on every development environment, including production, with the only purpose to facilitate the code release. This way the developer does not need to SSH on the production machine to do a release, he/she only needs to load CodePax and choose the right release tag.

How to install it


[How to install it] contains detailed installation instructions for Linux and Windows users

How to use it


As CodePax is an independent piece of software it can be installed on as many servers as you have. A typical project setup consists in 4 development environments:
1. the developer local machine
2. the DEV environment - where each development branch gets tested
3. the STG environment - the staging server where the trunk gets tested against a cloned production database
4. the PROD environment - which is the live server where the code must eventually reach

However is not necessary to configure it for all 4 environments. Below you will is the detailed CodePax behavior for each environment. The behavior is controlled from the config file.

CodePax consist in 3 modules:
1. SVN module - used to control the source code
2. Database versioning - used to control the database schema
3. Hooks - a module that loads the available hooks and executes them on demand and decoupled by the rest of the modules

1. SVN operations

[Operations on DEV] Covers CodePax behavior on DEV environment

[Operations on STG] Covers CodePax behavior on STG environment

[Operations on PROD] Covers CodePax behavior on PROD environment

2. Database versioning

[Database versioning] detailed info about database schema versioning

3. Hooks

[Hooks] Covers how to implement Hooks using Codepax


Related

Wiki: Database versioning
Wiki: Hooks
Wiki: How to install it
Wiki: Operations on DEV
Wiki: Operations on PROD
Wiki: Operations on STG