我是作曲家的新手,我试图弄清楚如何将我的代码从我的本地机器部署到我的沙箱机器,但似乎整个过程都以composer install
到目前为止我做了什么:
git
存储库并将其推送到GitHub
VirtualBox
Ubuntu Server
SSH
,因此我可以从本地计算机连接到Ubuntu Server
,没有密码(我正在使用ssh密钥)composer args
git
SSH
密钥,因此我可以在不使用密码的情况下与GitHub进行交互Ubuntu Server
hosts
文件进行了更改,以便能够使用域访问我的网站。以上所有步骤均正常运行。我已经尝试了部署过程手册,它可以正常工作。
我遇到的唯一问题是作曲家,它会返回以下错误:
[Composer\Downloader\TransportException]
Your configuration does not allow connections to http://wpackagist.org/packages.json. See https://getcomposer.org/doc/06-config.md#secure-http for details.
但是修改我的composer.json
并替换以下行:
"url" : "http://wpackagist.org"
用这个:
"url" : "https://wpackagist.org"
作曲家也正常运行,所有依赖项都按原样安装。
现在我的staging.rb
我有以下任务:
namespace :deploy do
desc 'Copy repository files on my root'
task :files_to_root do
on roles( :app ) do
info 'Starting copying the files'
execute "cp -a #{fetch( :deploy_to ) }/current/. #{fetch( :deploy_to ) }"
end
end
desc 'Run composer installation'
task :run_composer do
on roles( :app ) do
info 'Starting run composer'
execute 'sed -i -e \'s/http\:\/\/wpackagist/https\:\/\/wpackagist/\' composer.json'
execute 'composer install'
end
end
after :finishing, :files_to_root
after :finishing, :run_composer
端
但是当我运行cap staging deploy
并且脚本到达:run_composer
任务时,控制台会记录以下行:
INFO [89538861] Running composer install as merianos@192.168.1.5
DEBUG [89538861] Command: composer install
DEBUG [89538861] Loading composer repositories with package information
DEBUG [89538861] Updating dependencies (including require-dev)
DEBUG [89538861] Nothing to install or update
DEBUG [89538861] Writing lock file
DEBUG [89538861] Generating autoload files
INFO [89538861] Finished in 5.563 seconds with exit status 0 (successful).
如果我在部署后尝试在我的服务器上运行composer install
,它将安装所有依赖项。
有没有人知道当我从Capistrano执行时,作曲家没有运行的原因是什么?
我做错了吗?