Upgrading Drupal 7 to 8

Upgrading Drupal 7 to 8 kp37 Tue, 11/28/2017 - 18:56
Drupal Version

Migration, not Upgrading

Drupal 8, released in November of 2015, is a major rewrite of the Drupal core engine and APIs. Because Drupal 8 has changed so much, there is no direct in-place upgrade path to go from any earlier version of Drupal to Drupal 8. Instead, Drupal 7 and earlier sites must be migrated to Drupal 8, which involves setting up a whole new Drupal 8 website and copying into it (manually or automatically) the content of the older website.

Requirements and Web Hosting Support

Drupal 8 requires a hosting environment running at least PHP 5.6 and preferably PHP 7.0 or later, and support for both PHP versions is available on OIT Web Hosting. You can check your hosting account's Plesk Control Panel to see what PHP version your account is currently configured to use (the version number shows on the main control panel page, directly below the "PHP Settings" option).

If you want to have your hosting account upgraded to PHP 7 when you launch your Drupal 8 website, just open a support request with OIT and they'll take care of that for you.

Georgia Tech Migration Roadmap

Beyond PHP support, each Georgia Tech unit website will need several extra components to be fully usable. The following table is an attempt to start tracking the status of the components needed for Georgia Tech Drupal 8 sites, and it will be updated as releases and additional information come available.

Status of common Drupal 7 components in Drupal 8
(Last Updated October 23, 2018)
Component Name Available
for
Drupal 8?
Comments?
Georgia Tech Web Theme In Testing

A community built version of the GT 3 beta theme is available.

A "release candidate" version was released in early October 2018 for more seasoned developers to begin testing.

GT Account Authentication Yes

CAS module v1.0 is fully usable and CAS configuration instructions are available.

Mercury News and Events In Testing

A "release candidate" port of the official Hg Mercury was released in early fall 2018.

An alternative community built approach using the Migrate API is being investigated, but no details are available yet.

GT Content Types No Vertical, Horizontal, and Multipurpose page types are not expected to be ported to Drupal 8. Such pages will have to be rebuilt in Drupal 8. Alternative page layout systems include:

A future release of Drupal 8 (8.5 or 8.6) is expected to have its own layout system that will be similar to Panelizer.

GT Drupal Express (DX) No

A Drupal 8 installation for GT Drupal Express (DX) has not been announced or planned.

Current DX websites should remain on Drupal 7 and consider manual content migrations to Drupal 8 in the future, as it is unlikely that a script will be developed to aid DX migrations to Drupal 8.

Institute Comminucations is developing an automated installation of Drupal 8, but this will not be a direct replacement (or direct upgrade path) for existing DX sites.

A Drupal Express migration strategy guide is under development.

Web Forms Yes

The traditional Webform module has been completely rewritten for Drupal 8. The new version is at release candidate 8.x-5.0-rc22, but works pretty well for basic to moderate complexity forms.  It is much more capable than the old version, but also more complex.  Existing users should treat it like a new product and go through all available getting started and training guides / videos before trying to build a form under Drupal 8.

Drupal 8 itself comes with a limited Contact Form functionality and a handful of contrib modules (such as Contact Storage) are available to extend that functionality, though not to the level found in the traditional WebForm module. Contact forms are recommended for simple RSVP and feedback forms.

Complete Migration Process

Kevin Pittman has posted a guide to migrating from Drupal 7 to Drupal 8 that includes a lot of planning tips and technical details.

Drupal Express (DX) to Drupal 8 Upgrade/Migration Strategies

Drupal Express (DX) to Drupal 8 Upgrade/Migration Strategies kp37 Thu, 11/30/2017 - 10:56
Drupal Version

Many Georgia Tech websites have been built using Drupal Express (DX), which is a custom version of Drupal 7 that allows you to create a website with little technical or design expertise. The ready-made site comes with built in features and tools like news and events listings, and mobile optimization.

For several years, the Office of Information Technology has offered Drupal Express as an option when requesting a new web hosting account, providing the unit with this special version of Drupal pre-installed in the account so that the unit can start using the site almost immediately without having to do any technical work on the back end of the site.

Unfortunately, the people who helped to create Drupal Express no longer work in Georgia Tech's Institute Communications Office, so there has been no planning at this time for any kind of automated upgrade or migration path for Drupal Express sites. Even if anyone were to work on such a path, the high level of customization in Drupal Express's page layouts and other tools coupled with the major changes in Drupal 8's underlying architecture would make an automated upgrade of a Drupal Express site very difficult.

