8

Welcome to the first post of my blog revival series. I embarked on a substantial project and I'm excited to bring you along on this journey, sharing each step and how I tackled this formidable task.

Prior to entry #7, this blog ran on a single DigitalOcean droplet (grab my ref link https://m.do.co/c/6c6678f2ac68 for a 200USD credit), supported only by PHP7.2, Drupal 8.9.10 (indeed!) and exclusively Composer 1. The objective was a straightforward upgrade to Drupal 10.1.1, the most recent version at the time of writing, with no changes to visual or functional elements. Here's how I divided the upgrade process:

1. Upgrade to D8's latest version
2. Upgrade to Composer 2
3. Prepare a new droplet supporting PHP7.4 and PHP8.1, while retaining active 7.4
4. Upgrade to Drush 10 (from Drush 9)
5. Transfer the site to the new droplet
6. Upgrade to Drupal 9
7. Upgrade to PHP8.1 compatible dependencies and switch PHP version on the server
8. Upgrade to Drush 11
9. Change the admin theme to Claro
10. Upgrade to Drupal 10

Considering the extensive preparation, the upgrade process went relatively smoothly—this stands testament to the simple, lean nature of this site with only a single contrib module. However, a few key points emerged from this quick leap from D8 to D10 that are worth highlighting for similar future endeavors:

- Say farewell to Seven: https://www.drupal.org/node/3304670
- Note the config_sync_directory update: https://www.drupal.org/node/3018145
- If your webserver is Nginx, check this: https://www.drupal.org/node/2888767#nginx-php-fpm
- Classy is also a thing of the past: https://www.drupal.org/node/3305674

Stay tuned for more insights as we continue to innovate and improve in this exciting blog revival series.