Dec 07 2017
Dec 07

Ten years ago today Adrian Rossouw committed the first code for the Aegir project. ComputerMinds have been involved in Aegir for many of those years, particularly one of our senior developers: Steven Jones. We asked him some questions about it to mark the occasion.

When did you get involved in the Aegir project?

I went to a session at Drupalcon Washington DC in March 2009 and Adrian was presenting this mad thing: Drupal managing other Drupal sites. At ComputerMinds we were looking for something to help manage our Drupal hosting and help update sites and generally make things reliable. Aegir seemed like it might work, but after having a play with the 0.1 version it didn’t seem to actually make anything easier!

About a year later I installed it again, and it seemed much more mature and usable at that point. It was working well and we managed www.computerminds.co.uk and many other sites via Aegir.

I continued to make changes and additions to Aegir and in March 2011 I was added as an Aegir core maintainer.

What has Aegir allowed you to do that you wouldn’t have been able to do otherwise?

We landed a project to build a platform for a UK political party that would host almost all of their websites, basically a site for every one of their parliamentary candidates, and suddenly we needed to be able to create 300+ sites, run updates on them and generally keep them working.

We knew that Aegir would be able to handle managing that number of sites, but we needed a quick and easy way to create 300 sites. Because Aegir was ‘just’ Drupal and sites were represented as nodes, we wrote a simple integration with feeds module: Aegir feeds and imported a CSV of details about the sites into an Aegir instance. A few moments later we had 300 sites in Aegir that it queued up and installed.

If we’d have written our own hosting system, then there’s no way we’d have had the reliability that Aegir offered, catching the odd site where upgrades failed etc. Aegir affords a Drupal developer like me a wonderful ease of extending the functionality, because, deep down, Aegir is ‘just’ Drupal.

What parts of the Aegir project have been particularly valuable/useful to you?

Aegir has had weekly scrum sessions on IRC for as long as I’ve known it, mostly for the maintainers to talk about what they’re doing and plan. They were a great way to get a feel for what the project was about and to get to know the people involved.

Mig5’s contributions, especially around documentation, have been incredibly valuable and even inspirational: topics like continuous deployment were not just dreams but mig5 laid out a clear path to achieve that with Aegir.

Aegir forced a shift in thinking, about what exactly your Drupal site was, what an instance of it was, what parts of your codebase did what and so on.

It’s been fun to do the open source thing and take code from one project and use it in Aegir. For example, I was always bothered that I had to wait for up to 1 minute for tasks to run to create a site, or migrate/update a site. I spotted that Drupal.org was using the waiting queue project to run tasks off a queue as quickly as possible, so I nabbed the code from there, wrote about 10 extra lines and Hosting queue runner was created. Tasks then executed after a delay of at most 1 second.

Aegir has always been open to contribution and contributors are welcomed personally, being helped generously along the way.

How has your use of Aegir changed since you started using it?

We’ve moved away from using Aegir to host sites for most of our projects, but are still using it to manage over 1,000 sites. It's still essential for managing 'platform' projects that cover hundreds of sites.

It’s hard to pick an exact reason of why we moved away from it, but mainly we’ve reverted to some simpler upgrade scripts for doing site deployments, using tools like Jenkins.

We’ve compromised on the ‘site safety’ aspects of deployments, we no longer have a pretty web UI for things and we now lean heavily on the technical expertise of our developers, but we have gained significant speed and comprehensibility of deployments etc.

What Aegir does during a Migrate task is a little opaque, whereas having a bash script with 20 lines of code is easier to understand.

Aegir is still awesome when you want to change how something works about the hosting environment over lots and lots of site like:

  • Configurable PHP versions per site
  • Lets Encrypt support
  • Writing custom config for Redis integrations

What do you think the Aegir project could look like, 10 years from now?

Aegir will become ‘headless’ and decentralised, having lots of instances working together to record, share and manage config. The Drupal UI will be a lightweight frontend to manage the Aegir cluster.

Alternatively, Aegir will become some sort of AI and start provisioning political cat gif websites for its own diabolical ends!

Apr 29 2015
Apr 29

We are really excited to be a gold sponsor for the Bristol Drupalcamp. The event takes place on the 3rd and 4th of July and we will hopefully be bringing some super exciting drupal powered remote control cars - watch this space!

All the information you could ever need about the event can be found here - https://2015.drupalcampbristol.co.uk/ - we look forward to seeing you there.

Dec 19 2011
Dec 19

As the year draws to a close we thought it would be appropriate to look back at an exciting year in for Drupal modules, and to list our top 5 Drupal modules of 2011. To qualify for the list the module had to have it's first release in 2011, and have a Drupal 7 version - other than that, anything goes.

Workbench

The workbench module attempts to provide the sort of editorial interface that many other CMSs provide out of the box, with a single unified interface for content management. Workbench also comes with a couple of plugin modules that offer some key functionality:

Workbench access - provides a very clever mechanism for controlling editorial access to content, based on the site structure. This is far more intuitive than trying to come up with a solution based on something like content access or simple access.

Workbench moderation - this is awesome, simply awesome. Moderating content within Drupal has always been easy, simply set new nodes to go in as unpublished, add a little view showing a list of the unpublished content and maybe add a little rule to ping an email when new content has been added. However once a node has been published, any further changes to that node will just go live straight away. Enter workbench moderation, this little module does some magic with node revisions which prevents new versions of content going live straight away, and instead introduces a configurable moderation process. We love this.

Views 3

OK, so it's not a brand new module - but it is a brand new version of an old favourite. The views module is what always brings a smile to peoples faces when we do our Drupal training, even the most die-hard anti-CMS I-want-to-write-everything-myself-in-raw-PHP developer grudgingly offers up some praise when we do a demonstration. The latest incarnation offers a number of improvements in the user interface, some significant performance improvements and a host of small but useful functionality improvements (for example adding OR support to filter items).

Media

Drupal's media handling has always been something of a sore point, and can cause a little embarrassment when it comes to training users who have experience of other CMSs. The media module has changed all that, now finally Drupal has a media manager that actually looks and behaves like a 'proper' media manager. The module isn't perfect, and it's still in the release candidate stage, but we are successfully used it on a number of production sites without trouble.

Metatags Quick

Not the most exciting module but essential for almost every site. Metatags quick has the advantage of being pretty much the only useable metatags module for D7, with the new 'metatags' module still only at the alpha stage - and pending a couple of core bug fixes.

Omega

OK, so it's not a module it's a theme - but it does have it's own 'delta' helper module. Omega is a super powerful, super flexible responsive HTML5 960 grid based theme - what more could you ask for. It's not light (especially if you are used to starter themes such as basic), and it does take a bit of getting used to, but it more than makes up for this when you start configuring that small screen version of your site!

About Drupal Sun

Drupal Sun is an Evolving Web project. It allows you to:

  • Do full-text search on all the articles in Drupal Planet (thanks to Apache Solr)
  • Facet based on tags, author, or feed
  • Flip through articles quickly (with j/k or arrow keys) to find what you're interested in
  • View the entire article text inline, or in the context of the site where it was created

See the blog post at Evolving Web

Evolving Web