Below are some guidelines and tips for planning a manual site migration from Drupal Express to Drupal 8:

  • Drupal Express sites may still benefit from using the Drupal Migrate tool to at least bring over their Basic Page content. Bear in mind that some amount of clean-up will be necessary after using Migrate, but the clean-up may be easier than cutting and pasting a lot of Basic pages into your new site.

    Kevin Pittman has posted a detailed Drupal 8 Migration guide that describes how to use the Migrate tool.

  • Vertical, Horizontal, and Multipurpose page types are not expected to be ported to Drupal 8 and will not be copied over by the Drupal Migrate tool. Such pages will have to be completely rebuilt in Drupal 8. Alternative page layout systems include:
    • Paragraphs
    • Panels and Panelizer
    • A future release of Drupal 8 (8.7 or 8.8) is expected to have its own layout system that will be similar to Panelizer.

  • Other components included in Drupal Express may not be available for Drupal 8 or may have been superseded by new components. A breakdown of known Drupal Express components and their status is posted below.

In case you are enlisting the help of someone with technical developer skills who would like to know more about the make-up of Drupal Express and what to expect when migrating a Drupal Express site to Drupal 8, below is the full list of components included in Drupal Express (excluding minor ones no longer needed in Drupal 8) and their known Drupal 8 status.

Please note that just because a module has a production version, this does not mean that it works the same as it did in Drupal 7 or that it supports all of the features in the Drupal 7 version.  Please read the documentation for each module to see what has changed.

Custom Drupal Express components and their Drupal 8 status
(Last Updated October 23, 2018)
Component Name Available
for
Drupal 8?
Comments?
Georgia Tech Web Theme In Testing

A community built version of the GT 3 beta theme implementation is available.

A "release candidate" version was released in early October 2018 for more seasoned developers to begin testing.

GT Superblocks No No port planned or expected of this custom module
GT Editor No No port planned or expected of this custom module, but the built-in CKEditor provides much of the same functionality and can be customized as needed
GT Login No No port planned or expected of this custom module, but the CAS module can be installed to provide GT Account Username based authentication.  CAS configuration instructions are available.
GT Tools No Was only needed for the Drupal 7 Georgia Tech version 2 Web Theme
HG Reader Planned A "release candidate" port of the official Hg Mercury was released in early fall 2018.
JWFilter Superseded JWFilter was for the old OIT DMI media repository.  Please use the GT Kaltura video embed module for embedding videos from the new Georgia Tech MediaSpace repository
Contrib (Third Party) Drupal Express components and their Drupal 8 status
(Last Updated October 23 2018)
Component Name Available
for
Drupal 8?
Comments?
Admin Menu Superseded Use Admin Toolbar
Admin Views In Drupal 8 Core  
Block Reference Superseded Use the built in Entity Reference field
CKEditor In Drupal 8 Core  
CTools Production Not required by any previous Drupal Express modules in Drupal 8
Custom Search Beta From the Custom Search project page: "The 8.x-1.0-beta branch is usable, and instead of overriding the default search block like it did with D6/7, it provides its own block(s)"
Date In Drupal 8 Core  
Diff Release Candidate See the Diff project page
Field Group Beta See the Field Group project page
Google Analytics Production See the Google Analytics project page
IMCE Production See the IMCE project page
IMCE MkDir No  
Libraries Development Not required by any previous Drupal Express modules in Drupal 8
Link In Drupal 8 Core  
LinkIt Production See the LinkIt project page
Menu Block Production See the Menu Block project page
Module Filter Production See the Module Filter project page
Nodeblock Superseded Create a custom block type in Drupal 8 and add an Entity Reference field configured to reference node content
Override Node Options Production See the Override Node Options project page
Pathauto Production See the Pathauto project page
Pathologic No  
Revisioning In Drupal 8 Core Replaced by the combination of Workflows and Content Moderation.
Token Production See the Token project page
Transliteration No A filename transliteration patch for Drupal 8 core is available if you want to have filenames transliterated, but that patch hasn't been committed to production core yet
Video Embed Field Production See the Video Embed Field project page
View Unpublished Alpha See the View Unpublished project page
Views In Drupal 8 Core Existing views do not migrate to Drupal 8, but can be recreated by hand
Views Bulk Operations Production See the Views Bulk Operations project page
WYSIWYG Filter In Drupal 8 Core