Upgrading Aegir itself to the latest version of Drupal

This article first appeared on mig5's blog on 26th May, 2011

Today, Drupal released a security/bugfix for Drupal 6 and 7, bringing the latest version of Drupal 6 to 6.22.

Aegir is well known for making site upgrades very easy, fast and safe by way of the Migrate task. But some users might be wondering how to make the Aegir 'frontend', which is a Drupal-6 site itself, run on the latest version of Drupal without having to reinstall Aegir entirely.

For instance, if you installed Aegir 1.0 or 1.1, your Aegir system is probably running on Drupal 6.20.

Fortunately, our Upgrade instructions for Aegir, while typically describing how to update your Aegir instance to a new release of Aegir specifically, can also be used as-is to perform an upgrade of your Aegir system to the latest version of Drupal only.

In other words, follow the Aegir upgrade instructions per that link above as though you were upgrading Aegir, but retain the same version number in the steps:

export OLD_AEGIR_DIR=/var/aegir/hostmaster-6.x-1.1
export AEGIR_VERSION=6.x-1.1
export AEGIR_DOMAIN=aegir.example.com

The next step in the upgrade would normally be:

drush hostmaster-migrate $AEGIR_DOMAIN $HOME/hostmaster-$AEGIR_VERSION

The upgrade steps will actually build a new Drupal platform ($HOME/hostmaster-$AEGIR_VERSION) automatically using Drush Make.

However, you can't have two directories in /var/aegir called 'hostmaster-6.x-1.1' because Drush Make will abort on this.

To work around this, adjust the 'target platform' part of this command so that the new platform directory will have a unique name:

drush hostmaster-migrate $AEGIR_DOMAIN $HOME/hostmaster-$AEGIR_VERSION-d6.22

The naming convention is arbitrary here: I am simply suffixing it with d6.22 so I understand why I did it if I forget later :)

So long as it's a unique new target platform, your Aegir instance will 'upgrade' itself by backing up and then moving the Aegir frontend onto the new Drupal 6.22 platform, then running through the rest of the upgrade/ update.php steps automatically.

Afterward, you can safely visit the old Hostmaster platform node (usually /hosting/c/platform_hostmaster) in your Aegir frontend and remove it by running the 'Delete' task. I recommend you don't simply rm -rf the old hostmaster platform manually, but let the Delete task take care of this, and other cleanup tasks, for you.

As always if you have questions or get stuck, let us know on the Community portal, on the mailing lists, the Support ticket queue or on IRC in #aegir on Freenode.

Good luck!


If you need a consultant to handle the tasks of installing, upgrading or troubleshooting your Aegir instance, consider reviewing our consultancy services. mig5 is a core developer of the opensource Aegir hosting system.