On this page:
At a glance
Overview
GovCMS’ challenge
With Drupal 9 coming to End-of-Life (EOL), needed to start its D10 upgrade project. Drupal introduced widespread deprecations, which meant major upgrade work. GovCMS wanted to automate the upgrade process as much as possible to reduce the burden on its clients.
GovCMS’ transformation
Salsa started with an assessment of the sites impacted by the deprecations in the theme layer and identified the highest value fixes. We started with 3,500+ deprecations across the 300+ sites and worked through several rounds of fixes. Over 10 months, we implemented platform-wide fixes, bringing down the number of deprecations each time. We then did the final automated upgrade runs from Drupal 9 to Drupal 10 in October 2023.
The outcomes
A seamless upgrade path that took responsibility away from end users
Consolidation of effort to reduce overall resource effort and costs
An automated process for 300+ sites
Detailed case study
Below is detailed information on the challenge, transformation and final outcomes/benefits.
GovCMS’ challenge — Drupal 9 End-of-Life
With Drupal released in December 2022 and Drupal 9 coming to EOL in November 2023, needed to start planning and implementing its D10 upgrade program.
Drupal 10 is a major release that introduced widespread deprecations to the templating engine (Twig), removal of several jQuery libraries, as well as many PHP and API-level changes. This meant the central GovCMS distribution needed major upgrade work, as well as the 300+ SaaS sites that had customisations in the theme layer. GovCMS wanted to automate the upgrade process as much as possible and provide confidence for the many site permutations in the GovCMS ecosystem.
GovCMS’s transformation — an automated pathway to Drupal 10
As a starting point, we leveraged some of the work and learnings from the automated upgrade pathway from Drupal 8 to 9. However, upgrading Drupal 9 to Drupal 10 was a much bigger challenge because:
There were a lot more websites on the platform (300+)
There were more changes in the theme this time around, which meant there were more widespread issues in each SaaS site
We started with an assessment, creating and running an audit tool to assess what sites were impacted. From there, we identified common patterns between issues and worked closely with the distribution team to resolve issues broadly for the entire platform. Issues were resolved with platform tooling and distribution updates to make the upgrade process as seamless as possible. We were looking at 100s of iterations per site to try to find, resolve, and test anything that can be automated as part of a platform-wide upgrade from Drupal 9 to Drupal 10.
The high-level process was:
CI pipeline spinup
Generate reports and artefacts for each site to find the deprecated code
Analyse the reports to:
Identify improvements and resolutions that could be made at the distribution level
Identify additional platform tooling to help with smooth upgrades
Collaboratively fix issues with distribution code changes and platform tooling
Create feature environments with fixing applied so customers can review their sites and devs can review the code
Merge for final release
We started with 3,500+ deprecations identified across the 300+ sites and worked through several rounds of fixes, each time bringing down the number of deprecations. Over a 10-month period we continued with this process until we were only left with issues that needed manual remediation.
The final automated upgrade from Drupal 9 to Drupal 10 took place in October 2023.
The outcomes — GovCMS platform and 300+ sites upgrade to D10
A seamless upgrade path that took responsibility away from end users (we did it centrally instead of 100s of people/clients having to do it themselves)
Consolidation of effort to reduce overall resource time and costs
An automated process for 300+ sites (to our knowledge no other platform has executed this scale of automation for Drupal upgrades)
About GovCMS
The Department of (Finance) owns the GovCMS , a whole-of-government digital platform for use across all levels of government in Australia. GovCMS is built on , an award-winning, enterprise-grade CMS that’s easy to use, stable, highly secure and open source (no license fees).