ruby-on-rails – 通过ansible playbook安装私有宝石时捆绑安装挂起

我正在尝试在远程主机上运行bundle install,该主机使用来自私有仓库的gem.任务挂起,因为它停止接受主机密钥,因为我无法在本地运行ansible playbook时手动接受远程主机上的密钥.

Playbook task

  - name: bundle install
    command: bundle install chdir={{ deploy_directory }}

如何通过远程主机上的密钥文件测试或添加github连接.

我还试图通过ssh与github建立测试连接,在bundle安装之前显式接受密钥.

  - name: test connection to git
    command: ssh -vvv git@github.co key_file=/home/ubuntu/.ssh/id_rsa accept_hostkey=yes

现在这个命令也挂起了.

最佳答案 您可以在ansible游戏环境中放置导出ANSIBLE_HOST_KEY_CHECKING = False.将其添加到您的播放中以避免主机密钥检查.

environment:
    ANSIBLE_HOST_KEY_CHECKING:  False

可以尝试的另一种方法是将基础严格密钥检查参数传递给ssh连接.参数是 – StrictHostKeyChecking = no和UserKnownHostsFile = / dev / null.您可以查看ansible inventory ssh connection 并使用ansible_ssh_common_args或ansible_ssh_extra_args

点赞