部署时我得到:
--> Updating Composer dependencies
....
** [out :: myproj] Could not fetch https://api.github.com/repos/mmoreramerino/GearmanBundle/zipball/e0fa6c06bc5c7a5aaddaf33d5b0595ce280f7538, enter your GitHub credentials to access private repos
** [out :: myproj] The credentials will be swapped for an OAuth token stored in /website_dir/.composer/config.json, your password will not be stored
** [out :: myproj] To revoke access to this token you can visit https://github.com/settings/applications
** [out :: myproj] Username:
所有其他存储库均已成功下载。在这一步我无法输入我的用户名并且..我不想)
composer.json 中的依赖:
"Mmoreramerino/GearmanBundle": "dev-development",
编辑:问题不在作曲家。问题在于在部署后运行 composer update 的 capistrano。
我有一个生产服务器。我可以像这样访问它:
$ ssh -A my_server
并且可以手动克隆这个 repo。因为这样我在生产服务器中使用了我的密钥。
现在我在 capistrano 的 deploy.rb 中:
ssh_options[:keys] = %w(~/.ssh/id_rsa.pub)
ssh_options[:forward_agent] = true
所以部署应该在这个key中使用我的key。
但是在 capistrano 的步骤中,我在作曲家的更新中遇到了错误。
编辑 2:
$ ps aux | grep "ssh-agent"
dmitry 1772 0.0 0.0 73444 452 ? Ss 09:25 0:00 /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c "startxfce4"
dmitry 18541 0.0 0.0 109184 884 pts/0 S+ 17:25 0:00 grep --color=auto ssh-agent