Aegir One Drupal to Rule Them All
-
Upload
gareth-hall -
Category
Technology
-
view
233 -
download
1
description
Transcript of Aegir One Drupal to Rule Them All
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