Use BatchMode to check whether host is accessible via SSH

If password authentication is not disabled on the server, we may be
prompted for a password if the Kayobe Ansible user doesn't exist or
isn't configured for passwordless authentication.

By using BatchMode, the ssh command can fail quickly and proceed to
create the Kayobe Ansible user using the bootstrap user.

Change-Id: If22ed34dc4b6e87f8cf76c302948c955bddf2bc5
This commit is contained in:
Pierre Riteau 2019-06-11 16:01:03 +01:00
parent 686cf8d541
commit 0e6703a322
2 changed files with 7 additions and 1 deletions

View File

@ -14,7 +14,7 @@
tasks:
- name: Check whether the host is accessible via SSH
local_action:
module: command ssh -p {{ ssh_port }} {{ ssh_user }}@{{ ssh_host }} hostname
module: command ssh -o BatchMode=yes -p {{ ssh_port }} {{ ssh_user }}@{{ ssh_host }} hostname
failed_when: false
changed_when: false
register: ssh_result

View File

@ -0,0 +1,6 @@
---
fixes:
- |
Uses BatchMode to check whether a host is accessible via SSH. This prevents
Kayobe from hanging on a password prompt when password authentication is
enabled on the host and the Kayobe Ansible user is not yet configured.