Page MenuHomePhabricator

VisualEditor fails to provision with rbenv error
Closed, ResolvedPublic

Description

The error is:

err: /Stage[main]/Role::Visualeditor/Mediawiki::Extension[VisualEditor]/Browsertests::Bundle[/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/Ruby::Bundle[/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/Exec[bundle-install-/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]: Could not evaluate: Could not find command '/usr/local/rbenv/shims/bundle'


Full list of roles:

accountinfo                geshi                      parsoid                 
analytics                * gettingstarted             pdfhandler              
antispam                   globalusage                poem                    
antispoof                * guidedtour                 popups                  
apisandbox                 gwtoolset                  proofreadpage           
apparmor                   hadoop                     scribunto               
babel                      hhvm                       simple_miser            
betafeatures               hive                       simple_performant       
browsertests               https                      sitematrix              
centralauth                jsduck                     templatedata            
centralnotice              labs_initial_content       textextracts            
chromium                   mantle                     thumb_on_404            
cirrussearch               massmessage                timedmediahandler       
cite                     * math                       translate               
cldr                       mathsearch                 uls                     
codeeditor                 mleb                       uploadwizard            
commonsmetadata          * mobilefrontend             urlshortener            
confirmedit                multimedia                 vectorbeta              
doublewiki                 multimediaviewer         * visualeditor            
echo                       mysql                      wikidiff2               
education                  navigationtiming         * wikieditor
  • eventlogging newusermessage wikihiero flow oauth wikilove fss pagedtiffhandler wikimania_scholarships fundraising pageimages * wikimediaevents gadgets pagetriage wikimetrics geodata * parserfunctions xhprof

Version: unspecified
Severity: normal

Details

Reference
bz66764

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 3:21 AM
bzimport set Reference to bz66764.

I'm unable to repro this from a fresh VM with the given roles enabled. Do you continue to get this error after provisioning a second time?

Given the sometimes tricky nature of Puppet resource dependencies, it would help greatly to have a more detailed log of the run. Can you please specify puppet_debug: true in your .settings.yaml file and provide the output or vagrant provision as an attachment? Thanks!

Created attachment 15683
Puppet error with VisualEditor provisioning failure

Yes, it's reproducible on repeated provisioning runs. I've attached the full log from a debug run.

Attached:

Matthew, Would you mind trying this again in case the fix to bug #66763 was related? Thanks!

Created attachment 15775
Log from fresh install of MediaWiki-Vagrant

I tried with a new box, with the latest Ruby change (use distro packages), against git 99633340308c46c2d7ebc488195b2d47be0f235c, and the following roles:

Available roles:

accountinfo              * gettingstarted             poem                    
analytics                  globalusage                popups                  
antispam                 * guidedtour                 proofreadpage           
antispoof                  gwtoolset                  scribunto               
apisandbox                 hadoop                     simple_miser            
apparmor                   hhvm                       simple_performant       
babel                      hive                       sitematrix              
betafeatures               https                      templatedata            
browsertests               jsduck                     textextracts            
centralauth                labs_initial_content       thumb_on_404            
centralnotice              mantle                     timedmediahandler       
chromium                   massmessage                translate               
cirrussearch             * math                       uls                     
cite                       mathsearch                 uploadwizard            
cldr                       mleb                       urlshortener            
codeeditor               * mobilefrontend             vectorbeta              
commonsmetadata            multimedia               * visualeditor            
confirmedit                multimediaviewer           wikidiff2               
doublewiki                 mysql                    * wikieditor
  • echo navigationtiming wikihiero education newusermessage wikilove
  • eventlogging oauth wikimania_scholarships
  • flow pagedtiffhandler * wikimediaevents fss pageimages wikimetrics fundraising pagetriage wikitech gadgets * parserfunctions xhprof geodata * parsoid geshi pdfhandler

Roles marked with '*' are enabled.

Use "vagrant enable-role" & "vagrant disable-role" to customize.

I got the attached log. You can see that VisualEditor failed, first with:

Sat Jun 28 06:17:50 +0000 2014 /Stage[main]/Role::Visualeditor/Mediawiki::Extension[VisualEditor]/Browsertests::Bundle[/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/Ruby::Bundle[/vagra\
nt/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/Exec[bundle-install-/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/returns (err): change from notrun to 0 failed: Workin\
g directory '/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser' does not exist

It is not the first failure (Math also failed due to bug 66807), but I'm not sure the Math failure is related.

Attached:

Can you verify the working commit of VE and its submodules? i.e. Please provide the output of git status, git show-ref HEAD, and git submodule under the mediawiki/extensions/VisualEditor subdirectory.

Sure.

matthew@matthew-t520: ~/Code/Wikimedia/vagrant-ruby-visualeditor/mediawiki/extensions/VisualEditor (master|✔)% git status

On branch master

nothing to commit (working directory clean)
matthew@matthew-t520: ~/Code/Wikimedia/vagrant-ruby-visualeditor/mediawiki/extensions/VisualEditor (master|✔)% git show-ref HEAD
4be59a00c12580e24e2de673c14e082bf714ee9c refs/remotes/origin/HEAD
matthew@matthew-t520: ~/Code/Wikimedia/vagrant-ruby-visualeditor/mediawiki/extensions/VisualEditor (master|✔)% git submodule
a014302f441dda5c4805d378f4ccb67bc1d5e566 lib/ve (a014302)

Note, this is from a fresh MediaWiki-Vagrant VM I created (same one as comment #4), not my regular MediaWiki-Vagrant VM.

Created attachment 15845
Fresh install on 2014-07-03

It eventually failed due to not getting all the Debian packages. I didn't try (yet) to re-provision and see if that fixed it

Dan, let's decide to how to proceed Tuesday. I will make sure I don't lose the apt-cache, so I won't have to re-download the vast majority that did succeed (or the trusty base box).

Attached:

VisualEditor is working now on that box (after a vagrant up --provision), except there are timeouts in the browser tests.

Next (when I have a chance), I'm going to try to destroy that box, and create a fresh one (but using the same Debian packages), to see if the problem manifests on a fresh build.

First try for me on a Trusty VM that had never had VE enabled before failed with:

Error: Working directory '/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser' does not exist
Error: /Stage[main]/Role::Visualeditor/Mediawiki::Extension[VisualEditor]/Browsertests::Bundle[/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/Ruby::Bundle[/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/Exec[bundle-install-/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser]/returns: change from notrun to 0 failed: Working directory '/vagrant/mediawiki/extensions/VisualEditor/modules/ve-mw/test/browser' does not exist

The problem for me was that browsertests::bundle doesn't require the git::clone.

Change 145127 had a related patch set uploaded by BryanDavis:
Require git::clone before browsertests::bundle

https://gerrit.wikimedia.org/r/145127

Change 145127 merged by jenkins-bot:
Require git::clone before browsertests::bundle

https://gerrit.wikimedia.org/r/145127

That solution makes perfect sense, and matches the symptoms, so I'm marking this fixed and not doing the retesting I mentioned in comment #8.