Hitch yourwagon

1,168 views

Published on

Do you have a mess of static HTML pages? Are you maintaining piecemeal legacy applications from the days before you had a shiny CMS? In this session we'll look at migration approaches for bringing that content into Drupal. We'll share what we've learned migrating a decade's worth of pages, content across a dozen database, and audio and video content - almost 15k nodes at last count - into Drupal 7.

This session will explore:
<ul>
<li>Deciding between manual and automated approaches to moving content
<li>Planning and scheduling large migrations to maintain your sanity
<li>What workflows and review steps are needed to ensure success
<li>Using the Migrate and other contributed modules to move content into Drupal.
</ul>

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,168
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Hitch yourwagon

  1. 1. O M &S S 7/26/13 Hitch Your Wagon! How to migrate legacy content into Drupal Monday, July 29, 13
  2. 2. Musketeers.me Who are we? • Sandy Smith (@SandyS1) • Oscar Merida (@omerida) Monday, July 29, 13
  3. 3. Musketeers.me It’s time to migrate Monday, July 29, 13
  4. 4. Musketeers.me Now what? Monday, July 29, 13
  5. 5. Musketeers.me Types of migrations • App to CMS • Hand-coded to CMS • Between Drupal versions Monday, July 29, 13
  6. 6. Musketeers.me App to CMS • Legacy applications • Home-grown • Translate the functionality not the form • Leverage Drupal • Standardize (helps with UX, too) Monday, July 29, 13
  7. 7. Musketeers.me Hand-coded to CMS • Look at variability • Automate well-structured & consistent HTML • Few old sites are consistent • Sounds like a job for Intern-person! • Migration training opportunities Monday, July 29, 13
  8. 8. Musketeers.me Drupal versions • Major versions are not backward compatible • Contributed modules may be left behind, lag in updating. • Content & media have to be migrated. Monday, July 29, 13
  9. 9. Musketeers.me Planning • Map old to new (not 1:1) • Decide what to leave behind • Allow for exceptions & discovery • Agile approach • Review early & often w/ stakeholders Monday, July 29, 13
  10. 10. Musketeers.me Content Inventory • Take stock of current site • Identify needed functionality • Views/modules/contexts • Information Architecture • Draft content types • Sketch site map, navigation Monday, July 29, 13
  11. 11. Musketeers.me Prioritization • Foundational content • Cross-cutting taxonomies • Media handling • Content important to users • Content important to stakeholders • Group like content & functionality Monday, July 29, 13
  12. 12. Musketeers.me Migration Strategies • Automate as much as possible • Use 3rd party solutions. Monday, July 29, 13
  13. 13. Musketeers.me Migration Smells • Inconsistent formatting • No access to data store • Legacy media formats Monday, July 29, 13
  14. 14. Musketeers.me Old days Monday, July 29, 13
  15. 15. Musketeers.me Old Case In Point • Mambo (predecessor to Joomla!) to Drupal 5 • ~60,000 data objects (video, audio, text) • siloed to interrelated Monday, July 29, 13
  16. 16. Musketeers.me Old solution • Copy both sites to local machine • Custom scripts to migrate • Find interrelations • Reverse engineer both Mambo and Drupal DB structures • bootstrapped too slow Monday, July 29, 13
  17. 17. Musketeers.me Modern Techniques Monday, July 29, 13
  18. 18. Musketeers.me Case in point, an inhouse PHP site • Static HTML content since 2003 • 12 databases • 290+ Video files, 25G data • 780+ Audio files, 8.5G data • 3 external WordPress blogs • Multiple video players, slideshow tools Monday, July 29, 13
  19. 19. Musketeers.me Enterprise CMS • Consistent role-based authoring workflow • Centralized content repository • Standardized presentations • Less burdensome maintenance Monday, July 29, 13
  20. 20. Musketeers.me Migrate module • Multiple sources: DB or XML/CSV files • Execute, rollback, update migrations • Map legacy content using PHP classes • Approve, cleanup content before saving • Process content after it is saved Monday, July 29, 13
  21. 21. Musketeers.me Migrate Extras • Extends migrate module capabilities • Flag, GeoField, Media, OG, Rules • Support moving to contrib modules • Date, Email field, Entity Reference, Link Monday, July 29, 13
  22. 22. Musketeers.me WordPress Migrate • Import content from WordPress • Can import media content • Uses WXR export format from WP • Leverages Migrate API Monday, July 29, 13
  23. 23. Musketeers.me Migrate_d2d • Migrate from previous versions to Drupal 7 • Uses the Migrate API • Provides a UI for mapping legacy content to D7 Monday, July 29, 13
  24. 24. Musketeers.me Hand-Crafted, Artisanal Migration • Manual copy from source. • Source usually in various formats. • Determine level of cleanup intended. Monday, July 29, 13
  25. 25. Musketeers.me Cleanup • Automated • Update links, media. • Tag content based on keywords • Hand-correcting • Save for last for content imported via Migrate module. Monday, July 29, 13
  26. 26. Musketeers.me Repeatable/Partial Migrations • Allow for failed migrations • Time doesn't stand still • Risks • New functionality on old site Monday, July 29, 13
  27. 27. Musketeers.me Resources • Migrate http://drupal.org/project/migrate • Migrate Extras http://drupal.org/project/migrate • WordPress Migrate http://drupal.org/project/wordpress_migrate • Drupal-to-Drupal data migration http://drupal.org/project/migrate_d2d • Move my Content! Florid Drupal Camp http://bit.ly/18Dnt1a Monday, July 29, 13
  28. 28. Musketeers.me Thank You! • Musketeers.me owns php[architect]: • Magazine, books, training, conferences • 25% Subscription discount! • AZ42-W1JJ-D57Z • PHP 5.5 Summit: Sept. 17 • http://summits.phparch.com/summits/php55/ • Questions? Monday, July 29, 13
  29. 29. Musketeers.me Credits • http://www.flickr.com/photos/nihonbunka/ • http://www.flickr.com/photos/emjayphotos/ • http://www.flickr.com/photos/houseofcards/ • http://www.flickr.com/photos/teflon/ • http://loc.gov Monday, July 29, 13

×