From a failure partway through the setup, it seems that (this weeks version of) drush does not work out of the box with this build.
Trying to run drush produces:
Unable to load autoload.php. Drush now requires Composer in order to install its dependencies and autoload classes. Please see README.md
(drush) Bug: README.md doesn't seem to provide any information on what to do about this.
... but I guess there are some magic composer invocations that may help resolve this....
My log, starting from squeaky-clean, following the docs :
gizmo:~ dan$ drush dl drush-vagrant drush-hosts
Project drush-vagrant (7.x-2.0-rc4) downloaded to /Users/dan/.drush/drush-vagrant. [success]
Project drush-vagrant contains 0 modules: .
Project drush-hosts (7.x-1.1) downloaded to /Users/dan/.drush/drush-hosts. [success]
Project drush-hosts contains 0 modules: .
gizmo:~ dan$ drush dl aegir-up
Project aegir-up (7.x-2.0-rc3) downloaded to /Users/dan/.drush/aegir-up. [success]
Project aegir-up contains 0 modules: .
gizmo:~ dan$ drush vagrant-build
This appears to be your first time running Drush Vagrant or your user settings (~/.drushrc.php) have been deleted.
Drush Vagrant Integration requires those settings in order to function properly.
Proceed? (y/n): y
. # I chose " (aegir2-dev)"
..
... Happiness ...
..
.
==> aegir2-dev: notice: /Stage[main]/Drush::Git::Drush/Exec[Install composer]/returns: executed successfully
==> aegir2-dev: notice: /Stage[main]/Drush::Git::Drush/Exec[Make Composer globally executable]/returns: executed successfully
==> aegir2-dev: err: /Stage[main]/Drush::Git::Drush/Exec[Install Drush dependencies]/returns: change from notrun to 0 failed: composer install returned 2 instead of one of [0] at /tmp/vagrant-puppet/modules-966106c3d144f23416e648e62a906e9c/drush/manifests/git/drush.pp:47
==> aegir2-dev: notice: /Stage[main]/Drush::Git::Drush/Exec[first drush run]: Dependency Exec[Install Drush dependencies] has failures: true
==> aegir2-dev: warning: /Stage[main]/Drush::Git::Drush/Exec[first drush run]: Skipping because of failed dependencies
.
..
... Sadness ...
..
.
==> aegir2-dev: notice: Finished catalog run in 748.23 seconds
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.
The following errors occurred when running "vagrant up": [error]
Drush command terminated abnormally due to an unrecoverable error. [error]
My work-around for now:
Initialize drush correctly (inside the box)
$ cd ~/vagrant/projects/aegir-up
$ vagrant ssh
vagrant@aegir2-dev:~$ drush --version
Unable to load autoload.php. Drush now requires Composer in order to install its dependencies and autoload classes. Please see README.md
vagrant@aegir2-dev:~$ cd /usr/share/drush
vagrant@aegir2-dev:/usr/share/drush$ sudo composer update
... success
vagrant@aegir2-dev:/usr/share/drush$ drush --version
Drush Version : 8.0-dev
Re-run the provision (from above)
$ cd ~/vagrant/projects/aegir-up
$ vagrant provision
... seemed to pick up from where it broke last time!
...
==> aegir2-dev: notice: /Stage[main]/Drush::Git::Drush/Exec[Install composer]/returns: executed successfully
==> aegir2-dev: notice: /Stage[main]/Drush::Git::Drush/Exec[Make Composer globally executable]/returns: executed successfully
==> aegir2-dev: notice: /Stage[main]/Drush::Git::Drush/Exec[Install Drush dependencies]/returns: executed successfully
==> aegir2-dev: notice: /Stage[main]/Aegir::Dev/Drush::Git[Install provision]/Exec[drush-checkout-ref:Install provision]/returns: executed successfully
==> aegir2-dev: notice: /Stage[main]/Aegir::Dev/Drush::Run[cache-clear drush]/Exec[drush-run:cache-clear drush]/returns: executed successfully
==> aegir2-dev: err: /Stage[main]/Aegir::Dev/Drush::Run[hostmaster-install]/Exec[drush-run:hostmaster-install]/returns: change from notrun to 0 failed: drush @none --yes --debug --working-copy --strict=0 --no-gitinfofile --aegir_version=6.x-2.x --script_user=aegir --aegir_root=/var/aegir --web_group=www-data --aegir_db_port=3306 --http_service_type=apache --aegir_host=aegir2-dev.aegir-up.local --http_port=80 --root=/var/aegir/hostmaster-6.x-2.x hostmaster-install aegir2-dev.aegir-up.local >> /var/aegir/install.log 2>&1 returned 1 instead of one of [0] at /tmp/vagrant-puppet/modules-966106c3d144f23416e648e62a906e9c/drush/manifests/run.pp:31
==> aegir2-dev: notice: /Stage[main]/Aegir::Dev/Exec[aegir-dev login]: Dependency Exec[drush-run:hostmaster-install] has failures: true
==> aegir2-dev: warning: /Stage[main]/Aegir::Dev/Exec[aegir-dev login]: Skipping because of failed dependencies
Hm.
Logging in to see where it failed. I can trace the build through /var/aegir/install.log where I see lots of things happening, it completes a full drush-make, then.
Calling [debug]
_drush_recursive_copy(/tmp/make_tmp_1433884572_5577579c500e3/hostmaster-6.x-2.x,
/var/aegir/hostmaster-6.x-2.x) [150.82 sec, 8.12 MB]
Returned from hook drush_make [151.29 sec, 8.12 MB] [debug]
Command dispatch complete [151.29 sec, 8.08 MB] [notice]
We could not find an applicable site for that command. [151.31 sec, [error]
8.01 MB]
Drush could not bootstrap this platform. Please check the platform [error]
directory exists and is readable. [151.31 sec, 8.01 MB]
I can't guess where to dig right now, So I will maybe assume that our problem (as is often the case this year) is with drush versions?
When I try that hostmaster-install process a second time though, manually, it seems to have got further though this time!
re-run hostmaster-install (inside the box as aegir)
$ vagrant ssh
vagrant@aegir2-dev:~$ sudo su aegir
$ drush @none --yes --debug --working-copy --strict=0 --no-gitinfofile --aegir_version=6.x-2.x --script_user=aegir --aegir_root=/var/aegir --web_group=www-data --aegir_db_port=3306 --http_service_type=apache --aegir_host=aegir2-dev.aegir-up.local --http_port=80 --root=/var/aegir/hostmaster-6.x-2.x hostmaster-install aegir2-dev.aegir-up.local
.
...
....
Congratulations, Aegir has now been installed.
...
.
And it's mostly there now!
Tweak hosts, and re-run user-login
I still needed a local hosts hack to find it (as the drush vagrant-buld process never completed) but it got up. After only three tricky work-arounds.
This was all on a super-clean (newly installed desktop) system, so I'm pretty sure there is nothing special about what I did to get here. I'll put it down to drush-dev 8.x being annoying and unstable for now. Perhaps even aegir-dev should be locking in a required/expected drush version.
If there is something wrong, I'd like to know. In the meantime, this issue is just to capture a troubleshooting process that produced a work-around for me right now. May help someone else.
I'd like to help move to Aegir3, but this week I have an issue to debug with a recently rolled-out Aegir-2 platform, and needed to see if I could replicate the problem in a stand-alone environment (rather than experiment on live!).