Needs work
Project:
Aegir-up (Vagrant-based Aegir virtual machine)
Version:
7.x-2.0-alpha3
Component:
Puppet manifests
Priority:
Major
Category:
Bug report
Assigned:
Reporter:
Created:
30 Jul 2012 at 23:28 UTC
Updated:
13 Mar 2013 at 15:57 UTC
Comments
Comment #1
helmo commentedThe essence is:
Please try the latest changes in drush-vagrant and aegir-up.
Comment #2
ergonlogicThis was from a very old version, before splitting out drush-vagrant. So, I'm closing as 'cannot reproduce'. Feel free to re-open (or start a new issue) if you see this with the current versions.
Comment #3
jon pughWith the very latest 7.x-2.x branches of aegir up and drush vagrant, I get the same symptoms.
I can SSH in, get the "It Works" apache page, I even see
when I login. But no aegir user.
The error messages that were red flags for me:
Then, at the end of the script, I get:
I installed vagrant via sudo apt-get install vagrant on Linux Mint 12, but I think the problem is the different versions of guest box additions and virtualbox itself.
Comment #4
jon pughForgot to mention, Tizzo's blog tipped me off to the problem of VBox guest additions version problems: http://www.zivtech.com/blog/one-click-automated-vagrant-base-box-builds-...
Comment #5
helmo commentedThis indicates that a puppet class is missing.
Check the 'lib/puppet-modules/aegir' in aegir-up, it's a git submodule.
Comment #6
jon pughI just now noticed there are submodules in the repo, then saw your reply. Thanks for the heads up, will try this soon!
Comment #7
jon pughOk, it removed that warning, and I built a new project and got this:
Comment #8
mccrodp commentedI too am getting a similar error, seen below.
I can ssh into the box using
vagrant sshbut the aegir directory is not mounted and I cannot mount it using (Connect to server) nfs://192.168.11.0 or smb://192.168.11.0 or using the path nfs://192.168.11.0/var/aegir, seems like the ip is invalid, I get a timeout when I ping 192.168.11.0 too. I am not sure if this is related to the above error however. I am looking for a pointer in the right direction (info or link to docs) on.Any help at all on any of the above is appreciated. Thanks,
Paul.
Comment #9
ergonlogicI believe the problem stems from
FACTER_fqdn=''. That should have the URL of the vm inserted by Vagrant. Try replacing$hostnamein .config/config.rb, with a string of the hostname for the project, and re-run provisioning.Comment #10
discipolo commentedrunning into this on 2.x
i tried replacing $hostname with "myhost" and rebuilt the machine (which seems to rerun provisioning)
but to no avail. the errormessage just reads FACTER_fqdn='myhostname'.
using drush_vagrant 3.x
using drush vagrant 2.x i get a different result, it seems drush cannot be located. is this the same issue as http://drupal.org/node/1889668 ?
Comment #11
mccrodp commentedHi ergonlogic, I guess when you say 're-run provisioning', you don't mean build a new project by running
drush vagrant-build --blueprint=aegirbecause it won't proceed with a project of the same name when it already exists. If I delete my project 'aegir-test1' I'll also be deleting $hostname replacement in ./vagrant/projects/aegir-test1/.config/config.rbI've run
drush vagrant rebuildanddrush vagrant rebuild aegir-test1, but I'm not getting anywhere. I know this is a standard vagrant error, but I'm not sure if this is how I should re-provision. Do you have any specific instructions that may help or plausible methods to fix this 'FACTER_fqdn' issue for the project itself? ThanksComment #12
DanyO commentedI believe you are looking for the command
vagrant provision [vm-name]Comment #13
mccrodp commentedThanks DanyO, I ended up finding this command a bit after posting the above, but still unsure how to use it in this case with aegir-up.
I built a project using
drush vagrant-build --blueprint=aegircalled 'aegir-up-test' and after seeing the emptyFACTER_fqdnI edited the $hostname in./vagrant/projects/aegir-up-test/.config/config.rb. As this is a project and not a VM,vagrant provision aegir-up-testobviously doesn't work. The VM that vagrant-build downloads is a lucid32 box, so to re-provision I ran the following commands as the VM needs to be 'up' when you re-provision it seems.It doesn't seem to re-run or at least output the same logging to the screen as is output when you run
drush vagrant-build, so I'm not sure if I have re-provisioned correctly or how to test if I have. I guess this is still an issue though if it fails in the first place? I'm just not sure how to go about helping with solving it yet with my current knowledge of Aegir-Up and where the $hostname value is supposed to come from.Comment #14
ergonlogicIt'd be great to get some testing of the latest release: 7.x-2.0-alpha3.
I think the fqdn thing is a red herring, as I don't think it's even used anymore... That is, I get the same
FACTER_fqdn=''output whenever an unrelated error occurs, but otherwise this works fine. I'll need to clean that up, but I don't think it's the root of this issue.I suspect it has to do with having switched to Git submodules for Puppet modules, which isn't supported by drupal.org's packaging script (see:#1532248: Remove --recursive from git clone text on Drupal.org's version control tab ). As a result, git cloning the repo with '--recursive' will also clone the relevant repos containing the Puppet modules, while installing via 'drush dl aegir-up' won't. This made for difficult debugging, since I assumed that the packaged version would match what's in the git repo.
I've switched to using librarian-puppet to manage Puppet modules in Aegir-up. Basically, it'll fetch the modules, and I can then just commit them directly into the repo. I'll have to check whether there are some straggler in drush-vagrant though.
Comment #15
danquah commentedI had the problem mentioned in #7 - basically the whole setup of aegir that where supposed to happen before the module was attempted enabled never did so.
So - I cloned the aegir-up repo, checked out 7.x-2.0-alpha3 and did a fresh drush vagrant-build --blueprint=aegir-dev
The provisioning of the box seems to be working better now, but I now get the following errors
A group with GID 20 already exists (dialout) which causes all sorts of problems as a lot of things depends on this step (such as the creation of the aegir user).
I ssh'ed in, deleted the dialout group, and did a vagrant provision. This time I got my login link and aegir is up and running :)
Two things i noticed during my debugging:
1: On the first run I got the following error
I ssh'ed in and did an apt-get update and it seems that there are some problems with the kumbit apt repo
2: In general I get a number of errors when i re-run provision such as a "git clone" of drush failing because it has already been done once. As it did not prevent me from getting everything up and running in the end it is not a dealbreaker, but it does make the whole process a bit harder to debug as you end up chasing error-messages that has nothing to do with the actual problem you are trying to fix.
Leaving the current issue as "needs work" in case someone has fixes for the above "sub" issues
Comment #16
ergonlogic@danquah Thanks for testing!
Yeah, that group juggling is all legacy of trying to work around Vagrant limited NFS support. I think I'll just rip all that out, as it's not doing any good at this point.
I think the other problems were due to the puppet modules (apt, drush) being out-of-date. I'll try to tackle that shortly.
Comment #17
ergonlogicFor the latter stuff, I updated drush-vagrant to use librarian-puppet in the 2.x branch, and updated the apt and drush modules. I also pushed a new release, as there had been quite a few changes since the last one. Try out drush-vagrant 7.x-2.0-beta7, as it should clear those up.
Comment #18
mccrodp commentedI still don't get this, re-downloaded latest version of drush, drush-host, drush-vagrant and aegir-up, followed the new "My Aegir Development Environment" and ran
drush vagrant-build --blueprint=aegir-devit bombs out at the end. The duplicate declaration I'm guessing is due to this being the second time I ran it, I deleted the project folder in the intrim and re-ran and got the below.It creates no Vagrantfile, so is that the reason vagrant up isn't working here. If so, where do I get you more information or logs for the error? I then ran
vagrant init debian-LAMP-2012-03-29and everything seems to be installed correctly. But this isn't the way to init the project, is it?On a side note I don't understand how to re-provision using say my project name 'aegir2-dev' as mentioned earlier in the thread, but maybe I should post that over on aegir community page.
Which one do I edit and what do I run to take in these changes / branches as obviously after running vagrant-build, the defaults are already downloaded.
As you stated, if the
FACTER_fqdn=''is not related to the error in this issue, please let me know if there is another related ticket or if I should open a support request or separate bug issue.Thanks.
Comment #19
ergonlogic@mccrodp The 'duplicate declaration' is due to 2 things. First, in updating the Puppet modules, the 7.x-3.x branch drush-vagrant module got included by mistake. I've fixed it, and pushed a new release.
In the 3.x branch, I have prototype code to add user dot files to the 'vagrant', 'root' and 'aegir' users. It appears that you are operating as the 'root' user (note: this is generally a bad idea). So, when it tries to create your user, it's conflicting with the settings it's trying to apply to 'root' by default.
I don't understand how that could be, since you couldn't have received the error above if that were the case. I guess technically it isn't creating a makefile, but rather it creates a symlink to a Vagrantfile in the drush-vagrant directory. If it's not creating that symlink, then that's a new issue. Please confirm it, and post a new bug report, if that's the case.
You'll probably want to edit the one in the project itself. './vagrant/projects/aegir2-dev/manifests/nodes.pp' in your case.
Comment #20
DanyO commentedTo solve the following err :
err: /Stage[main]/Aegir_up/Group[aegir group]/ensure: change from absent to present failed: Could not create group aegir: Execution of '/usr/sbin/groupadd -g 20 aegir' returned 4: groupadd: GID '20' already existschange your .drushrc.php GID variable to something else. I used 1001.
Destroy the vagrant instance and make a new one with the GID change in the .drushrc.php file and it won't show this error anymore.
As for the apt-get errors and empty FACTER_fqdn=''" variable, I was still able to ssh in and run these commands as root. By following these steps I got my aegir machine working in vagrant. Just remember to change to the user aegir to use drush commands, since it won't let you with root user. Hope this helps.
Comment #21
mccrodp commentedThanks DanyO's, your solution in #20 above worked for me, it got to end of the build without errors (making sure not to run as root on my local machine). The Vagrantfile was being created in
./vagrant/projects/aegir2-dev, for some reason I expected it in the directory I ran vagrant-build. I do have some errors when running an update on the VM though.I wanted to then use for example a different provision branch and edited
./vagrant/projects/aegir2-dev/manifests/nodes.ppto use the branch 'dev-1205458-move_sites_out_of_platforms' described in My Aegir Development EnvironmentI then ran the following, but it doesn't pick up the 'dev-1205458-move_sites_out_of_platforms' branch.