2.0-beta1 release notes

The Aegir team is pleased to announce the first stabilization (beta) release of the Aegir 2.x branch, after nearly 3 weeks of development since our second alpha release. While we had expected an additional alpha release prior to the beta cycle, development on outstanding features went smoother than foreseen. We've added some significant features, and fixed a couple bugs and (again) made some important improvements to our API.

This release marks our feature freeze. The intention is to limit any further changes to only critical and major bug fixes. However, exceptions may be granted on a case by case basis. Our development efforts will now move to tackling all release critical bugs. Once all of these are fixed, we'll move on to our release candidate (RC) phase. That said, we expect this release to be sufficiently stable that we intend to run it in production at Koumbit soon.

Release overview

This release introduces a major new feature into Aegir core: support for installing sites in subdirectories (example.com/foo, example.com/bar, etc.). This has been our number one feature request from higher education institutions, and so we hope that this will enable greater adoption within that sector. While categorized as an "experimental" feature, we feel our approach is sufficiently strong that we're considering merging this into our core site functionality.

Additional new features include a nice homepage, fixes to SSL support and IP allocation on clusters, and we've added a couple new roles.

We've also tackled a number of bugs, especially in the Debian package, which now supports installing Aegir on Nginx servers. We've also fixed some issues introduced with the new views code, and improved nginx support.

The project's Debian repo now includes Drush 5.9, and we have migrated the 'aegir2' packages to the Testing repository.

Known issues

  • the debian package shows a lot of garbage when installing from scratch, which is almost harmless except that we don't see the login URL, use drush @hostmaster uli to get a new one, fixed in issue #2002076
  • SSL support was severely broken for single servers and could lead to loss of the SSL certificate copies when a non-SSL site is installed. See commits f0980e0..9b86038 in Provision for fixes. (fixed in issue #2023621)
  • the Debian package is severely broken - in most configuration (e.g. clean installs but not upgrade) the install will just fail with a permission denied. See commits d4efa37 and 56d1718 for fixes.

These are related to drush:

  • some warnings and errors may not show up in Aegir's task logs, making it believe tasks succeeded when the actually failed. this affects only hosting-queued. (issue #1931000 / issue #1982502)
  • our release process is now done by hand instead of automated because we can't use our aegir distribution as core (issue #1991764)

Subdirectory support is still very preliminary and needs those issues to be fixed before completion:

  • Nginx support missing (issue #2020091)
  • If example.com/foo is created, the example.com virtual will be overwritten and the site inaccessible under that domain (issue #2020089)
  • Multi-server support is untested (issue #2020079)
  • Code needs to be refactored to the new 2.x API (issue #2020075)

API changes

New features

  • Support for installing in subdirectories (issue #705026)
  • Proper homepage on startup so non-logged-in users don't see an error page, and new users have basic instructions (issue #1793740)
  • SSL support for clusters should now work properly (issue #2000964)
  • New roles added: 'aegir platform manager', 'aegir administrator' (issue #1403208)
  • Convert list of platforms to use views (Issue #1876350)

Bugfixes

  • Debian package support for nginx was severely broken issue #2001142
  • the views bulk operations version shipped with alpha2 had security issues, see issue #2001964
  • an update hook was incorrectly named, and has since been fixed. The updates should not be destructive, but may output errors.
  • Placement of a number of our new Views-based blocks was omitted from the install profile, and so won't appear on a fresh install. These can be manually placed on the blocks page.
  • fix warning "Invalid argument supplied for foreach()" (issue #2005698)
  • fix "Unknown options for provision-save" error (issue #1972286)
  • removed hardcoded checks for IP addresses in settings.php that belong to core (issue #2013683)
  • Views filter for status does not tell what to filter for (issue #1997088)
  • nginx cloaks database credentials properly now
  • configure nginx to properly talk to the default php-fpm configuration in Debian (issue #1635622)
  • lots of fixes for the Debian package, including