Symfony развернуть с помощью capistrano throw "Целевой каталог" web "не существует". на активы установить - PullRequest
0 голосов
/ 15 апреля 2020

У меня есть система symfony, которую я пытаюсь развернуть с помощью capistrano. Соединение через s sh.

Функция, которая выдает ошибку: symfony: assets: установить, как показано ниже:

php /var/www/xx/releases/20200415083534/app/console assets:install web --symlink

Выдает следующую ошибку

[InvalidArgumentException]                  
  The target directory "web" does not exist. 

Как и следовало ожидать, папка прямо здесь - мой пользователь является владельцем и имеет права на нее. Если я go в эту папку / 20200415083534 и запускаю тот же сценарий, что и выше, он устанавливает ресурсы, как и ожидалось.

Дополнительный composer выглядит так:

"extra": {
    "symfony-app-dir": "app",
    "symfony-web-dir": "web",
    "symfony-assets-install": "relative",
    "incenteev-parameters": [
      {
        "file": "app/config/parameters.yml"
      },
      {
        "file": "app/config/parameters_prod.yml",
        "dist-file": "app/config/parameters_prod.yml.dist"
      }
    ],
    "branch-alias": {
      "dev-master": "2.8.*"
    }
  }

Любые идеи?

PS Я проверил эту команду "assets: install" с ошибкой "Целевой каталог" web "не существует", почему? , поскольку он имеет ту же ошибку , но ситуация иная, и его решение не работает для моего случая.

1 Ответ

0 голосов
/ 21 апреля 2020

Может показаться немного глупым, но я решил проблему, добавив пробел в путь к консольному приложению в файле deploy.rb. (Я думаю, что проблема в другом месте, но этот обходной путь сделал это в моем случае). Это выглядит так:

set :symfony_console_path, " app/console"

сейчас.

Это изменило командную строку на:

php /var/www/xx/releases/20200415083534/ app/console assets:install web --symlink

Что на самом деле работает так, как и ожидалось.

Надеюсь, это поможет кому-то ударить по этому вопросу (так же, как я делал это в течение нескольких дней).

...