On Jun 9, 2006, at 6:37 AM, Barry Jaspan wrote:
My suggestion is to identify which database tables contain administrative or configuration data vs.
CivicSpace has spent about 60 hours this week building the tools for extracting the configuration of a site into .profile and into a .install. Here's what we are extracting and then making available as a default configuration in a .profile: 1) Modules from the System Table are enabled in the .profile function gojoingo_profile_modules() { return array('system', 'block', 'civicrm', 'filter', 'help', 'menu', 'node', 'page', 'taxonomy', 'user', 'watchdog', 'blog'); } The rest are set using a .install 2) Menu's from the Menu Table: use the devel module to reset your menu's and diff them DB dumps 3) Menu's for primary navigation: We actually point these to views : My Groups, My Events... 3) Blocks from the Blocks Table 4) Access control from the access table 5) Module configuration settings: we have written a script called variable-export that export's your variables into a list of variable_set('variable', value); variable_set('comment_content-event', '2'); variable_set('event_nodeapi_content-event', 'all'); variable_set('image_attach_content-event', '0'); variable_set('upload_content-event', '1'); variable_set('location_weight_content-event', '9'); variable_set('location_name_content-event', '1'); so that we can just add to the .install 6) Localization exporting to make Drupal terminology user friendly - we can do it manually but having some problems populating using the .install 7) Views are proving tricky to add in the .install with views_import_view_submit. Look for help here. We aren't that far away from having a module that just dump's your entire site configuration into a .profile and a .install. Then you can just add the files to the Drupal install profile system and presto you have a Drupal distribution or you have a back up of your site. If you want to collaborate and can contribute some hours that would be very helpful. Kieran CivicSpace