使用Capifony和Syfmony2安装供应商和资产

时间:2013-06-25 14:25:41

标签: symfony deployment assetic capifony

我正在尝试将我的Symfony2项目部署到带有capifony的服务器但是我收到了这个错误:

      * 2013-06-25 16:22:19 executing `symfony:assets:install'
--> Installing bundle's assets
  * executing "sh -c 'cd /home/user1/releases/20130625142202 && php app/console assets:install web --env=prod --no-debug'"
    servers: ["1xx"]
    [1xx] executing command
 ** [out :: 1xx] 
 ** [out :: 1xx] Warning: require(/home/user1/releases/20130625142202/app/../vendor/autoload.php): failed to open stream: No such file or directory in /home/user1/releases/20130625142202/app/autoload.php on line 14
 ** [out :: 1xx] 
 ** [out :: 1xx] Fatal error: require(): Failed opening required '/home/user1/releases/20130625142202/app/../vendor/autoload.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/user1/releases/20130625142202/app/autoload.php on line 14
    command finished in 369ms
*** [deploy:update_code] rolling back

这是我的输出:

  • 2013-06-25 16:51:49执行symfony:composer:get' <ul> <li>executing "if [ -e /home/user/releases/20130625145137/composer.phar ]; then echo 'true'; fi" servers: ["xx.xxx.xx.xx"] [xx.xxx.xx.xx] executing command command finished in 488ms --> Updating Composer</li> <li>executing "sh -c 'cd /home/user/releases/20130625145137 && php composer.phar self-update'" servers: ["xx.xxx.xx.xx"] [xx.xxx.xx.xx] executing command command finished in 377ms --> Updating Composer dependencies</li> <li>executing "sh -c 'cd /home/user/releases/20130625145137 && php composer.phar update --no-scripts --no-dev --verbose --prefer-dist --optimize-autoloader --no-progress'" servers: ["xx.xxx.xx.xx"] [xx.xxx.xx.xx] executing command command finished in 390ms</li> <li>2013-06-25 16:51:50 executing symfony:bootstrap:build' - &GT;构建引导程序文件
  • 执行“if [-e / home / user / releases / 20130625145137 / bin / build_bootstrap];然后回显'true'; fi” 服务器:[“xx.xxx.xx.xx”] [xx.xxx.xx.xx]执行命令 命令在336ms完成
  • 执行“sh -c'cd / home / user / releases / 20130625145137&amp;&amp; test -f vendor / sensio / distribution-bundle / Sensio / Bundle / DistributionBundle / Resources / bin / build_bootstrap.php&amp;&amp; php vendor / sensio / distribution-bundle / Sensio / Bundle / DistributionBundle / Resources / bin / build_bootstrap.php app || echo'proforts / sensio / distribution-bundle / Sensio / Bundle / DistributionBundle / Resources / bin / build_bootstrap.php not found ,跳过''“ 服务器:[“xx.xxx.xx.xx”] [xx.xxx.xx.xx]执行命令 ** [out :: xx.xxx.xx.xx] vendor / sensio / distribution-bundle / Sensio / Bundle / DistributionBundle / Resources / bin / build_bootstrap.php 命令在392ms完成
  • 2013-06-25 16:51:51执行symfony:composer:dump_autoload' --> Dumping an optimized autoloader</li> <li>executing "sh -c 'cd /home/user/releases/20130625145137 && php composer.phar dump-autoload --optimize'" servers: ["xx.xxx.xx.xx"] [xx.xxx.xx.xx] executing command command finished in 417ms</li> <li>2013-06-25 16:51:52 executing symfony:assets:install' - &GT;安装捆绑资产
  • 执行“sh -c'cd / home / user / releases / 20130625145137&amp;&amp; php app / console assets:install web --env = prod --no-debug'” 服务器:[“xx.xxx.xx.xx”] [xx.xxx.xx.xx]执行命令 ** [out :: xx.xxx.xx.xx] ** [out :: xx.xxx.xx.xx]警告:require(/ home / user / releases / 20130625145137 / app /../ vendor / autoload.php):无法打开流:没有这样的文件或目录第14行/home/user/releases/20130625145137/app/autoload.php ** [out :: xx.xxx.xx.xx] ** [out :: xx.xxx.xx.xx]致命错误:require():无法打开所需的'/home/user/releases/20130625145137/app/../vendor/autoload.php'(include_path ='。 :/ usr / lib / php:/ usr / local / lib / php')在/home/user/releases/20130625145137/app/autoload.php第14行 命令在417ms完成 * [deploy:update_code]回滚
  • 执行“rm -rf / home / user / releases / 20130625145137; true” 服务器:[“xx.xxx.xx.xx”] [xx.xxx.xx.xx]执行命令

1 个答案:

答案 0 :(得分:1)

将此添加到 deploy.rb

set :composer_options, "--no-dev --verbose --prefer-dist --optimize-autoloader --no-progress"

确保在部署过程中执行composer updatecomposer install

否则 vendor / autoload.php 将不会被创建,因此无法使用。