I’m having the bellow problem trying to run ansible-pull mode cronjob. When I bring up a new instance and install the cronjob, ansible-pull mode will fail because Host key verification failure :
“”"
Running: ‘ansible all -i “localhost,” -c local --limit “localhost:ip-10-120-170-189.eu-west-1.compute.internal:127.0.0.1” -m git -a “name=git@github.com:some-repo/project.git dest=/root/myprojec version=myBranch”’
localhost | FAILED >> {
“cmd”: “/usr/bin/git ls-remote git@github.com:some-repo/project.git -h refs/heads/myBranch”,
“failed”: true,
“msg”: “Host key verification failed.\r\nfatal: The remote end hung up unexpectedly”,
“rc”: 128,
“stderr”: “Host key verification failed.\r\nfatal: The remote end hung up unexpectedly\n”,
“stdout”: “”
}
“”"
If I run the ansible–pull command manually the first time it asks me the bellow :
“”"
The authenticity of host ‘github.com (192.30.252.131)’ can’t be established.
RSA key fingerprint is 15:27:ac:a5:76:18:2d:36:63:1b:54:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
“”"
Once I accept “yes” it won’t ask me again and ansible-pull cronjob will work automatically with no issues.
How can I avoid the manual authentication so the cronjob will work the first time automatically ??
I already have host_key_checking = False in the ansible.cfg file that is checked out from github.com:some-repo/project.git in the example but I think ansible-pull is still using the default values…
Ah, I completely misread your first email. You aren't having a problem with connecting to the inventory host (localhost), it's the github key that is falling over when ansible-pull tries to check out your repo.
Are you calling ansible-pull from a cronjob? The simplest fix is to run ssh-keyscan before you pull the repo ...