We have a client that would need iterative development almost ready to convert to Drupal. However, one of their managers is concerned about the issues with migrating Drupal sites from dev to live. In particular he sighted this article as a reason as a possible show stopper.

We all know this is a problem and while there are some solutions, I don’t believe there is a simple one. But it also seems to me that virtually all CMS would have this problem. Don’t practically all CMS store configuration and content ids in their databases and wouldn’t they run into the same issues?

Thoughts anyone? Thanks.

Comments

WorldFallz’s picture

There definitely isn't a simple solution and though I haven't had much experience with CMSs other than drupal and joomla, I too think that most suffer the same problem.

This is the single issue preventing me from pursuing drupal full force in the enterprise-- I'm not really sure what the answer is. So far the deploy module looks very promising, but its still a ways off from being a release candidate i would think. Still in the wait and see mode at this point I'm afraid.

icstars’s picture

we've been doing iterative development on drupal. yes, its a lot of manual work to recreate all changes in the production environment, but that has actually forced us to create better documentation and change control. if you compare development times on drupal vs. more file based models, drupal makes up for longer deployment with 5-10x faster development. executing a deployment is also a more well-defined and therefore lower skill and lower cost activity than development. you can throw junior resources at deployment.

content loads are possible with sql hacking. its an upfront investment in your development methodology, but reusable from one project to the next.

WorldFallz’s picture

...but that has actually forced us to create better documentation and change control.

yes-- that's a very good point I neglected to mention.

mcsolas’s picture

I was just about to start rebuilding a site on a testing location to build up a site that is slated to replace an existing one. I was going to to deploy it I think how they are talking about here.. export the testing db, drop all the testing tables, upload the drupal site files then import the data. From what I am reading.. this wont work?

I see that module will help in the future.. but for now, what are the options you have when deploying sites?

WorldFallz’s picture

The problem only comes in if your live site is getting new content while you're doing development on a dev site. If you overwrite the live site with the dev you will lose any new content in the live site.

icstars’s picture

if you don't have any node references, you can migrate from a development node table to production using a loop over the source table and run drupal_execute to create new nodes. if you do have references then you need to do a little more work to keep track of old and new node id's to connect them up properly. its a pain, but its not that complicated and very well-defined. e.g. its nowhere near as hard as getting a client to agree on a theme/layout. you can have a good developer create the scripts in a corner. once created, its very easy to reuse.