SlideShare a Scribd company logo
1 of 32
Download to read offline
Preparing to Migrate
D6/7 to D8
Most tempting features of Drupal 8
★ Fastest Drupal ever, out-of-the-box -- BigPipe & Placeholdering.
★ No more cluttering with database-stored configuration -- Makes
Deployment Easier with exportable configurations.
★ New theme system based on Twig -- 154 Theme functions has been
removed & replaced with TWIG Templates.
★ Symfony2 as a base layer for Drupal 8 -- HttpKernel and HttpFoundation,
Yaml, EventDispatcher, ClassLoader etc.
Importance of Analysis & Fore Seeking
★ Update Status(Drupal 5) / Upgrade Status must be used for analysis.
★ Ink is better than the best memory - Documentation
★ A virtual view/workflow of Migrated Website
before migration - Fore Seeking
Modules Porting Tracker
Status of the Top 100 Contributed Modules for Drupal 8
★ 19 projects are in core.
★ 16 projects have an available non-development release.
★ 37 projects have an available development release.
★ 28 projects have no available D8 release.
https://contribkanban.com/board/contrib_tracker
Can we suggest Drupal 8 right away :
★ for an existing SIMPLE project? -YES-
★ for an existing COMPLEX project? -NO-
★ for a NEW project? -YES-
Migration Support from Drupal :
The system for upgrading Drupal sites has
been completely re-written for Drupal 8
Support for Drupal 6 & Drupal 7 to Drupal 8
★ Drupal 6: core + CCK + Link + Email + Phone + ImageCache modules.
★ Drupal 7: only content, users, taxonomy, blocks, menus, filter formats.
More support for Drupal 7 to Drupal 8 is coming soon.
Migrations that are not yet supported :
★ Views (Drupal 6 & Drupal 7)
★ Multilingual content (i18n Module Drupal 6 & Drupal 7)
★ Node, user, entity references (Drupal 6)
Currently, contributed modules are required to run migrations to Drupal 8
Known Issues with the Drupal 6/7 -> 8
Drupal 6 to Drupal 8
★ Node Types : Default configuration in D6 was to create Story and Page content types but in
Drupal 8 the default types are Article and Basic Page (which has a machine name 'page' just like
in D6).
★ URL Aliases : When migrating url aliases for a language that is not enabled on the new Drupal 8.
★ Menu UI : The menu_primary_links_source and menu_secondary_links_source variables are not
migrated, because they do not have counterparts in Drupal 8.
Known Issues with the Drupal 6/7 -> 8
Drupal 6 to Drupal 8
★ Profile categories : Fields grouped by the Profile module in D6 will not be grouped in D8.
★ Profile field (list selection) : The "allowed values" setting of the resulting field in D8 will be a
combination of all selected user values and the current allowed values in D6.
★ Date formats : Only the default, short, medium and long formats are migrated. All other formats
default to the fallback format and need to be reconfigured after migration.
★ Text/Input formats : It will be replaced by a null filter which simply displays an empty string.The
PHP filter is not supported in Drupal 8 core -- it's very bad practice
Known Issues with the Drupal 6/7 -> 8
Drupal 6 to Drupal 8
★ Views : Views are not yet migrated.
★ Aggregator Categories : Drupal 8 no longer has the concept of aggregator categories and
therefore they're not migrated to D8.
★ Allowed protocols : Drupal 8 now stores the protocols in "filter_protocols" container parameter,
so in case you had changed the variable "filter_allowed_protocols", enter it into your services.yml
file.
Known Issues with the Drupal 6/7 -> 8
Drupal 7 to Drupal 8
★ Blocked IPs : The id column from Drupal 7's ban_ip table is not migrated.
★ Menu UI :The menu_primary_links_source and menu_secondary_links_source variables not
migrated, because they do not have counterparts in Drupal 8.
★ PHP Code : It will be replaced with filter_null, which simply displays an empty string. PHP code is
not supported in Drupal 8 core -- it's very bad practice.
★ Views : Views are not yet migrated.
A Brief description about Drupal 8
Migration API
Drupal 8 Migration API
Migration is an Extract, Transform, Load (ETL) process.For historical reasons,
in the Drupal migration tool :
★ the extract phase is called "source" - Source Plugins,
★ the transform phase is called "process" - Process Plugins,
★ the load phase is called "destination" - Destination Plugins,
★ Migration configuration entities - (IDs,Configs & dependencies) ,
★ Migration manifests - drush migrate-manifest provides a list of
migrations.
Migration-Related Modules
and Plugins
Migration-Related Core Modules
Drupal 8 is shipped with 2 CORE Modules that provides API for Migration
★ Migrate : This Drupal core module provides the underlying API for migrating configuration and
content to Drupal 8.
★ Migrate Drupal : This Drupal core module provides the classes specifically needed to migrate
configuration and content from a Drupal site to Drupal 8.
Why 2 Core Modules for Migration ?
Migration-Related Contributed Modules
★ Drupal Upgrade (migrate_upgrade) : The Drupal Upgrade contributed module provides the tools
necessary for performing an upgrade from Drupal 6 or Drupal 7 to Drupal 8 — both a simple user
interface (at /upgrade) as well as drush commands. There is on-going work to get the UI moved
to Drupal core.
★ Migrate Plus : The Migrate Plus contributed module provides optional enhancements, including
groups and prepareRow events, to the core Migrate API.
★ Migrate Tools : Part of the Migrate Plus project, this module provides optional drush and UI
tools for managing your migrations.
★ Migration plugins : Migration plugins for each core module are located within each module's
directory. For example, the migration classes that handle taxonomy vocabularies and terms are
located in the core taxonomy module.
Executing a Migration
Executing a Drupal 6/7 to Drupal 8 upgrade
Prerequisites:
★ PHP 5.5.9 or greater.
★ Install Drush 8.x
★ A Drupal 6 or Drupal 7 site database (it is not recommended to run migrations against a
production database; make a copy) Source should be Localised.
★ The very latest version of Drupal 8.
★ Having the Migrate Upgrade module downloaded & enabled, which will turn on all the various
dependencies (migrate_upgrade, migrate_drupal, migrate).
★ Write permissions for Drush to the config directory. Example sudo chmod -R a+w
sites/default/files/config_*/active
Most important note on Migrating to D8
★ This is different than the way the Migrate worked in Drupal 7 and earlier
versions
★ Note that you do not have to create all the content types and fields
manually before running this upgrade!
★ The Migrate module will create them as a part of the migration process.
How to use D8 Migrate ? There are 2 Ways
#1 Using the Migrate Upgrade Module UI
★ It is Easier but risky as it's still under heavy development, so things may break. There is support
team available for migration in case any critical issues.
★ After Installing the Migrate Upgrade module, go to Drupal 8 site's /upgrade page.
★ Now, You will see the home screen with Help Texts.
#2 Using Drush
★ Migrate Upgrade module is shipped with drush commands
Drush command : drush migrate-upgrade --legacy-db-url=mysql://user:password@server/db --
legacy-root=http://localhost/drupal6 .
★ To Add more flavours to Migration, We have Migrate Tools Module which is a part of Migrate
Plus Module. Migrate Tools provides more drush commands.
Drush Commands : drush migrate-status (ms) and drush migrate-import (mi)
★ drush migrate-upgrade has 2 set of process
Using Drush Migrate Upgrade & Tools
★ It will generate migrations for your site, based on migrate_drupal's migration templates and your
configured source site. For instance, the d6_book migration is only created if the Book module is
enabled on both your Drupal 6 and Drupal 8 sites.
★ It executes every created migration, in dependency order.
★ To have more Control on this Drush Command ,Migrate tools comes into play.(--configure-
only).
You have to pass --configure-only option to the drush command
drush migrate-upgrade --legacy-db-url=mysql://user:password@server/db --legacy-root=http:
//localhost/drupal6 --configure-only option.
Using Drush Migrate Upgrade & Tools
★ If you run drush migrate-status (ms), a huge list of migrations will appear.
★ You can review then selectively execute the migrations by using the following drush commands
#1 drush migrate-import {migration name}
#2 drush migrate-import --all
Note : If you are not able to see the migrated fields in Edit Page as well as in View Page
Check the “Manage Form Display” in each content type and change the fields settings and for
view page you can change it “Manage Display” Tab
Brushing up on Drush & Drupal Console
Drush : The Swiss Army Knife for Drupal (More Robust)
Drupal Console
Drupal Console : Sports the modern Symfony Console component, that
provides a new object-oriented interface for command line tools, exposing the
power of the Symfony framework to script developers. Which is better for
Drupal 8. Generates Code & Runs Testing.
Drupal 8 development will get improved and it can be streamlined well, when
Drush is used with Drupal Console for D8 development.
http://drupalconsole.com/
My Hearty
Thanks
to you all
&
http://drupal.org
Adhitya Rajkumar
@DrupalGeeks

More Related Content

What's hot

PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0Stan Ascher
 
Drupal 8 update: May 2014. Migrate in core.
Drupal 8 update: May 2014. Migrate in core.Drupal 8 update: May 2014. Migrate in core.
Drupal 8 update: May 2014. Migrate in core.Vladimir Roudakov
 
Content migration - CSV to Drupal 8
Content migration -  CSV to Drupal 8Content migration -  CSV to Drupal 8
Content migration - CSV to Drupal 8Hector Iribarne
 
Drupal 8 Configuration Management
Drupal 8 Configuration ManagementDrupal 8 Configuration Management
Drupal 8 Configuration ManagementExove
 
Drupal Camp Atlanta 2015 - No Code Content Migration
Drupal Camp Atlanta 2015 -  No Code Content MigrationDrupal Camp Atlanta 2015 -  No Code Content Migration
Drupal Camp Atlanta 2015 - No Code Content MigrationHector Iribarne
 
OpenCms Days 2014 - Responsive bootstrap templates reloaded
OpenCms Days 2014 - Responsive bootstrap templates reloadedOpenCms Days 2014 - Responsive bootstrap templates reloaded
OpenCms Days 2014 - Responsive bootstrap templates reloadedAlkacon Software GmbH & Co. KG
 

What's hot (7)

PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0
 
Drupal 8 update: May 2014. Migrate in core.
Drupal 8 update: May 2014. Migrate in core.Drupal 8 update: May 2014. Migrate in core.
Drupal 8 update: May 2014. Migrate in core.
 
Content migration - CSV to Drupal 8
Content migration -  CSV to Drupal 8Content migration -  CSV to Drupal 8
Content migration - CSV to Drupal 8
 
Drupal 8 Configuration Management
Drupal 8 Configuration ManagementDrupal 8 Configuration Management
Drupal 8 Configuration Management
 
Drupal Camp Atlanta 2015 - No Code Content Migration
Drupal Camp Atlanta 2015 -  No Code Content MigrationDrupal Camp Atlanta 2015 -  No Code Content Migration
Drupal Camp Atlanta 2015 - No Code Content Migration
 
OpenCms Days 2014 - Responsive bootstrap templates reloaded
OpenCms Days 2014 - Responsive bootstrap templates reloadedOpenCms Days 2014 - Responsive bootstrap templates reloaded
OpenCms Days 2014 - Responsive bootstrap templates reloaded
 
OpenCms Days 2013 - Bootstrap your templates
OpenCms Days 2013 - Bootstrap your templatesOpenCms Days 2013 - Bootstrap your templates
OpenCms Days 2013 - Bootstrap your templates
 

Similar to How to Migrate Drupal 6 to Drupal 8?

Drupal migrations in 2018 - presentation at DrupalCon in Nashville
Drupal migrations in 2018 - presentation at DrupalCon in NashvilleDrupal migrations in 2018 - presentation at DrupalCon in Nashville
Drupal migrations in 2018 - presentation at DrupalCon in NashvilleIrina Zaks
 
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016Paul McKibben
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...Eric Sembrat
 
Tools to Upgrade to Drupal 8
Tools to Upgrade to Drupal 8Tools to Upgrade to Drupal 8
Tools to Upgrade to Drupal 8DrupalGeeks
 
Decoupled drupal DcRuhr
Decoupled drupal DcRuhrDecoupled drupal DcRuhr
Decoupled drupal DcRuhrAhmad Hassan
 
Drupal Migrations in 2018
Drupal Migrations in 2018Drupal Migrations in 2018
Drupal Migrations in 2018Pantheon
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkMediacurrent
 
Drupal Migration
Drupal MigrationDrupal Migration
Drupal Migration永对 陈
 
DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8DrupalDay
 
