capistrano - Chef 运行 git clone 导致主机 key 验证错误

标签 capistrano chef-infra ssh-keys

我正在使用由 Capistrano 调用的 Chef。

有一个指令可以使用 git 克隆存储库。

git node['rails']['rails_root'] do
  repository "git@myrepo.com:/myproj.git"
  reference "master"
  action :sync
  user node['rails']['rails_user']
  group node['rails']['rails_group']
end

当它到达这一点时,我得到:
 ** [out :: 10.1.1.1] STDERR: Host key verification failed.

所以,我需要添加一个“known_hosts”条目。没问题。但是对于哪个用户?我的问题的核心是我不知道哪个用户正在执行什么命令,以及他们是否正在调用 sudo 等。

我已经运行 keyscan 来填充 root 的 known_hosts 和我作为 ssh 登录的用户,但无济于事。

注意,这个 git repo 是读保护的,需要 ssh key 访问。

最佳答案

另一种解决方法https://github.com/opscode-cookbooks/ssh_known_hosts

这对我有用

关于capistrano - Chef 运行 git clone 导致主机 key 验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16306772/

相关文章:

centos - 在 CentOS 6.5 上使用 Chef 安装 RVM

ssh - 多个 GitHub 帐户和 SSH 配置

git: includeIf 不使用 git clone

ruby-on-rails - 将 JRuby on Rails 自动部署到 Windows 上的 Tomcat?

linux - 使用 Capistrano 跨集群设置环境变量

ruby-on-rails - 如何使用capistrano bundle 安装期间指定Gemfile.lock的路径

ruby - 如何使用 ruby​​ 1.8.7 安装 capistrano v2.13.5?

ruby - 从 Chef LWRP 更新节点标签

ruby - Chef shell脚本交互

ssh - 为什么我的 SSH key 无法连接到 github?