Common codebase for many websites

Topics: Administration, Customizing Orchard, General
Mar 21, 2013 at 10:24 PM
I'm looking at using Orchard to build many websites and I want to keep the core Orchard code (customised for our own use if necessary) common across all sites. This way we can do updates/bugfixes to core and deploy across all sites.

I've looked at multi-tenancy but we may have hundreds of sites so I'm not sure that's a good idea. In some cases we need to deploy to separate servers. And I think if we want to add a new site or customise code for one site we would need to bring all sites down.

So far these are the ideas I've come up with:
  1. Have a single base project which we fork every time we create a new project. Then if we make changes to the base (or merge in updates for new Orchard releases), we can in turn merge those changes into all the projects forked.
  2. Symlink the base code into all projects.
  3. Symlink the 'bin' folder in the output of the base project into all projects.
None of these seem like good solutions to me, and I don't even know if they would work.

Has anyone else faced a similar problem? There must be other web companies out there who have tackled this!
Mar 22, 2013 at 7:36 AM
We used to do 1. but because of deadlines we were forced to skip the merging back to the main project for now.

I suggest you use that way and DO keep things up to date though ;)