Drupal migrations in 2018 - SFDUG, March 8, 2018
Drupal migrations in 2018 - SFDUG, March 8, 2018Drupal migrations in 2018 - SFDUG, March 8, 2018
Drupal migrations in 2018 - SFDUG, March 8, 2018Irina Zaks
 
Drupal 8 improvements for developer productivity php symfony and more
Drupal 8 improvements for developer productivity  php symfony and moreDrupal 8 improvements for developer productivity  php symfony and more
Drupal 8 improvements for developer productivity php symfony and moreAcquia
 
Web profiler in drupal 8
Web profiler in drupal 8Web profiler in drupal 8
Web profiler in drupal 8valuebound
 
Becoming A Drupal Master Builder
Becoming A Drupal Master BuilderBecoming A Drupal Master Builder
Becoming A Drupal Master BuilderPhilip Norton
 
Migrate drupal 6 to drupal 8. Абраменко Иван
Migrate drupal 6 to drupal 8.  Абраменко ИванMigrate drupal 6 to drupal 8.  Абраменко Иван
Migrate drupal 6 to drupal 8. Абраменко ИванDrupalSib
 
Taking your site from Drupal 6 to Drupal 7
Taking your site from Drupal 6 to Drupal 7Taking your site from Drupal 6 to Drupal 7
Taking your site from Drupal 6 to Drupal 7Phase2
 
Drupal 8 and Pantheon
Drupal 8 and PantheonDrupal 8 and Pantheon
Drupal 8 and PantheonPantheon
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Acquia
 

Similar to How to Migrate Drupal 6 to Drupal 8? (20)

Drupal migrations in 2018 - presentation at DrupalCon in Nashville
Drupal migrations in 2018 - presentation at DrupalCon in NashvilleDrupal migrations in 2018 - presentation at DrupalCon in Nashville
Drupal migrations in 2018 - presentation at DrupalCon in Nashville
 
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
 
Tools to Upgrade to Drupal 8
Tools to Upgrade to Drupal 8Tools to Upgrade to Drupal 8
Tools to Upgrade to Drupal 8
 
Decoupled drupal DcRuhr
Decoupled drupal DcRuhrDecoupled drupal DcRuhr
Decoupled drupal DcRuhr
 
Drupal Migrations in 2018
Drupal Migrations in 2018Drupal Migrations in 2018
Drupal Migrations in 2018
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management Framework
 
Migration to drupal 8.
Migration to drupal 8.Migration to drupal 8.
Migration to drupal 8.
 
Drupal Migration
Drupal MigrationDrupal Migration
Drupal Migration
 
DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8
 
Drupal migrations in 2018 - SFDUG, March 8, 2018
Drupal migrations in 2018 - SFDUG, March 8, 2018Drupal migrations in 2018 - SFDUG, March 8, 2018
Drupal migrations in 2018 - SFDUG, March 8, 2018
 
Drupal in-depth
Drupal in-depthDrupal in-depth
Drupal in-depth
 
Drupal 8 improvements for developer productivity php symfony and more
Drupal 8 improvements for developer productivity  php symfony and moreDrupal 8 improvements for developer productivity  php symfony and more
Drupal 8 improvements for developer productivity php symfony and more
 
Web profiler in drupal 8
Web profiler in drupal 8Web profiler in drupal 8
Web profiler in drupal 8
 
Becoming A Drupal Master Builder
Becoming A Drupal Master BuilderBecoming A Drupal Master Builder
Becoming A Drupal Master Builder
 
Migrate drupal 6 to drupal 8. Абраменко Иван
Migrate drupal 6 to drupal 8.  Абраменко ИванMigrate drupal 6 to drupal 8.  Абраменко Иван
Migrate drupal 6 to drupal 8. Абраменко Иван
 
Taking your site from Drupal 6 to Drupal 7
Taking your site from Drupal 6 to Drupal 7Taking your site from Drupal 6 to Drupal 7
Taking your site from Drupal 6 to Drupal 7
 
Drupal 8 and Pantheon
Drupal 8 and PantheonDrupal 8 and Pantheon
Drupal 8 and Pantheon
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8
 
Migrations
MigrationsMigrations
Migrations
 

More from DrupalGeeks

