Deploying Rails app as a product

I have a Rails application that I sell as a product. That is, a number
of
clients use the same software, except for small customizations, such as
layouts, css files, etc.

I use SVN and Capistrano to manage the software and deployment. What I’d
like to be able to do is to give all my clients regular software
updates,
without blowing away their layouts, css, and other customized files.

The way I’m doing this now is a bit kludgy for my taste. I’m sure there
is a
better way. My method has far too many manual steps, and I don’t feel
like
I’m using the full power of SVN or Capistrano.

For example, I’m still not sure whether I should be using just one main
SVN
trunk for all development (but then what do I do about customized
layouts,
for example), or a branch for each client (but then how do I
‘distribute’
new features to all clients?)

Any ideas for ‘best practices’ for doing this kind of ‘productized’
deployment, much appreciated.

Brgds: John

Use Rails Engines…
Take a look at my Substruct project for more info.

You can do customized deployments that don’t touch the base code pretty
easily.

On Feb 7, 2008 11:08 AM, Identry [email protected] wrote:

I’m using the full power of SVN or Capistrano.

seth at subimage interactive

http://sublog.subimage.com

Cashboard - Estimates, invoices, and time tracking software - for free!
http://www.getcashboard.com

Substruct - Open source RoR e-commerce software.
http://dev.subimage.com/projects/substruct