Project

From Drupal 7 to Drupal 10: the example of upgrading the IRP AUTO website (irp-auto.com)

Published on 17 November 2023
Photo showing 2 developers from the bluedrop.fr team working on updating Drupal 7 modules
IRP AUTO entrusted us with the task of upgrading their website from Drupal 7 to Drupal 10. This technological leap enhances its robustness, security, performance, and maintainability. Here’s how we did it.
IRP AUTO is the social protection group for the automotive services sector. It has been supporting businesses, craftsmen, employees, and retirees in automotive services for over 70 years. Among other things, it offers services in prevention, supplementary pensions, provident schemes, complementary health insurance, employee savings, and social action.

Taking advantage of the technological advancements offered by Drupal 10

The website www.irp-auto.com provides a wealth of information: group news, articles, videos, a FAQ, surveys, documents to view or download. It serves as both a commercial tool and an essential information resource for users. It also functions as an entry point to users' secure areas.

The IRP AUTO group, aware of the inevitable obsolescence of Drupal version 7, first wanted to clean up and update the application as well as the configurations of the operating environments (OS, PHP, Apache, and MariaDB).

Initially, an "iso-functional" upgrade of the site to Drupal 10 was carried out, taking advantage of the redesign of the theme to apply a slight improvement to the graphical interfaces. This upgrade has now entered the TMA phase and the IRP AUTO group is now considering optimizing user journeys. 

Capture d'écran d'une page du site irp-auto.com (desktop)

Site features to keep when migrating to Drupal 10

In addition to the information presented in the introduction, the site mainly offers various informational and interactive content:

  • Polls to gather users’ opinions;
  • A sharing module for social networks or by email;
  • Subscription services to stay informed about the latest updates;
  • Customer testimonials;
  • A library of practical information guides;
  • Forms with thematic selection filters.

The site also offers several services:

  • Online membership services for health contracts with electronic signature (Safran-Dictao);
  • A web-call-back service: telephone assistance with immediate call back from an advisor (Linkéo).

Some features are dedicated to site accessibility: 

  • A text zoom function for better reading comfort;
  • Audio reading of articles (Readspeaker);
  • Dynamic reading of documents in the form of an electronic magazine (Flipbook).

On the administration side, this site also offers:

  • Statistical tools to monitor site traffic;
  • Sales support tools (simulators) and commercial transformation tools;
  • Contributor rights management;
  • A contribution and publication scheduling workflow;
  • A job posting tool, HR area.

The methodology for upgrading from Drupal 7 to Drupal 10

As mentioned in our previous publications, a technical upgrade between versions 7 and 8/9/10 is not technically feasible. The community's efforts have shifted toward providing a content migration path. Consequently, it is necessary to reinstall a standalone Drupal 10 instance.

Key stages of the project:

  • Project initialization (retrieval of source code, documentation, and technical mapping of IRP AUTO in version 7).
  • Technical audit of the Drupal 7 site and drafting of technical specifications following the audit.
  • Deployment of a new Drupal 10 instance and import of content, users, files, and configurations.
  • Responsive integration of a new Twig theme, the template engine built into the CMS since version 8.
  • URL migration and SEO optimizations.
  • Testing, quality control, and validation.
  • Launching the site while taking deployment constraints into account (and the continuous integration pipeline).

An essential audit phase

The audit allowed us to get hands-on with the Drupal 7 site and understand its general structure. We also analyzed the libraries, theme, contributed modules, and custom modules (versions, maintainability, upgrade paths, etc.)

Specifically, our work involved:

  • Reviewing the current site and making an inventory of all its content, features, and functionalities.
  • Assessing the current content and features, deciding what should be kept as-is on the new site, what should be adapted, or what should be left behind.
  • Examining the current design/theme.
  • Ensuring the hosting environment is compatible with Drupal 10.
  • Identifying potential difficulties that could arise during the update, such as modules not compatible with Drupal 10 or modules that have been discontinued and not upgraded beyond Drupal 7. In case of incompatibility, we had to propose alternative modules supported in version 10.

A new look, different but not too much

We took the opportunity of redesigning the theme to give it a graphical "facelift." Without changing the structure, we leaned on the IRP AUTO visual style guide to propose a more modern version, notably with rounder shapes. We also upgraded media management, notably by using new-generation image formats and .svg files whenever possible.

Site interfaces www.irp-auto.com before / after:

Capture d'écran - Ancien site IRP Auto - Drupal 7
Capture d'écran - Nouveau site IRP Auto - Drupal 10

The steps of the technical upgrade

We have:

  • Installed a new, clean Drupal 10 instance.
  • Recovered the site’s initial configurations (content types, views, roles, fields, permissions…)
  • Updated contributed and custom modules based on our inventory and analysis work carried out during the audit.
  • Ported the custom modules to version 10 (code updated for Drupal 10.X and PHP 8.1.X, and documented the new configurations).

Content migration

To minimize data loss, this automated operation must be performed after updating all features and ensuring they are compatible with Drupal 10.

Theming

In its structure, Drupal 10 is very different from Drupal 7 in terms of theme, file structure, and template/HTML calls. It is therefore necessary to create a new theme. Some features that were part of the theme in the Drupal 7 version of the site have been moved to custom Drupal 10 modules to make them easier to call and use. 

The theme is now “cleaner”. A number of CSS and JS files in template.php have been removed or updated.

Sample of updated UI components:

A logic of continuous integration

In addition to our CI/CD pipeline consisting of Jenkins, PhpStan, and SonarQube, we have adopted the internal deployment procedures of the IRP AUTO group on Azure DevOps.

The development team gradually pushed code packages to SonarCloud for analysis and implemented the recommended optimizations, achieving A ratings on the various evaluation criteria: reliability, security, maintainability, and security review. 

The project was completed in October 2023. IRP AUTO can now capitalize on the refreshed interfaces and the technical upgrade it has just accomplished. We warmly thank the project teams for their trust, honesty, and transparency throughout the project. For more information, feel free to check out our case study on the subject or contact us!

URL: https://www.irp-auto.com/
Go live: 24/10/2023.

Photo showing a mechanic under a bridge, working on car repairs – Photo by Enis Yavuz on Unsplash

IRP AUTO

For more information, you can consult our case study on the subject.

IRP Auto's perspective on the Drupal migration of its website

"When we entrusted Bluedrop Agency with upgrading our public site from Drupal 7 to Drupal 10, it was far from a sure thing. In just a few months, the agency perfectly met this challenge which, beyond the technical aspects, required the automatic migration of most of our content and a graphical refresh that respected the existing look. Congratulations to the whole team for their attentiveness, availability, dedication, and their ability to offer us solutions!"

Samira Person User Project Manager.
Photo of the testimony’s author

"In a complex context and with an extremely tight schedule, the bluedrop.fr team was able to support us thanks to their technical expertise in choosing the solution and addressing the challenges of a version migration. This support extended from the contracting phase all the way through to the production launch."

Mayalène Dronne, Product Manager, Portals.
Decorative image

Read more articles on Project