Cause: ceph-ansible has tasks which try to interpret some json output of the ceph CLI.
In the playbook, those output are json representation in a string, therefore, we have to convert them in real json by using the `from_json` filter so we can manage with dict instead. When the output is empty, we need to provide a default value anyway to the `from_json` filter, so there was a default value that had an incorrect type.
Consequence: `from_json` filter expect to receive a string while we were passing a json type causing the filter to throw an error.
Fix: set the default value passed to `from_json` to the correct type (a string)
Result: tasks containing filter `from_json` don't fail anymore.
in job #46 looking at the undercloud logs it looks like this is happening with ceph-ansible 3.2
Dec 19 14:28:57 Updated: ceph-ansible-3.2.0-1.el7cp.noarch
there was a recent change in ceph-ansible meant to fix this issue [1] and it seems the fix is included in the build tested by the job; probably the fix is not sufficient in the scenario where there is some output but it's not in json format (maybe spurious error messages)
Attaching the playbook logs and moving the bug to ceph/ceph-ansible
1. https://github.com/ceph/ceph-ansible/commit/2cea33f7fc4bf59eaa249ca26ba326105e392402
Comment 6Ken Dreyer (Red Hat)
2019-01-07 21:54:43 UTC
Sorry guys, moving back to ASSIGNED because there is another error affecting FFU visible in the logs.
The switch-from-non-containerized-to-containerized-ceph-daemons playbook hits the same issue fixed by BZ #1650572 ; maybe the condition added with https://github.com/ceph/ceph-ansible/pull/3389 needs to be applied for the "switch" playbook too?
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/RHBA-2019:0223
Created attachment 1518101 [details] ceph_ansible_playbook.log