diff --git a/ansible/roles/ssh-known-host/tasks/main.yml b/ansible/roles/ssh-known-host/tasks/main.yml index babfcd467..3a2724b4f 100644 --- a/ansible/roles/ssh-known-host/tasks/main.yml +++ b/ansible/roles/ssh-known-host/tasks/main.yml @@ -1,4 +1,18 @@ --- +# If no IP address has been configured for the host on the admin network, this +# is typically the first task to fail. Provide a friendly message with +# information on how to resolve the issue. +- name: Validate SSH address + fail: + msg: >- + Host {{ inventory_hostname }} has no address configured on the admin + network. IP addresses may be manually configured in + 'network-allocations.yml', or are automatically allocated during the + following commands: 'kayobe seed hypervisor host configure', 'kayobe + seed host configure', 'kayobe overcloud host configure', 'kayobe seed + vm provision' and 'kayobe overcloud inventory discover'. + when: not ansible_host | default(inventory_hostname) + - name: Scan for SSH keys local_action: module: command ssh-keyscan {{ item }} diff --git a/releasenotes/notes/improve-ssh-known-host-error-15fbc6ae4fa3dbd6.yaml b/releasenotes/notes/improve-ssh-known-host-error-15fbc6ae4fa3dbd6.yaml new file mode 100644 index 000000000..58a6e9c08 --- /dev/null +++ b/releasenotes/notes/improve-ssh-known-host-error-15fbc6ae4fa3dbd6.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Improves error message seen when discovering SSH known hosts for a host + without an IP address defined in + ``${KAYOBE_CONFIG_PATH}/network-allocation.yml``.