我有问题要通过非常新鲜的capifony部署在Capistrano v2.8.0上--这是我第一次部署capistrano/capifony。
我已经成功地完成了cap :setup,现在我需要执行cap :cold。SSH通信运行良好,但由于ssh权限,它无法执行git克隆命令:
* executing "git clone -q git@github.com:palmic/www.myproject.com.git /home/palmic/web/hostik.cz/palmic/releases/20110823122821 && cd /home/palmic/web/hostik.cz/palmic/releases/20110823122821 && git checkout -q -b deploy 7407672c0a59ad631ea2f1f1d71fb15c2f68ac30 && (echo 7407672c0a59ad631ea2f1f1d71fb15c2f68ac30 > /home/palmic/web/hostik.cz/palmic/releases/20110823122821/REVISION)"
servers: ["hostik.cz"]
[hostik.cz] executing command
** [hostik.cz :: err] Permission denied (publickey).
** fatal: The remote end hung up unexpectedly
command finished in 3123ms
*** [deploy:update_code] rolling back
* executing "rm -rf /home/palmic/web/hostik.cz/palmic/releases/20110823122821; true"
servers: ["hostik.cz"]
[hostik.cz] executing command
command finished in 164ms当我登录到ssh会话并调用它时,它请求ssh密码。当我填充与deploy.rb中的deploy.rb一样的密码时,克隆就成功了。所以看起来卡皮斯特拉诺无法在我的设置中填满密码。
顺便说一下。ssh_options:forward_agent = true/false 完全没有人知道为什么??(在我的~/..ssh/config中允许代理转发):
Host *hostik.cz
ForwardAgent yes
Host *
ForwardAgent no我的deploy.rb:
set :application, "app"
set :domain, "hostname"
set :deploy_to, "remotepath"
set :use_sudo, false
set :repository, "git@github.com:palmic/myproject.git"
set :scm, :git
set :user, "my remote username"
set :scm_passphrase, "my ssh passphrase on remote host"
set :branch, "git project deploy branchname"
set :scm_verbose, true
role :web, domain # Your HTTP server, Apache/etc
role :app, domain # This may be the same as your `Web` server
role :db, domain, :primary => true # This is where Rails migrations will run
set :keep_releases, 3
ssh_options[:forward_agent] = true我知道这不是任何原始的虫子,我遗漏了什么,有人知道吗?
发布于 2011-08-23 19:44:31
您可以在deploy.rb中添加以下内容:
default_run_options[:pty] = truehttps://stackoverflow.com/questions/7159272
复制相似问题