It can sometimes feel overwhelming to keep up with evolving technology. If you’re worried that migrating your organization’s Drupal 6 or 7 site to the latest version, Drupal 8, is going to cause headaches, this post is for you. Major benefits of migrating your site to D8 include: built-in responsiveness for mobile and other platforms, faster page loads and optimized performance, and a more streamlined and intuitive content editing experience. But change can be scary, I know. So I’m going to tell you how migrating to D8 can be easy and worthwhile, even if you have a complicated site, through an example.
Our client, Future City, runs a site that connects middle school engineering competitors with volunteers (educators, engineers, regional coordinators and competition judges.) Their site was built in Drupal 6, and Kalamuna has been supporting it since 2012. After 2016 when Drupal 6 was officially deprecated, Future City needed to upgrade their technology stack so that we could continue support their site. With the help of our partner agency, Manatí, we planned and executed a migration from Drupal 6 to Drupal 8.
The Future City site relies on a module called Organic Groups for its permissions structure. Basically, much of their site’s functionality is divided up into the various national regions who participate in the competition, and we needed to provide a way to give their users access to their region’s resources while restricting access to other regions. As Drupal 8 was still in the early stages of being rolled out when we planned this project, there was no Drupal 8 version of Organic Groups ready for production. While your site may not use Organic Groups, you may be thinking of some other unique variable that would seem to make your migration difficult.
After investigating a few other possibilities for how to approach this permissions issue, we decided that we wanted to stick with Organic Groups and see if we could get it working on a Drupal 8 site. Though a D8 version of Organic Groups is not yet available on Drupal.org, development is being done on the codebase here. We decided to install the pre-alpha D8 version and see what further development might be needed to get the functionality we needed for Future City’s needs. There ended up being a few additional fixes needed to get the Organic Groups module working on the new Drupal 8 site (including this patch, which was accepted by the Organic Groups maintainer) and some customization. The takeaway here is that if you or your Drupal agency is curious, you can use the flexibility of open-source code to create bespoke solutions.
Most of the development work on this site was executed by the brilliant developers at Manatí. A side benefit to upgrading the site to Drupal 8 was that we were able to make improvements to other aspects of the site’s infrastructure and our development workflow. During the upgrade, Manatí made a number of improvements to the site’s DevOps, using a combination of GitHub, and Circle CI for continuous deployment and using composer to manage the Drupal 8 codebase. So, in addition to upgrading the site to Drupal 8, we improved our development workflow on the site, making it easier to deploy new features and fixes to site functionality.
Overall this project was a great lesson in how to complete a no-nonsense upgrade to Drupal 8 while reaping the benefits of improved developer workflows and a more intuitive content editing experience. Though there are still a number of Drupal 7 and Drupal 6 modules that haven’t yet been ported to Drupal 8, even sites that depend on these modules for core functionality can make the jump to Drupal 8 with relative ease. And the benefits of a well-supported codebase, future-proofed upgrade paths, and improvements to site functionality and content editing are well worth whatever minor challenges you might face during the upgrade process.