Drupal 7 migrating to drupal 8
Drupal 7 migrating to drupal 8Drupal 7 migrating to drupal 8
Drupal 7 migrating to drupal 8DrupalGeeks
 
Website optimization strategies
Website optimization strategiesWebsite optimization strategies
Website optimization strategiesDrupalGeeks
 
Choose your right cms
Choose your right cmsChoose your right cms
Choose your right cmsDrupalGeeks
 
Essentials of a digital experience platform
Essentials of a digital experience platform Essentials of a digital experience platform
Essentials of a digital experience platform DrupalGeeks
 
Steps to port your module in drupal.org when you have the d8 code ready
Steps to port your module in drupal.org when you have the d8 code readySteps to port your module in drupal.org when you have the d8 code ready
Steps to port your module in drupal.org when you have the d8 code readyDrupalGeeks
 
Drupal 6-long-term-support
Drupal 6-long-term-supportDrupal 6-long-term-support
Drupal 6-long-term-supportDrupalGeeks
 
Drupal6 support end on feb 24
Drupal6 support end on feb 24Drupal6 support end on feb 24
Drupal6 support end on feb 24DrupalGeeks
 
How drupal cloned star wars?
How drupal cloned star wars?How drupal cloned star wars?
How drupal cloned star wars?DrupalGeeks
 
Acquia flush varnish
Acquia flush varnishAcquia flush varnish
Acquia flush varnishDrupalGeeks
 
How to Build Responsive Bootstrap Themes Using Drupal
How to Build Responsive Bootstrap Themes Using DrupalHow to Build Responsive Bootstrap Themes Using Drupal
How to Build Responsive Bootstrap Themes Using DrupalDrupalGeeks
 
What’s New on Drupal 8 for End Users & Clients
What’s New on Drupal 8 for End Users & ClientsWhat’s New on Drupal 8 for End Users & Clients
What’s New on Drupal 8 for End Users & ClientsDrupalGeeks
 

More from DrupalGeeks (11)

Drupal 7 migrating to drupal 8
Drupal 7 migrating to drupal 8Drupal 7 migrating to drupal 8
Drupal 7 migrating to drupal 8
 
Website optimization strategies
Website optimization strategiesWebsite optimization strategies
Website optimization strategies
 
Choose your right cms
Choose your right cmsChoose your right cms
Choose your right cms
 
Essentials of a digital experience platform
Essentials of a digital experience platform Essentials of a digital experience platform
Essentials of a digital experience platform
 
Steps to port your module in drupal.org when you have the d8 code ready
Steps to port your module in drupal.org when you have the d8 code readySteps to port your module in drupal.org when you have the d8 code ready
Steps to port your module in drupal.org when you have the d8 code ready
 
Drupal 6-long-term-support
Drupal 6-long-term-supportDrupal 6-long-term-support
Drupal 6-long-term-support
 
Drupal6 support end on feb 24
Drupal6 support end on feb 24Drupal6 support end on feb 24
Drupal6 support end on feb 24
 
How drupal cloned star wars?
How drupal cloned star wars?How drupal cloned star wars?
How drupal cloned star wars?
 
Acquia flush varnish
Acquia flush varnishAcquia flush varnish
Acquia flush varnish
 
How to Build Responsive Bootstrap Themes Using Drupal
How to Build Responsive Bootstrap Themes Using DrupalHow to Build Responsive Bootstrap Themes Using Drupal
How to Build Responsive Bootstrap Themes Using Drupal
 
What’s New on Drupal 8 for End Users & Clients
What’s New on Drupal 8 for End Users & ClientsWhat’s New on Drupal 8 for End Users & Clients
What’s New on Drupal 8 for End Users & Clients
 

