Just my two cents:
All mature development environments require code and change propagation through multiple environments. Including, I would assume, the individual DNN modules themselves (i.e. Dev, Integration, UAT and Production). Most organizations don't let anyone change production without it having gone through the other environments first. Soooo.. the only way to do that currently is to backup the entire webapp and DNN database and restore for every change, even the small ones.
This can be a problem with any system that maintains it's configuration settings in a database. It's conceivable that we could build a "patch" or "migration" tool that would
- compare the stuctural differences between two dnn databases and generate the necessary alter scripts. There are open source solutions for this (see http://sourceforge.net/projects/whiz/)
- compare contents of the db and generate load scripts
- web components would also have to be taken care of in a similar manner.
Stitch all these together and you'd have a patch file. So your source control would store incremental patch's.. hmm.. I'm sure this would be a piece of cake ;-)
Ok, all that said, it would require a bullet-proof updater to not introduce more risk to the process. Rock? meet Hard Place.
Any other solutions or thoughts?
- Matt