使用 Capistrano 的 Symfony 部署抛出 "The target directory "web“不存在。”在资产安装
Symfony deploy with capistrano throw "The target directory "web" does not exist." on assets install
我有一个 symfony 系统,我正试图用 capistrano 部署它。通过 ssh 连接。
抛出错误的函数是 symfony:assets:install,如下所示:
php /var/www/xx/releases/20200415083534/app/console assets:install web --symlink
它抛出以下错误
[InvalidArgumentException]
The target directory "web" does not exist.
正如您所期望的那样,该文件夹就在那里 - 我的用户是所有者并且有权使用它。
如果我转到这个确切的文件夹 /20200415083534 和 运行 与上面相同的脚本,它会按预期安装资产。
composer extra 看起来像这样:
"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.*"
}
}
有什么想法吗?
P.S。我检查过这个
因为它有同样的错误,但情况不同,他的解决方案不适用于我的情况。
这听起来可能有点愚蠢,但我通过在 deploy.rb 文件的控制台应用程序路径中添加 space 确实解决了这个问题。 (我认为问题出在其他地方,但在我的案例中解决了这个问题)
看起来像:
set :symfony_console_path, " app/console"
现在。
这已将命令行更改为:
php /var/www/xx/releases/20200415083534/ app/console assets:install web --symlink
哪个确实按预期执行。
希望这能帮助解决这个问题的人(就像我这几天所做的那样)。
我有一个 symfony 系统,我正试图用 capistrano 部署它。通过 ssh 连接。
抛出错误的函数是 symfony:assets:install,如下所示:
php /var/www/xx/releases/20200415083534/app/console assets:install web --symlink
它抛出以下错误
[InvalidArgumentException]
The target directory "web" does not exist.
正如您所期望的那样,该文件夹就在那里 - 我的用户是所有者并且有权使用它。 如果我转到这个确切的文件夹 /20200415083534 和 运行 与上面相同的脚本,它会按预期安装资产。
composer extra 看起来像这样:
"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.*"
}
}
有什么想法吗?
P.S。我检查过这个
这听起来可能有点愚蠢,但我通过在 deploy.rb 文件的控制台应用程序路径中添加 space 确实解决了这个问题。 (我认为问题出在其他地方,但在我的案例中解决了这个问题) 看起来像:
set :symfony_console_path, " app/console"
现在。
这已将命令行更改为:
php /var/www/xx/releases/20200415083534/ app/console assets:install web --symlink
哪个确实按预期执行。
希望这能帮助解决这个问题的人(就像我这几天所做的那样)。