Recently uploaded

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Recently uploaded (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

How to Migrate Drupal 6 to Drupal 8?

  • 2. Most tempting features of Drupal 8 ★ Fastest Drupal ever, out-of-the-box -- BigPipe & Placeholdering. ★ No more cluttering with database-stored configuration -- Makes Deployment Easier with exportable configurations. ★ New theme system based on Twig -- 154 Theme functions has been removed & replaced with TWIG Templates. ★ Symfony2 as a base layer for Drupal 8 -- HttpKernel and HttpFoundation, Yaml, EventDispatcher, ClassLoader etc.
  • 3.
  • 4. Importance of Analysis & Fore Seeking ★ Update Status(Drupal 5) / Upgrade Status must be used for analysis. ★ Ink is better than the best memory - Documentation ★ A virtual view/workflow of Migrated Website before migration - Fore Seeking
  • 5. Modules Porting Tracker Status of the Top 100 Contributed Modules for Drupal 8 ★ 19 projects are in core. ★ 16 projects have an available non-development release. ★ 37 projects have an available development release. ★ 28 projects have no available D8 release. https://contribkanban.com/board/contrib_tracker
  • 6. Can we suggest Drupal 8 right away : ★ for an existing SIMPLE project? -YES- ★ for an existing COMPLEX project? -NO- ★ for a NEW project? -YES-
  • 7. Migration Support from Drupal : The system for upgrading Drupal sites has been completely re-written for Drupal 8
  • 8. Support for Drupal 6 & Drupal 7 to Drupal 8 ★ Drupal 6: core + CCK + Link + Email + Phone + ImageCache modules. ★ Drupal 7: only content, users, taxonomy, blocks, menus, filter formats. More support for Drupal 7 to Drupal 8 is coming soon.
  • 9. Migrations that are not yet supported : ★ Views (Drupal 6 & Drupal 7) ★ Multilingual content (i18n Module Drupal 6 & Drupal 7) ★ Node, user, entity references (Drupal 6) Currently, contributed modules are required to run migrations to Drupal 8
  • 10. Known Issues with the Drupal 6/7 -> 8 Drupal 6 to Drupal 8 ★ Node Types : Default configuration in D6 was to create Story and Page content types but in Drupal 8 the default types are Article and Basic Page (which has a machine name 'page' just like in D6). ★ URL Aliases : When migrating url aliases for a language that is not enabled on the new Drupal 8. ★ Menu UI : The menu_primary_links_source and menu_secondary_links_source variables are not migrated, because they do not have counterparts in Drupal 8.
  • 11. Known Issues with the Drupal 6/7 -> 8 Drupal 6 to Drupal 8 ★ Profile categories : Fields grouped by the Profile module in D6 will not be grouped in D8. ★ Profile field (list selection) : The "allowed values" setting of the resulting field in D8 will be a combination of all selected user values and the current allowed values in D6. ★ Date formats : Only the default, short, medium and long formats are migrated. All other formats default to the fallback format and need to be reconfigured after migration. ★ Text/Input formats : It will be replaced by a null filter which simply displays an empty string.The PHP filter is not supported in Drupal 8 core -- it's very bad practice
  • 12. Known Issues with the Drupal 6/7 -> 8 Drupal 6 to Drupal 8 ★ Views : Views are not yet migrated. ★ Aggregator Categories : Drupal 8 no longer has the concept of aggregator categories and therefore they're not migrated to D8. ★ Allowed protocols : Drupal 8 now stores the protocols in "filter_protocols" container parameter, so in case you had changed the variable "filter_allowed_protocols", enter it into your services.yml file.
  • 13. Known Issues with the Drupal 6/7 -> 8 Drupal 7 to Drupal 8 ★ Blocked IPs : The id column from Drupal 7's ban_ip table is not migrated. ★ Menu UI :The menu_primary_links_source and menu_secondary_links_source variables not migrated, because they do not have counterparts in Drupal 8. ★ PHP Code : It will be replaced with filter_null, which simply displays an empty string. PHP code is not supported in Drupal 8 core -- it's very bad practice. ★ Views : Views are not yet migrated.
  • 14. A Brief description about Drupal 8 Migration API
  • 15. Drupal 8 Migration API Migration is an Extract, Transform, Load (ETL) process.For historical reasons, in the Drupal migration tool : ★ the extract phase is called "source" - Source Plugins, ★ the transform phase is called "process" - Process Plugins, ★ the load phase is called "destination" - Destination Plugins, ★ Migration configuration entities - (IDs,Configs & dependencies) , ★ Migration manifests - drush migrate-manifest provides a list of migrations.
  • 17. Migration-Related Core Modules Drupal 8 is shipped with 2 CORE Modules that provides API for Migration ★ Migrate : This Drupal core module provides the underlying API for migrating configuration and content to Drupal 8. ★ Migrate Drupal : This Drupal core module provides the classes specifically needed to migrate configuration and content from a Drupal site to Drupal 8. Why 2 Core Modules for Migration ?
  • 18. Migration-Related Contributed Modules ★ Drupal Upgrade (migrate_upgrade) : The Drupal Upgrade contributed module provides the tools necessary for performing an upgrade from Drupal 6 or Drupal 7 to Drupal 8 — both a simple user interface (at /upgrade) as well as drush commands. There is on-going work to get the UI moved to Drupal core. ★ Migrate Plus : The Migrate Plus contributed module provides optional enhancements, including groups and prepareRow events, to the core Migrate API. ★ Migrate Tools : Part of the Migrate Plus project, this module provides optional drush and UI tools for managing your migrations. ★ Migration plugins : Migration plugins for each core module are located within each module's directory. For example, the migration classes that handle taxonomy vocabularies and terms are located in the core taxonomy module.
  • 20. Executing a Drupal 6/7 to Drupal 8 upgrade Prerequisites: ★ PHP 5.5.9 or greater. ★ Install Drush 8.x ★ A Drupal 6 or Drupal 7 site database (it is not recommended to run migrations against a production database; make a copy) Source should be Localised. ★ The very latest version of Drupal 8. ★ Having the Migrate Upgrade module downloaded & enabled, which will turn on all the various dependencies (migrate_upgrade, migrate_drupal, migrate). ★ Write permissions for Drush to the config directory. Example sudo chmod -R a+w sites/default/files/config_*/active
  • 21. Most important note on Migrating to D8 ★ This is different than the way the Migrate worked in Drupal 7 and earlier versions ★ Note that you do not have to create all the content types and fields manually before running this upgrade! ★ The Migrate module will create them as a part of the migration process.
  • 22. How to use D8 Migrate ? There are 2 Ways #1 Using the Migrate Upgrade Module UI ★ It is Easier but risky as it's still under heavy development, so things may break. There is support team available for migration in case any critical issues. ★ After Installing the Migrate Upgrade module, go to Drupal 8 site's /upgrade page. ★ Now, You will see the home screen with Help Texts.
  • 23.
  • 24.
  • 25. #2 Using Drush ★ Migrate Upgrade module is shipped with drush commands Drush command : drush migrate-upgrade --legacy-db-url=mysql://user:password@server/db -- legacy-root=http://localhost/drupal6 . ★ To Add more flavours to Migration, We have Migrate Tools Module which is a part of Migrate Plus Module. Migrate Tools provides more drush commands. Drush Commands : drush migrate-status (ms) and drush migrate-import (mi) ★ drush migrate-upgrade has 2 set of process
  • 26. Using Drush Migrate Upgrade & Tools ★ It will generate migrations for your site, based on migrate_drupal's migration templates and your configured source site. For instance, the d6_book migration is only created if the Book module is enabled on both your Drupal 6 and Drupal 8 sites. ★ It executes every created migration, in dependency order. ★ To have more Control on this Drush Command ,Migrate tools comes into play.(--configure- only). You have to pass --configure-only option to the drush command drush migrate-upgrade --legacy-db-url=mysql://user:password@server/db --legacy-root=http: //localhost/drupal6 --configure-only option.
  • 27. Using Drush Migrate Upgrade & Tools ★ If you run drush migrate-status (ms), a huge list of migrations will appear. ★ You can review then selectively execute the migrations by using the following drush commands #1 drush migrate-import {migration name} #2 drush migrate-import --all Note : If you are not able to see the migrated fields in Edit Page as well as in View Page Check the “Manage Form Display” in each content type and change the fields settings and for view page you can change it “Manage Display” Tab
  • 28. Brushing up on Drush & Drupal Console Drush : The Swiss Army Knife for Drupal (More Robust)
  • 29. Drupal Console Drupal Console : Sports the modern Symfony Console component, that provides a new object-oriented interface for command line tools, exposing the power of the Symfony framework to script developers. Which is better for Drupal 8. Generates Code & Runs Testing. Drupal 8 development will get improved and it can be streamlined well, when Drush is used with Drupal Console for D8 development. http://drupalconsole.com/
  • 30.
  • 31.
  • 32. My Hearty Thanks to you all & http://drupal.org Adhitya Rajkumar @DrupalGeeks