East agile logo ruby red v003_50

Frequently Asked Questions 9

Posted by Lawrence Sinclair on 20 Nov 2009 at 23:06

 Deployments

Please describe how you would deploy an application of this nature including reference to any development, staging and production servers. What systems would you put in place to roll out upgrades after the application goes live? Also, how would you create a 'down for maintenance' page if we needed to do some emergency work to alter the application without loss of user data?

 

- For deployment, we prefer the use of Capistrano since it supports remote deployment, rolling back and release version control. In addition, Capistrano also supports the configuration of “down for maintenance”  page.
- Normally, we use git style management features to handle different environments. Usually, we have 2 branches: production with stable code and development with newly-implemented code. Two branches will be merged after the new code is approved.

- In some cases we have a local test environment (our iMac dev machines and local servers), a cloud-based development server, a cloud-based staging server for final configuration and testing before deployment, and a scalable cloud-based production environment.


We have best practices, but adjust to meet client demands that can vary depending on their existing systems, preferences, and budget.

Comments
Name (*)
Email
Website
Content (*)
 
 
Copyright 2010 The Stanyan Group