Problem/Motivation
Drupal 8.1.x has removed the /vendor directory from the core repo: #1475510: Remove external dependencies from the core repo and let Composer manage the dependencies instead
This means that our normal testing procedure fails because we can't run tests. They fail because they're unable to find vendor/autoload.php.
This means we have to somehow trigger composer to install the dependencies during test runs.
This can be accomplished by setting DCI_ComposerInstall=true #2315537-56: Install composer dependencies before running tests
However, this triggers an composerinstall preprocess step which can't find the composer binary under vagrant.
Proposed resolution
In IRC Mixologic and Mile23 came up with changing DrupalCI\Plugin\BuildSteps\setup\Composer:: buildComposerCommand() to return "./bin/composer $data $workingdir"
This forces the use of whatever Composer binary was added to the testrunner project during its installation, for either the vagrant box or the production server.
Comments
Comment #2
mile23Added branch 2687303-dci-composerinstall-fails-under-vagrant
Needs a follow-up to test the behavior of DCI_ComposerInstall=true and DCI_ComposerInstall=false
Comment #3
mile23Comment #4
jthorson commentedDuplicated, and validated ... or rather, Validated, then duplicated. Rather academic exercise, since the patch has already been committed.
Updating issue status accordingly; but will leave open as it doesn't appear that the required followup issue exists yet.
Comment #8
MixologicComment #9
MixologicComment #10
mile23Made the follow-up issue: #2690439: Test the behavior of Composer Buildstep