aegir one drupal to rule them all
DESCRIPTION
The Aegir hosting system allows developers and site administrators to automate many of the common tasks associated with deploying and managing large websites. Aegir makes it easy to install, upgrade, deploy, and backup an entire network of Drupal sites.TRANSCRIPT
One Drupal To Rule Them AllOne Drupal To Rule Them All
Who am I?
• Gareth Hall
• Communica (http://communica.co.nz)
• Freelancer / Contractor
Why do I need Aegir?
Running Drupal is hard and complicated
We got Drupal
• It awesome and great.
• But now we need a way to share a common code base.
• Why have 50 sites and all of them have their own copy of views, token, ctools, admin, wysiwyg ...
Then came Multisite
• Shared code base FTW!
• But doing common tasks is hard.
• Upgrading modules and core.
• Different module versions.
• It takes a long time to upgrade 50 sites.
Drush
• Command line tool to Drupal!
• Argh another thing to learn.
• It’s command line only ... forget it!
• Experience ... shit I broke something how do I fix it in command line.
What is Aegir?
• Drupal Multisite + Drush + Steroids
• It’s a Drupal front-end to manage common Drupal tasks like create, update and deploy.
• Manages Apache
• Manages MYSQL
Advantages
• Automation
• Roll back
• Easy to use
• Built on Drupal
• Contributed modules
• Multi server support
Disadvantages
• Poor fail over
• Built on Drupal 6
• Future road map
• Drupal only so it not framework agnostic
• Collaboration hard to do well
• No resource allocation
• No statistics
• You need a server admin
The aegir framework
• Hostmaster = Front end and is Drupal.
• Provision = Back end and is Drush.
Terminology
WTF?
Platform
• Shared code base.
• It’s one multisite.
• It’s the root of a Drupal site.
• The Platform name should describes it’s intent.
• Commerce, Basic Brochure, Ubercart 6
Site
• It’s a site within a Platform.
• It shares the code from the Platform.
• Has it’s own database.
Task
• Backend Drush operation that will or has run.
• It’s node containing an audit trail of the operation.
• Common tasks are:
• Verify
• Install
• Migrate
• Enable / Disable
• Backup
Verify
• Checklist of expected behaviour to confirm normal operation.
• It checks that your site, platform or server is working.
Creating a platform
• Create a Drush make file.
• core = 7.x
• api = 2
• projects[] = drupal
• projects[ctools][subdir] = contrib
• projects[token][subdir] = contrib
• projects[views][subdir] = contrib
• projects[webform][subdir] = contrib
• projects[] = omega
• libraries[ckeditor][download][type] = "get"
• libraries[ckeditor][download][url] = "http://url/ckeditor_3.6.6.1.zip"
• libraries[ckeditor][directory_name] = "ckeditor"
Upgrading a site
• Never upgrade a platform
• Create a new platform
• Migrate site to new platform
• Or migrate the whole platform
Remember to test!
• Selenium
• Selenium Webdriver (RC)
• Codeception
QuestionsQuestions
DEMODEMO