How to deploy configuration level changes on multiple sites?

Tagged:

I have multiple sites in Aegir. All sites are identical. So when a new feature added or old issue fixed then I have to deploy the change individually for each site. I am not talking about codebase changes as all sites are using same codebase. But the problem with the configuration level changes.

Is there any automatic to deploy configuration level changes without visit every site individually?

#1

You should probably be using the Features module to export your configuration into code. You can then add the generated feature(s) to your platform makefile, and follow the usual upgrade/migration workflow. You could then run 'drush @sites fr' on the platform, to revert all the custom features on all sites present on the platform.

Simple config changes can also leverage the ability for Drush to run commands across all sites on a platform. For example, 'drush @sites vset ...' will set a (variables table) variable across all sites in the platform. However, keeping your configuration in code (with Features and some hook_update_N()'s) also allows version controlling it, which is preferred over just applying settings directly.

Aegir doesn't (yet) come with an out-of-the-box solution for this. However, there are a couple projects that are working on automating much of that workflow. In particular DevShop and Valkyrie, though both focus mostly on workflows to develop a custom site, rather than a common platform for mass hosting.