我正在尝试在远程主机上运行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