Bug 1643403

Summary: RFE: ceph-ansible should precheck env instead of failing on basic missing conditions
Product: [Red Hat Storage] Red Hat Ceph Storage Reporter: Matthias Muench <mmuench>
Component: Ceph-AnsibleAssignee: Sébastien Han <shan>
Status: CLOSED DUPLICATE QA Contact: ceph-qe-bugs <ceph-qe-bugs>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 3.1CC: aschoen, ceph-eng-bugs, gmeno, mmuench, nthomas, sankarshan
Target Milestone: rcKeywords: FutureFeature
Target Release: 3.*   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-26 10:03:54 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Matthias Muench 2018-10-26 07:59:08 UTC
Description of problem:
ceph-ansible fails at the end of deployment using RGWs if interface is not properly configured with the IP address if radosgw_interface: is set in all.yml only.
The error message is hard to assign to the real problem.


Version-Release number of selected component (if applicable): ceph-ansible-3.1.5-1.el7cp.noarch


How reproducible:
Always.


Steps to Reproduce:
1. configure cluster hosts with IP addresses assigned, except RGWs external interface
2. define radosgw_interface: <interface> in all.yml, not radosgw_address, neither in inventory
3. run ansible-playbook site.yml

Actual results:
TASK [ceph-config : generate ceph configuration file: cephred.conf] ************
Thursday 25 October 2018  14:43:32 -0400 (0:00:00.252)       0:01:42.673 ****** 
fatal: [ceph31-rgw1]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute u'ipv4'"}
fatal: [ceph31-rgw2]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute u'ipv4'"}

PLAY RECAP *********************************************************************
ceph31-rgw1                : ok=40   changed=2    unreachable=0    failed=1   
ceph31-rgw2                : ok=36   changed=2    unreachable=0    failed=1   


Expected results:
ceph-ansible should call out that this would fail missing proper basic setup of hosts

Additional info:
A general pre-check could ease overall process of install and avoid lengthy runs and troubleshooting with poor failure descriptions only.

Comment 3 Sébastien Han 2018-10-26 10:03:54 UTC
Implemented in 3.2

*** This bug has been marked as a duplicate of bug 1600227 ***