A new way to Multisite: migrating Aegir to GitHub for WSU Vancouver

About 7 years ago, Washington State University, Vancouver set up their 11 websites on Aegir using a single Drupal 8 codebase. Thanks to Aegir, our client and friend Aaron Thorne was able to maintain all 11 websites by himself, despite not being a Drupal developer. Eventually, though, it was time for something new.

Last year, they contacted me to upgrade their sites and the hosting platform, but keep it inside their own private server infrastructure.

We took our time to figure out how we could design a new model for a multisite codebase, hosting, testing.

How can we implement reliable quality controls and automated delivery across all 11 sites? How can we make it as easy as possible for developers and system administrators to maintain? How can we leave WSU Vancouver with a system that they can use long term, so that they can update their codebase... forever?

The answer? A new self-contained system using DDEV, GitHub Actions, and clever usage of settings.php and Drush aliases.

I gotta be honest: as a developer, working this way has been a dream.

Host Your Own Pull Request Environments with Automated Behat Testing - New England Drupal Camp

Host Your Own Pull Request Environments with Automated Behat Testing

Do you host your own Drupal?

Do you wish you could have that great git-push-deploy workflow provided by so many hosted solutions, but on your own servers?

Wish no more! 

With Open Source DevShop, you can use any linux server to host, test, and develop your Drupal sites.

DevShop installs in minutes, with no special script writing or configuration required. 

In this session, we will demonstrate Automated Pull-Request-Environments with Behat testing, completing and deploying a new feature of our website LIVE in session!

See https://devshop.support for more information.

Frequently Asked Questions:

How does it work?

DevShop is just a Drupal site that manages a basic LAMP stack. All of the logic and all of the service to make it work are self-contained in the Drupal code. This makes it quite easy to understand. If you know PHP and Drupal, you can learn DevShop. There are optional modules for Docker, but it's not necessary. DevShop runs on a single server. 

Is this a hosted service?

No. DevShop is 100% open source. We do not provide hosting services directly. However, if you run your own server, you can sign up for DevShop.Support if you ever need help or SLA-level hosting service.

Is this used in production?

Yes. DevShop was originally created as an extension of Aegir in February of 2012. It was used in production as soon as it was created.

Audience Level

Beginner

Topic

DevOps

Introducing Operations Site Runner: a self-hosted CI/CD platform using GitHub Actions and DDEV.

I've been building and designing automation systems for almost 20 years. I built DevShop on top of Aegir to implement continuous integration and quality control over 10 years ago.

Running CI systems is hard. Really hard. There needs to be an active task runner. A dashboard. API integrations. Tooling. Network Access. It can be incredibly complicated. In the Enterprise? Forget it.

I've been imagining a new system for many years, and here it is.