The Aegir project would like to present our 0.4 alpha 13 release. This release is primarily a bug fix release, fixing the site imports which have been causing issues with alpha 12.
New in this release is the ability to specify a makefile when you create a platform, which can be either a file on the hostmaster filesystem or a URL. Aegir will automatically build the platform from the specified makefile when it attempts to verify the path, and detects that it is not there.
Features:
#373062 : 0.4 - automate platform creation
#788868 : Can we switch to cron.php (standard wget) in Aegir?
Tasks:
#904012 : Abstract AEGIR_DIR in UPGRADE.txt
Bugfixes:
#888542 : Some thoughts on the install txt file
#882970 : settings.php should not be updated before a vhost file is created and verified
#883412 : Default platform logic was deprecated and needed to be removed.
#896426 : Available updates table messed up
#896916 : Typo in install.sh.txt
#884804 : Minor spelling issues in http.drush.inc
--
The Aegir Project
Installing and upgrading :
The canonical source of installation documentation is as usual the excellent INSTALL.txt. We have an automated and scripted upgrade process for the front end, which you can read more about in UPGRADE.txt.
For those updating from before 0.4-alpha8, please note that there are instructions at the bottom of the UPGRADE.txt for you. This obviously also applies to people upgrading from 0.3.
NOTE REGARDING SSL: If you had the SSL module/hosting feature installed that was included in 0.4 Alpha 8, you need to disable it first before attempting an upgrade.
This release also requires fixes that are only present in the 3.3 release of Drush. The install script will automatically fetch the correct release of Drush for you, but you need to upgrade Drush manually when upgrading Aegir.

