The WDS team’s main focus is to provide support to Princeton University’s internal units - including departments, centres, and programs - so they can design and build websites with little to no development experience. This allocates more time and energy back to those teams, allowing them to focus on their specific departmental needs.
WDS needed help migrating hundreds of sites to the D9 platform, which uses new architecture and design, before D7 reached its EOL. Along with the migration goals, Princeton also sought advanced theme support to enhance their brand and incorporate new features. To begin, we conducted a technical audit and discovery to lay the foundation for future development as well as for a migration to a platform that they can optimise, which will support their internal teams for years to come.
Full-scale migration scripts to scale fully
This was a massive and intricate migration. The 650+ sites that needed to be migrated and updated were composed of three different types of sites: Template, Scholar, and Custom. Their differences derive from which Drupal distribution they operate off of.
Template Sites (also known as ‘Princeton Site Builder version 1’ sites): The group of sites that are using a Drupal multi-site installation, each of which have separate codebase repositories and different sets of modules and functionalities.
Scholar Sites: The group of sites that are using the OpenScholar distribution specifically, sharing one database and a common set of modules or functionalities.
Custom Sites: The group of sites that are completely independent; containing different codebases, databases, and/or functionalities.
The process became even more convoluted when we had to reshape the group of Custom Sites to fit the platform that it was migrating to - each of which had varying capabilities. It would be ineffective (and, not to mention, foolish) to just transfer each type of site as it was in bulk. Rather, to maintain the site's reliability and functionality from one platform to the other, it was key that almost every Custom Site had its own unique migration script, because most wouldn’t be exactly reusable or translatable.
We also proactively planned for the future - Princeton WDS needed support creating more automation processes to facilitate transferring content, branding, and layouts from an older version of a site to a newer one without so much manual overhead. This newfound capability will alleviate headaches, streamline internal efficiencies, and prepare them for whatever lies ahead.
Drupal 7’s end of life was just the beginning.
Complex scripts and huge amounts of migrations aside, there was also the pressure of D7’s impending EOL our teams needed to adhere to. At the time of our project, D7’s EOL was scheduled for November 2022 (now, the EOL date is postponed to January 5, 2025), which gave us approximately 11 months to perfectly execute hundreds of migrations, before they would become either cumbersome, obsolete, or both.
It was a requirement that all sites remained functional from one stage of the migration to the other. Just because Princeton WDS was essentially creating new versions of their sites, didn’t mean they could simply close up shop until all of the migrations were complete; they have far too many stakeholders and site owners that depend on them and their services. WDS needed to ensure that migrations were done in batches and developments were continuously done in strategic, small releases, so that the impact of the migration and going live dates were as minimal as possible, helping them maintain their standard of reliability throughout the project.
Even after sites were successfully migrated, some of the new versions required manual clean up and upgrades, which meant active involvement in post-migration work. As granular as our discovery and migration scripts were, it was unrealistic to expect to capture all gaps and platform differences for that many sites. So, it was necessary to manually go into some of the sites, to make sure everything was accurate, functional, and up to the calibre of the Princeton brand.