It is imperative for organizations to stay ahead in terms of open-source security and innovation. With Drupal 7 reaching its end-of-life in November 2022 and Drupal 8 in November 2021, followed by a subsequent website upgrade to Drupal 9, now is the time to upgrade or migrate to Drupal 10.
Valuebound has a proven Drupal site audit tool helping upgrade sites of all sizes, which we will outline in this guide. The usual upgrade process begins with a codebase audit, followed by addressing code and compatibility issues. In the final stages, a trial upgrade is performed to identify and resolve any remaining issues, leading up to the full Drupal 10 upgrade.
Conducting a site audit prior to migration or upgrade is recommended. A Drupal site audit provides an overview of your current system, including modules, themes, and custom entities, and recommends necessary actions. The Drupal Site Audit tool facilitates this process by performing a site assets audit and creating a map of these assets.
Planning Website Migration to Drupal 10
As you plan for your migration or upgrade, whether from Drupal 7 or 8, or 9, it is advisable, to begin with, a readiness audit. This audit will assess the level of effort required and provide recommendations to ensure a smooth transition to Drupal 10.
The process of upgrading to Drupal 10 can be summarized as follows:
- Audit the codebase for deprecated code
- Audit the codebase for composer compatibility
- Address deprecated code issues
- Address composer compatibility issues
- Trial Drupal 10 upgrade and identify remaining issues
- Complete the Drupal 10 upgrade
In this blog post, you will have a better understanding of the process and effort required for a successful upgrade, enabling you to plan your budget and timeline effectively.
Step 1: Assess the Current State of Your Website
Upgrading from Drupal 8/9 to Drupal 10 requires careful planning to ensure a successful outcome. The first step in this process is to understand the current state of your website.
It is best to perform a Drupal site audit, and here are a few key things to consider when auditing your Drupal website for the upgrade.
- Determine Your Current Core Version: It is recommended to perform upgrades from the latest minor version of the core. If you are on Drupal 8, you should upgrade to Drupal 8.9 or later before attempting to move to Drupal 10. However, upgrading to Drupal 9 first, before moving to Drupal 10, is not necessary.
- Management with Composer: Composer is a dependency manager for PHP that makes it easier to keep the core of your site, modules, and dependencies secure and up-to-date. If your Drupal 8 site was set up with an earlier version such as 8.1 or 8.2, it is likely not managed with Composer.
- Hosting/Server Environment: Drupal 10 has specific minimum server requirements that must be met for your site to run on the server. Make sure to check the minimum requirements and verify them with your hosting company or server administrator.
Keep in mind that upgrading your server environment, including PHP and the database server, should be considered, but not performed until after you have upgraded your Drupal version locally or in a non-production environment.
Step 2: Assess the state of your third-party modules and themes
Upgrading to Drupal 10 requires considering the compatibility of your third-party modules and themes. While the Drupal 10 core has been stabilized, it may take some time for the larger community to release updated versions of their modules and themes.
Some developers have already started work on Drupal 10 upgrades, and some modules and themes are already available for Drupal 10. Others are still in progress. It's important to keep in mind that you have until November 2023 to upgrade your site to the latest version of the core and maintain security coverage. However, waiting until the last minute is not recommended.
To ensure a smooth upgrade, you should create an inventory of your third-party modules and themes and evaluate their update status. Check if they have an upgrade path and review the details of their plans in the relevant issue queues. If you discover any modules or themes without an upgrade path, consider finding an alternative or reaching out to someone who can help you update or create a custom solution.
Stay informed about the updates of the modules or themes that have an upgrade path but have not yet released a stable version. By doing so, you'll be prepared when the updates become available and can plan your site upgrade accordingly.
Step 3: Verify Compatibility with Custom Code
The release of major Drupal core updates often involves changes and deprecations to APIs, so it's wise to check the compatibility of your custom code before the official release of Drupal 10. To make this process easier, use tools like the Upgrade Status module or Drupal Rector, which can identify deprecations, make automated fixes and offer recommendations for further improvements.
You can start preparing your custom code for Drupal 10 while still using Drupal 8 or 9, which is a great way to get a head start on the upgrade process. When the time comes, you will be ready to smoothly roll out the complete upgrade once your contributed code and server environment are both prepared.
Drupal 10 was released to the public on December 14th, 2022, and it brings numerous new and exciting features to the table. While the upgrade process has become easier for Drupal 8 and 9 websites, it's still crucial to plan, prepare, and audit accordingly. Don't wait to start planning your migration to Drupal 10.
We hope these three simple steps will ensure a seamless and efficient upgrade experience. If you have any questions or need assistance with your upgrade journey, please reach out to us and we'd be glad to help.