在我的ansible.cfg
我有
[defaults]
host_key_checking = False
然而我的 ansible git 游戏在git clone --bare
.
"msg": "主机密钥验证失败。\r\n致命: 无法从远程存储库读取。\n\n请确保您拥有正确的访问权限\n并且存储库存在。"
答案1
这需要特殊选项git 模块命名accept_hostkey
。
- ansible.cfg 中的选项控制控制器节点是否需要有效的主机密钥进行连接。
在您正在配置的计算机上,您也必须告诉它它不需要有效的主机密钥。你可以通过以下方式做到这一点
~/.ssh/config
在远程主机上设置StrictHostKeyChecking no
- 或者通过在使用 ssh 的模块中设置一个选项,告诉它禁用主机密钥检查
答案2
另一种选择是使用 GIT_SSH_COMMAND
---
- name: Clone a Git repository with host key checking disabled
hosts: your_target_host
environment:
GIT_SSH_COMMAND: 'ssh -o StrictHostKeyChecking=no'
tasks:
- name: Ensure the target directory exists
file:
path: /path/to/your/target_directory
state: directory
- name: Clone the Git repository with host key checking disabled
git:
repo: https://github.com/example/repo.git
dest: /path/to/your/target_directory