While using v4.0.14 with `ansible-playbook ... --limit host200,host201,...` where host200,host201... are in the inventory under the [clients] role, the ceph-ansible playbook run failed with the error below as if it had missing facts.
It's very useful for the ceph-client role to support '--limit' because re-running the client role on ~250 clients takes 2.5 hours. In this case I was trying to help someone add just 10 more clients to a deployment which already had about 250 of them. Users shouldn't have to wait to reconfigure the all clients when we only need 10 configured.
2020-02-05 18:38:53,814 p=370999 u=root | fatal: [overcloud-ms5039compute-148]: FAILED! =>
msg: |-
The conditional check '(hostvars[item]['ansible_architecture'] == 'x86_64') or (not containerized_deployment | bool)' failed. The error was: error while evaluating conditional ((hostvars[item]['ansible_architecture'] == 'x86_64') or (not containerized_deployment | bool)): 'ansible.vars.hostvars.HostVarsVars object' has no attribute 'ansible_architecture'
The error appears to be in '/usr/share/ceph-ansible/roles/ceph-client/tasks/create_users_keys.yml': line 18, column 3, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
# will add all client hosts to the group (and not filter).
- name: create filtered clients group
^ here
Comment 1RHEL Program Management
2020-02-06 00:25:17 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHSA-2020:2231