This isn't clearly wrong, because the result is a requests.Response which overrides __bool__ and returns True for an OK response and False for any response status code >=400.
https://github.com/requests/requests/blob/v2.18.4/requests/models.py#L663 ** Changed in: nova Status: New => Invalid -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1742311 Title: AttributeError in report client error path Status in OpenStack Compute (nova): Invalid Bug description: This [1] is clearly wrong. elif not result: placement_req_id = get_placement_request_id(result) LOG.warning('[%(placement_req_id)s] Failed to update inventory ' 'for resource provider %(uuid)s: %(status)i %(text)s', {'placement_req_id': placement_req_id, 'uuid': rp_uuid, 'status': result.status_code, 'text': result.text}) It triggers if `result` evaluates to False, then tries to access result.status_code and result.text. [1] https://github.com/openstack/nova/blob/90a92d33edaea2b7411a5fd528f3159a486e1fd0/nova/scheduler/client/report.py#L756-L763 To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1742311/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp