Migration in Drupal core
phenaproxima
moshe weitzman
Drupal 8 core is providing a robust migration path from both Drupal 6 and 7 using the Migrate API. This has been accomplished by porting parts of the contrib Migrate API into Drupal 8 core, and writing a new module (Migrate Drupal) which provides migrations to upgrade content and configuration.
This session will start with a quick overview of how migration in core works, and why it beats the update.php way when dealing with major version changes (freedom to re-architect, greater flexibility in choosing what gets migrated, rollback, incremental/rolling migration, possibility of combining sources, etc.) Then we’ll open it up for discussion. Some open questions include:
- What is the difference between using update.php to upgrade a site (the strategy previously used to upgrade D6 to D7, which will still be used to upgrade between RCs and patch releases of 8.0.x) and using Migrate (for D6 or D7 to D8?)
- What’s missing from the D6 and D7 migration paths? Is there anything that should be added, removed, or improved?
- What tools should core provide for executing migrations? Which Drush commands should be part of the Migrate API in core, and what should stay in Migrate Plus (a contrib project)?
- The core Migrate API can (and probably will) be used for much more than just Drupal migration paths. There are all kinds of developer use cases here; it will replace some (mis)uses of hook_update_N(). What should be added or removed from the API to make it as useful as possible to as many developers as possible?