Ruby on Rails Monday, May 3, 2010

On May 3, 5:14 pm, Michael Pavling <pavl...@gmail.com> wrote:
> I'd suggest a review of your internal processes with all the
> developers, PMs and other stakeholders to discuss how to manage code
> deployment. As a suggestion, I'd recommend a branch of your code for
> each of your deployed client sites. Using Git/Mercurial it's not a
> huge nightmare to manage merging core changes while keeping
> client-specific code in the respective branches (although I'd
> recommend that was a task delegated to one "change manager" who can
> keep on top of it, and be responsible for all changes - and banging
> the heads of anyone who "breaks the build" :-)

or depending on how different the various versions are (and in
addition to what Michael has said) you could make the code support
what all of your customers want and make the choice between the
variants a configuration option. If you absolutely do have to make
code changes to different deployments you could deploy those changes
as plugins which re-open / monkey patch application classes (or
toggles configuration options). You can set rails to load plugins from
a directory other than vendor/plugins. Like that the app deploy would
be the same across all deployments and it would load plugins in (for
example) ~/site_customizations/ that would patch in per deployment
stuff

Fred

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

No comments:

Post a Comment