Comments
Makefile Platform creation
Excellent addition and a feature I was just getting my head around to asking for.
Are there any plans to extend this to control the makefile within aegir as a content type and then select from a list of makefiles on platform creation? Also adding additional commands to the platform creation task would be good so I could setup the cache directories for boost within the platform when creating it and copy some files (updates to .htaccess, robots.txt etc) to the site.
Tell me if I am getting carried away as reading that feature update got me pretty pumped about upgrading ;).
Thanks for the continual hard work on this project.
JamieT
think of release syndication
ie: subscribing to releases of open atrium, or your own custom distributions.
so this is a tool separate from aegir that feeds releases into it.
the last part of your request requires programming, and is not something that should be done from the UI.
you should read up on the provision drush commands and how to extend aegir.
re: subscribing to releases
AEgir is a fine addition to the management of the distributions. So I create a makefile with my custom bits doing what I want with drupal. AEgir lets me stamp out sites very easily. If I make a change to my distribution what can AEgir do for me to upgrade all my sites? Am I stuck creating a new platform each time then running the upgrade on each site?
--
Christian
that's how it works
because that really is the only way to get predictable, recoverable results.
This is because Aegir doesn't
This is because Aegir doesn't help to manage the code/modules/themes level stuff. Aegir manages platforms, sites (as a platform instances), servers, clusters etc. It makes deploying, batch upgrading, migrations, safe rollback very easy, but will not help you much on the code/modules level.
Makefiles will help you only on site/platform install, because they work as install profiles - only on the initial install.
If you need a better way to manage, export, import, upgrade (with versioning) for your custom settings, modules enabled etc, then use Features with your own FServer.
Managing changes after an upgrade?
I am so glad you brought this up. This is more to the point of what I am hoping to understand. I have been working with AEgir on the back burner for over a year at this point. I understand the whole drush make creating distributions for use as a platform concept. These distributions encapsulate a set of modules and patches (if you are including) + base configurations set with the .profile file. I want my distributions to have really smart defaults (as I imagine most do). So lets say I code a really smart default for my WYSIWYG editor. I would think I would put that into the .profile. Now I add some sites. everything is cool. Now I come up with a fix or addition to my really smart default for my WYSIWYG editor. I adjust my profile. So new sites get it but my old ones I have to go in by hand to fix it.
Your suggestion is Features. Which I have read about. But I don't understand how Features can do this. Can you walk me through it?
--
Christian
Some good starting
Some good starting points:
http://www.drupaler.co.uk/blog/scared-features-dont-be/492
http://developmentseed.org/blog/2009/jun/24/distributed-feature-servers-...
http://developmentseed.org/tags/features-server
That would be fantastic.
That would be fantastic. Then if a makefile was "attached" to a platform, this could potentially allow for:
FYI: Cron
My cron stopped working so i had to do the following, didn't want to use cron via wget
drush @hostmaster sqlc
-- hosting_cron_use_backend doesn't exist so add it
insert into variable ('hosting_cron_use_backend', 'b:1;');
-- reset cron
update variable set value = 'i:0;' where name = 'hosting_queue_cron_running';
quit
drush @hostmaster hosting-dispatch
cron question
how to change number of sites processed each time, block says "Items per run: 5" but i cannot find how to change it?
You can change this easily in
You can change this easily in the interface: Hosting -> Queues
only frequency
I can only change the frequency of the crons, not the number of sites processed. So to rephrase my question: if i have 50 sites and crons are run every hour does it mean that all sites are processed every hour, or only 5 of them?
vhosts not working after upgrade
I upgraded from alpha12 to alpha13, and now I am getting one of my platforms as my vhost, not the hostmaster, and this is breaking all the sites. I have looked over all the conf files I can find, but I only see the correct vhost settings. Help please.
On apache restart I get this error:
[Fri Sep 10 18:23:18 2010] [warn] VirtualHost xxx.xxx.xxx.xxx:80 overlaps with VirtualHost xxx.xxx.xxx.xxx:80, the first has precedence, perhaps you need a NameVirtualHost directive
The only thing I can find is
The only thing I can find is that the /etc/apache2/sites-enabled/000-default which is a link to /etc/apache2/sites-available/default is a duplicate. But that does not seem right. Currently all my sites are now pointing to my /var/aegir/drupal-7.x-dev as the root, even the hostmaster. When I check the /var/aegir/config files, they all point to the correct locations.
The sites were all correct before the update. Please help asap. Thanks.
we're using the less strict version
ie: virtualhost *:80
you should disable the default site, or change the aegir config symlink to be loaded before it.
Ok, but there are multiple
Ok, but there are multiple config files that have that statement.
/etc/apache2/conf.d/aegir.conf which is linked to /var/aegir/config/apache.conf:
# Aegir web server configuration file
NameVirtualHost *:80
<VirtualHost *:80>
ServerName default
Redirect 404 /
</VirtualHost>
<IfModule !env_module>
LoadModule env_module modules/mod_env.so
</IfModule>
<IfModule !rewrite_module>
LoadModule rewrite_module modules/mod_rewrite.so
</IfModule>
# virtual hosts
Include /var/aegir/config/server_master/apache/vhost.d
# platforms
Include /var/aegir/config/server_master/apache/platform.d
# other configuration, not touched by aegir
Include /var/aegir/config/server_master/apache/conf.d
# Extra configuration from modules:
then /var/aegir/config/server_master/apache.conf - Same statement as above
I am confused. And why would that make all my sites point to the drupal 7 platform ?
The thing that has really
The thing that has really confused me, like I had said, it was running perfectly before, what did the install script change that could break the apache vhost ?
Do you have any VirtualHosts
Do you have any VirtualHosts in /var/aegir/config/server_master/ that have VirtualHost (ip address):80 ?
If so, make them all wildcards instead of IP, restart APache, and see if it fixes your problem.
A release or two ago we were sticking the IP address in the VirtualHost, and this got reverted back to the original wildcard method.
same problem
I had the same issue, removed the IP addresses and put in a *. Everything is back to normal.
--
Christian
two places
clear out ip addresses from /etc/apache2/conf.d/aegir.conf
also had to do so from the hostmaster vhost entry
verifying platforms / servers etc.. does not update these, they must be done by hand... if anyone else is seeing this, we probably should add it to the UPGRADE.txt
agreed, add to UPDATE.txt
I had the same problem and was thrown for a loop until I saw this discussion. As it seems like a fairly common problem, adding it to the update docs would be nice.
Kyle Mathews
My stumbling blocks
MySQL Problem
First I got this error:
Dummy connection failed to fail: ERROR 2003(HY000): Can't connect to MySQL server on 'MYHOSTNAME' (111)
To fix that, I had to comment out "bind-address = 127.0.0.1" in /etc/mysql/my.cnf.
Then I had to realize that you need to input your actual hostname instead of $AEGIR_HOST and your actual IP address instead of $AEGIR_IP. Now aegir_root could connect to mysql.
Next I had to re-verify my server. This causes a re-verify of all the platforms, but not the sites. My sites wouldn't work until I re-verified all of them.
SSL Configuration
Now I needed to enable SSL. I went to Hosting->Features->Experimental and enabled SSL support. Since I had been using the SSL from alpha 8, I got this error:
user warning: Table 'aegirMYSITE.hosting_ssl_site' doesn't exist query: SELECT ssl_enabled, ssl_key FROM hosting_ssl_site WHERE vid=449 in /var/aegir/hostmaster-0.4-alpha13/profiles/hostmaster/modules/hosting/web_server/ssl/hosting_ssl.nodeapi.inc on line 201.To fix it, I had to run:
drush @hostmaster sqlcdelete from system where name='hosting_ssl';
Now I could go back and properly enable the SSL support feature.
With that enabled, I had to go to my SSL site->Edit, enable encryption, generate a new encryption key. This generates self-signed certificates in config/ssl.d/MYDOMAIN. Since I already had certificates I copied the existing cert files to config/ssl.d/MYDOMAIN, deleted the openssl files that Aegir created, and renamed my existing cert files to openssl.key, openssl.cert, and openssl.csr.
That worked for one site but since I have multiple SSL sites I needed to add my other IP addresses. So I went to server/edit again and input the additional IP addresses. From there I repeated the above SSL generation process for my other sites and Aegir seemed to know that the first site was using the server's main IP so it grabbed the next available static IP.
So I can't say whether those are the best methods but it worked for me.
Questions
I'm curious, though, do we need the files in /var/aegir/config/vhost.d anymore? Can they be deleted? In fact, can the directory itself be deleted?
And do we need the openssl.orig key files? I tried moving it out of the directory and I didn't get any SSL errors or warnings.
I also accidentally had Aegir generate a key I didn't need. I couldn't find anywhere in the UI to delete it so I just deleted it from the database. Is there a way to do it from within Aegir?
My simplified global.inc
I'm posting this in case it helps anyone and am also open to improvements, since I just cobbled this together from omega8cc's giant example global.inc.
<?php # global settings.php
if (file_exists('sites/all/modules/cacherouter/cacherouter.inc')) {
$conf['cache_inc'] = './sites/all/modules/cacherouter/cacherouter.inc';
$conf['cacherouter'] = array(
'default' => array(
'engine' => 'file',
'servers' => array(),
'shared' => TRUE,
'prefix' => '',
'path' => 'sites/'.$_SERVER['HTTP_HOST'].'/files/filecache',
'static' => FALSE,
'fast_cache' => TRUE,
),
);
}
if(preg_match("/(DomainYouWantToEnableDomainAccessFor)/", $_SERVER['HTTP_HOST'])) {
require_once "sites/all/modules/domain/settings.inc";
}
From the "DomainYouWantToEnableDomainAccessFor" if the site were example.com, simply using "example" seems to work.
I did a similar thing for
I did a similar thing for memcache:
<?php # global settings.php
global $profile;
$thishost = $_SERVER[HTTP_HOST];
/* Enable memcahce if its found in a sensible location */
if (!isset($profile)) {
$profile = variable_get('install_profile', 'default');
}
if (file_exists("./sites/$thishost/modules/contrib/memcache/memcache.inc")) {
$conf['cache_inc'] = './sites/all/modules/contrib/memcache/memcache.inc';
}
elseif (file_exists('./sites/all/modules/contrib/memcache/memcache.inc')) {
$conf['cache_inc'] = './sites/all/modules/contrib/memcache/memcache.inc';
}
elseif (file_exists("./profiles/$profile/modules/contrib/memcache/memcache.inc")) {
$conf['cache_inc'] = "./profiles/$profile/modules/contrib/memcache/memcache.inc";
}
$conf['memcache_key_prefix'] = $thishost;
--
Tom
www.systemseed.com - drupal development. drupal training. drupal support.
Ok, so more insight on my dns
Ok, so more insight on my dns error. I did a clean install on a different linode and test 2 things. 1, clean install from StackScripts of Alpha11, then update to 13, right away. No problems with DNS. 2. Clean install of alpha11, then add 2 platforms and 4 sites. No mods to sites. Then update to 13. This fails again and DNS points to one of the site installs. This has been reproduced now 2 times on my install. I am using the Deb 5 A11 Aegir platform from StackScripts. Help. Thanks
AEgir remote (Web) server verification fails
Hi,
I am new in this group, and fairly new with Drupal and Aegir, and I am not even sure whether this is the right place to ask questions about install problems. If my posting isn't appropriate, please give me a pointer.
I have installed aegir-04-alpha13 on a RHEL5 VM, using a local mysql db server. I have successfully enabled SSL, created platforms and a remote db server; however, I am running into a wall when trying to create a remote web server.
Verification fails when trying to rsync ~/config/includes with "Host key verification failed." error. As 'aegir', I can ssh to the node (target web server) without password/phrase, and rsync works just fine, also.
The target is CentOS-5, and I followed installation instructions. As things work from a shell, I suspect the culprit to be an 'environment' issue, but unable to get to the other side of the wall.
Any help, hint or advice will be greatly appreciated. Thanks,
-BG
Aegir for multisite configuration?
Please excuse if this question is misplaced or in the wrong place or not germane ....
We are a small educational nonprofit that rus a number of sites off one Drupal installation in a standard multisite configuration and several other stand-alone Drupal isntallations. Maintaining these sites is a bear for two reasons:
So as we grow, workload increases, chances for errors increases and our little nonprofit project gets less and less scalable and more and more time consuming.
Is Aegir the answer for us to set up one step db updates for all sites? Is Aegir answer for us to set up one step updates of block configurations, revised or new views, etc?
And is Aegir the answer for us to change initial setup of new sites to be easier and less time consuming?
Again, this is probably the wrong place to ask this question, given the incredibly detailed (and somewhat baffling) threads ahead of this, but if anyone cares to respond, we'd most appreciate it. And please direct us to the proper forum if this is, in fact, the wrong place.
Thanks so much in advance for your courtesy and consideration,
geoff gevat
youngwritersproject.org
ywpschools.net
digitalteachers.net
ggevalt
www.youngwritersproject.org
First, I'd point you toward
First, I'd point you toward features and drush (especially using its site aliasing features) for things like pushing updates for anything that's exportable (which is a lot these days). Common examples are views, panels, blocks (boxes), variables (strongarm) -- and you can even do permissions and menus now (among many other things).
Second, you could probably make use of Aegir. Take for instance, a common scenario of having several Drupal sites on a single Drupal install, then deciding you need to update several modules that are used on many of the sites. On Aegir, your workflow would look something like:
Josh...
Thanks for that. This is a whole new area for us that is necessitated by demand (which is nice) and overwhelming workload (which is not), so we will look into all these ideas. Thanks.
g
ggevalt
www.youngwritersproject.org
Separate database server
Hi,
I need help with upgrading from version 0.3. My architecture is simple: one host for web server, and other for database server. These two hosts are in a local network.
Every time i ran hostmaster-migrate command on my 0.3 version I got errors:
Dummy connection failed to fail: ERROR 2003 (HY000): Can't connect to[error]MySQL server on 'aegir' (111) [115.28 sec, 9.65 MB]
Dummy connection failed to fail: ERROR 2003 (HY000): Can't connect to[error]
MySQL server on 'aegir' (111) [115.28 sec, 9.65 MB]
Granting privileges to user@ on db_name [115.28 sec, 9.65 MB] [notice]
Created db_name database [115.28 sec, 9.65 MB] [success]
An error occurred at function : drush_db_pre_provision_deploy [115.28[error]
sec, 9.66 MB]
Dropping database db_name [115.28 sec, 9.66 MB] [notice]
Dummy connection failed to fail: ERROR 2003 (HY000): Can't connect to[error]
MySQL server on 'aegir' (111) [115.28 sec, 9.66 MB]
Dummy connection failed to fail: ERROR 2003 (HY000): Can't connect to[error]
MySQL server on 'aegir' (111) [115.28 sec, 9.66 MB]
As I mentioned database server is located on a different physical host, but during the migration process it tries to connect to 'aegir' host which is a web server (there is no database on it). How to point the hostmaster-migrate script to the correct database address?
This is also an issue with AWS EC2 reverse DNS mapping
I've also found this to be an issue with Amazon AWS EC2 - see note to my future self - http://groups.drupal.org/node/86604#comment-682423
Move discussion to community.aegirproject.org?
Hi, considering that the majority of discussions and documentation for the Aegir Project can now be found on community.aegirproject.org, perhaps it would be worthwhile to summarize the useful bits of this discussion into a handbook page.