Obsolete talk:Help:Labs-vagrant

Rendered with Parsoid
From Wikitech
Latest comment: 8 years ago by Yurik in topic Run out of disk space

permission problems

Hey, spage here with my experiences

I created the instance ee-flow-extra, added the role labs-vagrant from wikitech's instance config, and ssh'd to the machine.

Strange puppet error

 $ sudo head /var/log/puppet.log
 Could not parse configuration file: Certificate names must be lower case; see #1168

No labs-vagrant command, probably because I didn't force a puppet run. But a few minutes later it was there.

 $ labs-vagrant enable-role visualeditor 
 /mnt/vagrant/lib/mediawiki-vagrant/helpers.rb:50:in `initialize': Permission denied \
       - /vagrant/puppet/manifests/manifests.d/vagrant-managed.pp (Errno::EACCES)

so presumably you have to run commands with sudo, or maybe there's a permissions bug. The directory /vagrant/puppet/manifests/manifests.d/ is drwxr-xr-x 2 vagrant www-data

After enabling roles visualeditor, parserfunctions, echo I ran provision. Various errors:

 err: /Stage[main]/Misc/Exec[update motd]: Failed to call refresh: \
       run-parts --lsbsysinit /etc/update-motd.d > /run/motd \
       returned 1 instead of one of [0] at /vagrant/puppet/modules/misc/manifests/init.pp:68
 
 err: /Stage[main]/Mediawiki/Git::Clone[mediawiki/core]/Exec[git clone mediawiki/core]/returns: \
       change from notrun to 0 failed: \
       git clone https://gerrit.wikimedia.org/r/mediawiki/core.git /vagrant/mediawiki \
       returned 128 instead of one of [0] at /vagrant/puppet/modules/git/manifests/clone.pp:38
 
 err: /Stage[main]/Mediawiki::Parsoid/Git::Clone[mediawiki/extensions/Parsoid]/Exec[git clone mediawiki/extensions/Parsoid]/returns: \
       change from notrun to 0 failed: \
       git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Parsoid.git /srv/parsoid \
       returned 128 instead of one of [0] at /vagrant/puppet/modules/git/manifests/clone.pp:38

The directories /vagrant/mediawiki and /srv/parsoid exist but are empty. I can run git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Parsoid.git /tmp/parsoid_git_test fine, so I'm not sure what the error is.

/vagrant/logs/puppet is empty.

-- spage (talk) 07:42, 7 November 2013 (UTC)Reply

I retried sudo labs-vagrant provision , got same "git clone returned 128 is stead of one of [0]" errors. Maybe it's a permissions problem, /home/vagrant is owned root root and has no .git or .ssh directories, seems fishy. I ran sudo bash; su - vagrant and got warning cannot create directory `/home/vagrant/.gem': Permission denied. I ran the failed git clone commands as user vagrant and they worked fine.
Before the git clone failures there's a blue notice: /Stage[main]/Mediawiki::Parsoid/Git::Clone[mediawiki/extensions/Parsoid]/Exec[git clone mediawiki/extensions/Parsoid]/returns: fatal: Could not change back to '/home/spage': Permission denied. My home directory is mode 700 but /home/yuvipanda is 755, I think that's the problem. I made mine 755 and sudo labs-vagrant provision completed with no errors!

-- spage (talk)

This all seems fixed in my recent setup of a new medium instance running the labs-vagrant role, yay! -- spage (talk) 02:16, 12 May 2015 (UTC)Reply

Parsoid errors using VisualEditor role

I enabled the visualeditor role (and echo and parserfunctions) on ee-flow-extra instance.

Clicking Edit on a page seems to bring up VE, but displays an alert

 Error loading data from server: parsoidserver-http-bad-status: 404. Would you like to retry?

/var/log/upstart/parsoid.log contains

ERROR in localhost:Main_Page
Stack trace: DoesNotExistError: Page Fetch failure for null
worker 22037 died (1), restarting.

I get the same status 404 contacting Parsoid from the command line:

 curl --dump-header - -d 'wt=Hello world' localhost:8000/localhost/Main_Page

-- spage (talk) 07:57, 23 November 2013 (UTC)Reply

ErikB improved the DoesNotExistError logging (bug bug 57694) to log the error, and it's
   Stack trace: DoesNotExistError: Page Fetch failure for null : Error: Invalid URI
 "undef/w/api.php?format=json&action=query&meta=siteinfo&siprop=namespaces%7Cnamespacealiases%7Cmagicwords%7Cfunctionhooks%7Cextensiontags%7Cgeneral%7Cinterwikimap%7Clanguages%7Cprotocols"
The bad URL path with undef arises because puppet/manifests/roles.pp sets $server_url to this (bug 57701).
spage (talk) 03:28, 28 November 2013 (UTC)Reply

puppet errors

My labs instance has a bunch of

spage@ee-flow-extra:/srv/parsoid$ cat /var/log/puppet.log
err: Failed to apply catalog: Cannot alias File[git_clone_vagrant_directory] to ["/mnt/vagrant"] at /etc/puppet/modules/git/manifests/clone.pp:98; resource ["File", "/mnt/vagrant"] already defined at /etc/puppet/modules/labs_vagrant/manifests/init.pp:26

-- spage (talk) 08:03, 23 November 2013 (UTC)Reply

I still have to make home directory 755

As before, sudo labs-vagrant provision fails with

notice: /Stage[main]/Mediawiki/Git::Clone[mediawiki/core]/Exec[git clone mediawiki/core]/returns: fatal: Could not change back to '/home/spage': Permission denied
err: /Stage[main]/Mediawiki/Git::Clone[mediawiki/core]/Exec[git clone mediawiki/core]/returns: change from notrun to 0 failed: git clone --recursive --branch master https://gerrit.wikimedia.org/r/mediawiki/core.git /vagrant/mediawiki returned 128 instead of one of [0] at /vagrant/puppet/modules/git/manifests/clone.pp:48

so as before I did chmod 755 $HOME and re-ran sudo labs-vagrant provision

Other workarounds seemed unnecessary.

However, on that second provision run I got

 err: /Stage[main]/Mediawiki/Git::Clone[mediawiki/core]/Exec[git clone mediawiki/core]: Could not evaluate: Puppet::Util::Log requires a message

and visiting the wiki failed with

LocalSettings.php not found.
Please set up the wiki first.

I ran a third sudo labs-vagrant provision , and that one worked!

-- spage (talk) 08:10, 22 May 2014 (UTC)Reply

Do we have an open bug for the $HOME permissions issue? I'm pretty sure I've seen that happen before too, but I don't remember it being a fatal problem. I think it has something to do with the configuration of the Puppet exec command inside git::clone. --BryanDavis (talk) 15:11, 22 May 2014 (UTC)Reply
When permission denied on /home happened to me and other colleagues on my projects, it was a NFS issue. Rebooting the instance solved it. --Nemo 06:09, 5 May 2015 (UTC)Reply

Run out of disk space

My /srv partition for vem2.maps-team.eqiad.wmflabs has exceeded 1.4GB allocated space. I noticed some large dirs, like vendor in one of the extensions (over 100MB). Any suggestions? Thanks! --yurik (talk) 04:18, 13 December 2015 (UTC)Reply

After talking to @bd808, seems that this is due to the obsolete version of labs-vagrant. --yurik (talk) 00:51, 14 December 2015 (UTC)Reply