2.0-alpha1 release

(TEMPORARY WORK DOCUMENT: THE RELEASE IS NOT PUBLISHED YET! :) See issue #1599606 for progress updates.)

The Aegir team is pleased to announce the first preview release (alpha) of the Aegir 2.x branch, after almost 2 years of development. We have been pretty busy with the maintenance of the 1.x branch, so development has been sometimes intermittent, but it is not over yet!

This release is only a first of a series of alpha releases that are tailored to make upcoming changes available to a wider audience than people ready to install from git, but also to make features more widely available and tested. More alpha releases will be published on a more regular basis in the weeks to come as more features from the new provisional roadmap are implemented. We are still considering the following:

We have set the following priorities:

  1. subsite support (#705026) - now that mig5 did most of the work ;)
  2. nginx cleanup (#1635596, #1635622, #1622846, #1635586, #1608910) and Nginx Debian package (#1348560)
  3. files/ sync settled (#1083366)
  4. SSL code cleanup (#941870, see also this report) - done! Now onto testing and fixing the actual bugs linked from #941870

We would like to get those in 2.x, but since no one has really started significant work on those, we are more likely to simply postpone those to 3.x at this point.

  1. standard archive support (#1138882, original roadmap description)
  2. intersite security (the infamous #762138)
  3. more intelligence in spokes (original roadmap description)

Also, since every single attempt at providing a proper timeline for the final 2.0 release has failed miserably, we'll just stop trying our luck and just give up on a formal timeline. Instead, we'll just do the freaking work. :)

1. Major changes

This first alpha already packs a lot of changes. Those release notes detail the changes since the 2.x branch was first created, all the way back two years ago, when 1.0 was released. Of course, we are not detailing all the changes made in the 1.x series that are all part of the 2.x, but only the changes specific to the 2.x release.

  • SSL improvements:
  • Drush 5 support
    • includes better support for archive-dump command
    • means we also drop the dependency on drush make 2.3, now included in Drush 5
  • Debian package improvements
    • now a "native" debian package
    • Nginx support in the Debian package
    • drop explicit dependency on Postfix
  • Nginx improvements:
    • fixed support for nginx 1.3 and newer
    • better defaults for caching
    • SSL and Nginx are now officially supported (not marked as "experimental")
  • New modules:
    • the hosting-queue-runner module is now merged into core as hosting-queued
    • "pack" module, designed as a lightweight replacement to the "cluster" module, now available as an experimental extension
  • Hosting-queued improvements
    • run with a lower priority ("niced")
    • improved portability and reliability of startup script
    • enabled by default in the Debian package
  • Code refactoring and improvements:
    • now using the Symphony autoloading code
    • fix coding style in a lot of source files
    • improved builtin test suite

A more detailed log of bugfixes and improvements is available below.

2. Major API changes

Those changes are, as usual, more explicitly documented in the upgrade path documentation.

  • hosting-task now needs a --force argument to run a non-queued task
  • functions that were deprecated in 1.x are now removed
  • the email and client_email database fields are now removed from client and site node types
  • numerous changes to the IP allocation and SSL management code

Please note that the 2.x API is still not considered stable and may change without warning until 2.x is fully stabilized, see our release process for more information.

3. Installing and upgrading

The canonical source of installation documentation is on the community site at:

http://community.aegirproject.org/installing

In a similar fashion, the upgrade documentation is:

http://community.aegirproject.org/upgrading

Within those sections you'll find step-by-step instructions for performing both manual and automatic upgrade processes.

Note that you should upgrade to the latest 1.x release (currently: 1.9) before attempting the upgrade to 2.x. This is especially important if you are running a pre-1.0 release (poor you!).

It is still imperative that you read the the upgrade path and version-specific information and follow all version-specific upgrade instructions before trying to run the upgrade script or manual upgrade.

4. Need help?

If you struggle to install or upgrade your Aegir system, you have a number of options available to you for getting help.

Consult this page for more information: http://community.aegirproject.org/help

Thanks to our awesome community for their help, support and encouragement as always! Enjoy the new release :)

5. Features and improvements

In addition to the "major changes" mentioned above, the following should also be noted.

6. Bugfixes

This is a non-exhaustive list.

7. New contrib modules

To be completed - not sure this belongs, as those are not necessarily compatible with 2.x...