Interview: Migration, Upgrade or New Build?

Barbara Buckley / Jan 18, 2023

Earlier this month, Technical Project Manager, Gareth McWilliams and Amazee Labs Backend Developer, Mustapha Ben Ellafi, highlighted the importance of providing clients with a clear definition of specific technical terminology. This is particularly true when the project centres around moving from a Drupal 7 website to a Drupal 9 or 10 version.

It was a hugely informative session that really helped address and clarify some fundamental questions clients often have regarding transitioning from Drupal 7. 

What constitutes ‘migration’ can often be a point of discussion for potential clients, and also, importantly, how that differs from a website being classed as a ‘new build’ or ‘upgrade.’

Understanding the difference between such terms is crucial to managing expectations and timelines, so the Q&A was a great chance to dive deeper into the topic.  

"Is Moving From Drupal 7 To Drupal 9 Or Drupal 10, Classed As A Migration?"

Quick answer, no, this is generally a new build for most clients! Clients often presume that this is a quick and, somewhat simple, upgrade, but that is not the case.

Gareth McWilliams

  • Drupal 7 was built differently in comparison to later versions of Drupal. This means that there is no easy path to ‘upgrade’ a site that was built with Drupal 7 to a later version of Drupal. From Drupal 8 onwards, there was a fundamental shift in the architecture and approach, including the underlying technology standards such as Symfony and Twig.
  • In layman’s terms, from Drupal 8 onwards we see a more structured approach to development which provides developers with clear frameworks within which to work.

Mustapha Ben Ellafi

  • A good way to think about it is in terms of a car. There is no quick ‘upgrade’ path from a diesel car built in the 2000s to a fully electric modern vehicle. The vehicle would require a full rebuild to modernise the engine and other parts that constitute a fully electric vehicle.

Once the site is rebuilt on a later Drupal version (D8, D9, or D10), then the process of data migration starts. This means that all data previously stored on the Drupal 7 site must be carefully rehoused on the new site with new structures, for example, using media instead of files, to mention but one case. 

"Is It Easier To Move From Drupal 7 To Drupal 9, Or Is It Better To Skip Straight To Drupal 10? "

Gareth McWilliams

  • Like anything technically more up-to-date, there are improved usability and updates from which you could benefit if you move straight to the latest stable version of Drupal.
  • If all modules are compatible with the version you wish to upgrade to, then you should absolutely migrate to the highest version of Drupal possible, ergo Drupal 10 at this point.
  • There was a big change between Drupal 7 to Drupal 8 that required in essence a 'rebuild' of a project. However, since Drupal 8, upgrading to the latest version has become smooth sailing.

"What Actually Happens During A Move From Drupal 7 To A Later Version?"

 Mustapha Ben Ellafi

  • Firstly, we start with pre-emptive steps and conduct an audit. During this stage, we look at contributed modules and see if these modules are supported in the later versions of Drupal. If they are not supported, we look for alternative modules which provide the same functionality. 
  • We then move on to assessing the level of custom code in the existing set-up and how that can be rewritten in the new site. 
  • A very important consideration for the new site is to check the existing architecture of the website. Additionally, which entity types are being used and the relationships between those entities. The modules and solutions currently used also play a key role in informing our decision regarding the new site. 
  • After the architecture decisions have been made, we start building our website, usually, it's a hybrid that includes migrating configurations and manually setting up others.
  • Once the framework of the new site is created, taking all of the above into account, we can then migrate the data from the existing site. This stage demands incredible accuracy and constant checking that all content types have been successfully migrated and as part of this process, there are various levels of testing that need to be completed to ensure that everything is running smoothly.
  • Finally, we need to style the new website. Even if the old theme and design remain, we will still need to adjust selectors, as well as update the theme’s templates and functions.

Many organisations still rely heavily on Drupal 7. However, this legacy version of Drupal is coming to end-of-life this year, which means that users should plan their new builds sooner rather than later. The Drupal community continues to take great pride in their moral obligation to support users in maintaining secure sites, and will continue to offer support for Drupal 7 this year.

Yet, by remaining on a Drupal 7 site, your business may also be missing out on technical improvements that provide an optimised user experience. For the benefits that Drupal 10 has to offer.

Every business and every site is unique. If you are considering a move away from a legacy Drupal installation, let's talk! We are always happy to connect and discuss your requirements further.