Skip to content

Instantly share code, notes, and snippets.

@EvanK
Created April 4, 2015 22:42
Show Gist options
  • Save EvanK/2c3f9ca429d995ea0989 to your computer and use it in GitHub Desktop.
Save EvanK/2c3f9ca429d995ea0989 to your computer and use it in GitHub Desktop.
Building a phpunit phar on a vagrant box
# build phpunit phar
vagrant@localhost:/vagrant$ phar-composer install phpunit/phpunit
[1/2] Installing phpunit/phpunit to temporary directory /tmp/phar-composer09 (using /usr/bin/php composer.phar create-project 'phpunit/phpunit' '/tmp/phar-composer09' --no-dev --no-progress --no-scripts)
Installing phpunit/phpunit (4.6.1)
- Installing phpunit/phpunit (4.6.1)
Loading from cache
Created project in /tmp/phar-composer09
Loading composer repositories with package information
Installing dependencies
- Installing sebastian/global-state (1.0.0)
Loading from cache
- Installing sebastian/recursion-context (1.0.0)
Loading from cache
- Installing sebastian/version (1.0.5)
Loading from cache
- Installing sebastian/environment (1.2.2)
Loading from cache
- Installing phpunit/php-text-template (1.2.0)
Loading from cache
- Installing phpunit/php-token-stream (1.4.0)
Loading from cache
- Installing phpunit/php-file-iterator (1.4.0)
Loading from cache
- Installing phpunit/php-code-coverage (2.0.15)
Loading from cache
- Installing phpunit/php-timer (1.0.5)
Loading from cache
- Installing doctrine/instantiator (1.0.4)
Loading from cache
- Installing phpunit/phpunit-mock-objects (2.3.1)
Loading from cache
- Installing sebastian/exporter (1.2.0)
Loading from cache
- Installing sebastian/diff (1.3.0)
Loading from cache
- Installing sebastian/comparator (1.1.1)
Loading from cache
- Installing phpdocumentor/reflection-docblock (2.0.4)
Loading from cache
- Installing phpspec/prophecy (1.4.0)
Loading from cache
- Installing symfony/yaml (v2.6.6)
Loading from cache
Writing lock file
Generating autoload files
OK - Downloading package completed (after 31.3s)
[2/2] Creating phar phpunit.phar
- Adding main package
Adding whole project directory "/tmp/phar-composer09/"
- Adding composer base files
- Adding dependency "sebastian/global-state" from "vendor/sebastian/global-state/"
Adding whole project directory "/tmp/phar-composer09/vendor/sebastian/global-state/"
- Adding dependency "sebastian/recursion-context" from "vendor/sebastian/recursion-context/"
Adding whole project directory "/tmp/phar-composer09/vendor/sebastian/recursion-context/"
- Adding dependency "sebastian/version" from "vendor/sebastian/version/"
Adding whole project directory "/tmp/phar-composer09/vendor/sebastian/version/"
- Adding dependency "sebastian/environment" from "vendor/sebastian/environment/"
Adding whole project directory "/tmp/phar-composer09/vendor/sebastian/environment/"
- Adding dependency "phpunit/php-text-template" from "vendor/phpunit/php-text-template/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpunit/php-text-template/"
- Adding dependency "phpunit/php-token-stream" from "vendor/phpunit/php-token-stream/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpunit/php-token-stream/"
- Adding dependency "phpunit/php-file-iterator" from "vendor/phpunit/php-file-iterator/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpunit/php-file-iterator/"
- Adding dependency "phpunit/php-code-coverage" from "vendor/phpunit/php-code-coverage/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpunit/php-code-coverage/"
- Adding dependency "phpunit/php-timer" from "vendor/phpunit/php-timer/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpunit/php-timer/"
- Adding dependency "doctrine/instantiator" from "vendor/doctrine/instantiator/"
Adding whole project directory "/tmp/phar-composer09/vendor/doctrine/instantiator/"
- Adding dependency "phpunit/phpunit-mock-objects" from "vendor/phpunit/phpunit-mock-objects/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpunit/phpunit-mock-objects/"
- Adding dependency "sebastian/exporter" from "vendor/sebastian/exporter/"
Adding whole project directory "/tmp/phar-composer09/vendor/sebastian/exporter/"
- Adding dependency "sebastian/diff" from "vendor/sebastian/diff/"
Adding whole project directory "/tmp/phar-composer09/vendor/sebastian/diff/"
- Adding dependency "sebastian/comparator" from "vendor/sebastian/comparator/"
Adding whole project directory "/tmp/phar-composer09/vendor/sebastian/comparator/"
- Adding dependency "phpdocumentor/reflection-docblock" from "vendor/phpdocumentor/reflection-docblock/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpdocumentor/reflection-docblock/"
- Adding dependency "phpspec/prophecy" from "vendor/phpspec/prophecy/"
Adding whole project directory "/tmp/phar-composer09/vendor/phpspec/prophecy/"
- Adding dependency "symfony/yaml" from "vendor/symfony/yaml/Symfony/Component/Yaml/"
Adding whole project directory "/tmp/phar-composer09/vendor/symfony/yaml/Symfony/Component/Yaml/"
- Setting main/stub
Using referenced shebang "#!/usr/bin/env php"
Using referenced chmod 0664
Applying chmod 0664
OK - Creating phpunit.phar (3972.1 KiB) completed after 41.9s
Move resulting phar to /usr/local/bin/phpunit
OK - Moved to /usr/local/bin/phpunit
# invoke built phpunit...where it falls apart
vagrant@localhost:/vagrant$ /usr/local/bin/phpunit --configuration=app/phpunit.xml
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Framework/TestSuite.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Framework/TestSuite.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Framework/Test.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Framework/Test.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Framework/SelfDescribing.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Framework/SelfDescribing.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/php-file-iterator/File/Iterator/Facade.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/php-file-iterator/File/Iterator/Facade.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/php-file-iterator/File/Iterator/Factory.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/php-file-iterator/File/Iterator/Factory.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/php-file-iterator/File/Iterator.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/php-file-iterator/File/Iterator.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Framework/TestCase.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Framework/TestCase.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Framework/Assert.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Framework/Assert.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Runner/BaseTestRunner.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Runner/BaseTestRunner.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Util/Test.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Util/Test.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(/vagrant/vendor/phpunit/phpunit/src/Framework/TestSuite/DataProvider.php): failed to open stream: No such file or directory in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: include(): Failed opening '/vagrant/vendor/phpunit/phpunit/src/Framework/TestSuite/DataProvider.php' for inclusion (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in phar:///usr/local/bin/phpunit/vendor/composer/ClassLoader.php on line 412
Warning: Uncaught exception 'ErrorException' with message 'Warning: require(/vagrant/vendor/phpunit/phpunit/src/TextUI/TestRunner.php): failed to open stream: No such file or directory in /vagrant/vendor/symfony/symfony/src/Symfony/Component/ClassLoader/DebugClassLoader.php line 94' in /vagrant/vendor/symfony/symfony/src/Symfony/Component/ClassLoader/DebugClassLoader.php:94
Stack trace:
#0 /vagrant/vendor/symfony/symfony/src/Symfony/Component/ClassLoader/DebugClassLoader.php(94): Symfony\Component\HttpKernel\Debug\ErrorHandler->handle(2, 'require(/vagran...', '/vagrant/vendor...', 94, Array)
#1 /vagrant/vendor/symfony/symfony/src/Symfony/Component/ClassLoader/DebugClassLoader.php(94): Symfony\Component\ClassLoader\DebugClassLoader->loadClass()
#2 [internal function]: Symfony\Component\ClassLoader\DebugClassLoader->loadClass('PHPUnit_TextUI_...')
#3 phar:///usr/local/bin/phpunit/src/TextUI/Command.php(181): spl_autoload_call('PHPUnit_TextUI_...')
#4 phar:///usr/local/bin/phpunit/src/TextUI/Command.php(117): PHPUnit_Tex in /vagrant/vendor/symfony/symfony/src/Symfony/Component/ClassLoader/DebugClassLoader.php on line 94
Fatal error: Symfony\Component\ClassLoader\DebugClassLoader::loadClass(): Failed opening required '/vagrant/vendor/phpunit/phpunit/src/TextUI/TestRunner.php' (include_path='/vagrant/vendor/phpunit/php-token-stream:/vagrant/vendor/phpunit/php-text-template:/vagrant/vendor/phpunit/php-file-iterator:/vagrant/vendor/phpunit/php-code-coverage:/vagrant/vendor/phpunit/php-timer:/vagrant/vendor/phpunit/phpunit-mock-objects:/vagrant/vendor/phpunit/phpunit:/vagrant/vendor/symfony/yaml:phar:///usr/local/bin/phpunit/vendor/phpunit/php-text-template:phar:///usr/local/bin/phpunit/vendor/phpunit/php-timer:.:/usr/share/php:/usr/share/pear') in /vagrant/vendor/symfony/symfony/src/Symfony/Component/ClassLoader/DebugClassLoader.php on line 94
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment