e8769373b6
Change-Id: I70d5f78871867f3a71150eacc3df1857949e6df9
36 lines
1.3 KiB
YAML
36 lines
1.3 KiB
YAML
---
|
|
# 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-allocation.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 }}
|
|
with_items:
|
|
- "{{ ansible_host|default(inventory_hostname) }}"
|
|
register: keyscan_result
|
|
changed_when: False
|
|
|
|
# NOTE(priteau): Run this task serially as known_hosts is not safe to execute
|
|
# concurrently, and some keys can end up being dropped. For more details see
|
|
# https://github.com/ansible/proposals/issues/113
|
|
- name: Ensure SSH keys are in known hosts
|
|
local_action:
|
|
module: known_hosts
|
|
host: "{{ item[0].item }}"
|
|
key: "{{ item[1] }}"
|
|
with_subelements:
|
|
- "{{ keyscan_result.results }}"
|
|
- stdout_lines
|
|
throttle: 1
|