Interaktiv GmbH | Creative Information Solutions
LOST IN MIGRATION
A FLEXIBLE APPROACH TO CONTENT
MIGRATION IN PLONE
Interaktiv GmbH | Creative Information Solutions
WHO WE ARE
Jan
 Full service agency since 1998, Cologne/Germany
 Open source development, content management,
online marketing
 Websites, portals, intranets
 Spezialisation in health care and non-profit
organizations
1. Why another migration tool for Plone?
2. What does the migrator do?
3. Some code and real life examples
4. To do and questions
MY TALK
© Interaktiv GmbH | Creative Information Solutions
WHY ANOTHER MIGRATION TOOL?
© Interaktiv GmbH | Creative Information Solutions
Goal: Migrate Archetypes to Dexterity
• atct_migrator in most cases the right tool
• “How to upgrade sites to Plone 5” from Philip Bauer
LOST IN MIGRATION - EXAMPLE
© Interaktiv GmbH | Creative Information Solutions
• Plone 3.3.5
• More than 20 000 items
• Custom content types
• Usage of archetypes.schemaextender
• Merging of content from different sites
• Cluster of five sites sharing a mounted zeo (uninstallable)
INTERAKTIV.MIGRATOR
© Interaktiv GmbH | Creative Information Solutions
JSON
Source Target
INTERAKTIV.MIGRATOR
© Interaktiv GmbH | Creative Information Solutions
Pro:
• content directly to newer Plone
• own types without mapping already matching fields
• archetypes.schemaextender data
• content to different site
• from a live system worry-free
• new and clean database
INTERAKTIV.MIGRATOR
© Interaktiv GmbH | Creative Information Solutions
Contra:
• only content is migrated
• References have to be migrated at second run
WHAT HAPPENED WITH OUR EXAMPLE:
© Interaktiv GmbH | Creative Information Solutions
• approach worked in our special case
• perfomance was okay -> 18 000 items in about 50 min.
• we were happy, our customer was happy
• and a better performing website
EXAMPLES
© Interaktiv GmbH | Creative Information Solutions
1. Migration of a whole website
2. Migration of an individual content type (News Item)
CODE SAMPLE
© Interaktiv GmbH | Creative Information Solutions
CONCLUSION & TO DO
© Interaktiv GmbH | Creative Information Solutions
• interaktiv.migrator is in beta
• target audience: developers
• does not work yet for collections
• only migrates from Archetypes to Dexterity
• no migration of "resolve uid" links yet
• better documentation / testing / refactoring
YOUR QUESTIONS?
© Interaktiv GmbH | Creative Information Solutions
Interested in this project?
Talk to us at the conference
Or contact me at:
mevissen@interaktiv.de
https://github.com/jmevissen/interaktiv.migrator
https://github.com/jmevissen/interaktiv.migrator_p3
Or….
www.interaktiv.de

Lost in migration

  • 1.
    Interaktiv GmbH |Creative Information Solutions LOST IN MIGRATION A FLEXIBLE APPROACH TO CONTENT MIGRATION IN PLONE
  • 2.
    Interaktiv GmbH |Creative Information Solutions WHO WE ARE Jan  Full service agency since 1998, Cologne/Germany  Open source development, content management, online marketing  Websites, portals, intranets  Spezialisation in health care and non-profit organizations
  • 3.
    1. Why anothermigration tool for Plone? 2. What does the migrator do? 3. Some code and real life examples 4. To do and questions MY TALK © Interaktiv GmbH | Creative Information Solutions
  • 4.
    WHY ANOTHER MIGRATIONTOOL? © Interaktiv GmbH | Creative Information Solutions Goal: Migrate Archetypes to Dexterity • atct_migrator in most cases the right tool • “How to upgrade sites to Plone 5” from Philip Bauer
  • 5.
    LOST IN MIGRATION- EXAMPLE © Interaktiv GmbH | Creative Information Solutions • Plone 3.3.5 • More than 20 000 items • Custom content types • Usage of archetypes.schemaextender • Merging of content from different sites • Cluster of five sites sharing a mounted zeo (uninstallable)
  • 6.
    INTERAKTIV.MIGRATOR © Interaktiv GmbH| Creative Information Solutions JSON Source Target
  • 7.
    INTERAKTIV.MIGRATOR © Interaktiv GmbH| Creative Information Solutions Pro: • content directly to newer Plone • own types without mapping already matching fields • archetypes.schemaextender data • content to different site • from a live system worry-free • new and clean database
  • 8.
    INTERAKTIV.MIGRATOR © Interaktiv GmbH| Creative Information Solutions Contra: • only content is migrated • References have to be migrated at second run
  • 9.
    WHAT HAPPENED WITHOUR EXAMPLE: © Interaktiv GmbH | Creative Information Solutions • approach worked in our special case • perfomance was okay -> 18 000 items in about 50 min. • we were happy, our customer was happy • and a better performing website
  • 10.
    EXAMPLES © Interaktiv GmbH| Creative Information Solutions 1. Migration of a whole website 2. Migration of an individual content type (News Item)
  • 11.
    CODE SAMPLE © InteraktivGmbH | Creative Information Solutions
  • 12.
    CONCLUSION & TODO © Interaktiv GmbH | Creative Information Solutions • interaktiv.migrator is in beta • target audience: developers • does not work yet for collections • only migrates from Archetypes to Dexterity • no migration of "resolve uid" links yet • better documentation / testing / refactoring
  • 13.
    YOUR QUESTIONS? © InteraktivGmbH | Creative Information Solutions Interested in this project? Talk to us at the conference Or contact me at: mevissen@interaktiv.de https://github.com/jmevissen/interaktiv.migrator https://github.com/jmevissen/interaktiv.migrator_p3 Or…. www.interaktiv.de

Editor's Notes

  • #3 Stehe hier für die Interaktiv GmbH, und möchte uns daher kurz vorstellen. Wir sind seit 1998 am Markt, haben unseren Sitz in Köln und beschäftigen uns in erster Linie mit Open Source Entwicklung, mit Content Management Systemen und allen Spielarten des Online Marketings. In der Open Source Entwicklung haben wir 7 Entwickler, die festangestellt oder als freiberufliche Mitarbeiter seit langer Zeit für uns tätig sind. We are a Cologne Germany-based web agency specializing in sophisticated content management based on Plone. We build state-of-the art web applications, serving customers in Germany and abroad. Sponsored Plone conference 2014 in Bristol
  • #5 Limitations in official Plone migration tool: erweiterte Contenttypen => nur ein Teil des alten contents soll übernommen werden => alte Seiten mit "undeinstallierbaren" Produkten / nicht mehr intallierbare Seiten => Beispiel 'AEZQ' => uninstallierbar => viel content ~ 10000 + => muss aus live betrieb heraus migriert werden
  • #6 Limitations in official Plone migration tool: erweiterte Contenttypen => nur ein Teil des alten contents soll übernommen werden => alte Seiten mit "undeinstallierbaren" Produkten / nicht mehr intallierbare Seiten => Beispiel 'AEZQ' => uninstallierbar => viel content ~ 10000 + => muss aus live betrieb heraus migriert werden
  • #11 Beispiele durchführen: => komplette migration einer Testseite => checken ob das mit ContentLeadimage läuft => wäre ein gutes Beispiel für erweiterten Contenttyp => Source Seite => Einstellungen und Mappings => migration eines Bestimmten Contenttypen (zB News) => hier mit Beispiel Code für Benutzung der Utility