Tak, możesz to ustawić na poziomie zasobów / hosta.
Biorąc pod uwagę już zaakceptowaną odpowiedź, myślę, że jest to lepsza odpowiedź na pytanie, jak sobie z tym poradzić na poziomie zapasów. Uważam, że jest to bezpieczniejsze dzięki odizolowaniu tego niezabezpieczonego ustawienia od hostów wymaganych do tego (np. Systemów testowych, lokalnych maszyn programistycznych).
To, co możesz zrobić na poziomie zapasów, to dodać
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
lub
ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
do definicji swojego hosta (patrz Ansible Behavioral Inventory Parameters ).
To zadziała, pod warunkiem, że użyjesz ssh
typu połączenia, a nie paramiko
lub czegoś innego).
Na przykład definicja hosta Vagrant wyglądałaby następująco…
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_common_args='-o StrictHostKeyChecking=no'
lub
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
Uruchomienie Ansible zakończy się wtedy sukcesem bez zmiany żadnej zmiennej środowiskowej.
$ ansible vagrant -i <path/to/hosts/file> -m ping
vagrant | SUCCESS => {
"changed": false,
"ping": "pong"
}
Jeśli chcesz to zrobić dla grupy gospodarzy, oto sugestia, aby uczynić ją dodatkową grupą jako zmienną dla istniejącej grupy, na przykład:
[mytestsystems]
test[01:99].example.tld
[insecuressh:children]
mytestsystems
[insecuressh:vars]
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
ANSIBLE_HOST_KEY_CHECKING
działa, ale-e 'host_key_checking=False'
nie działa.