From: asteroide Date: Fri, 20 Nov 2015 15:04:31 +0000 (+0100) Subject: Get errors from Keystone-Moon and throw them from Moonclient X-Git-Tag: colorado.1.0~96^2 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F83%2F3483%2F1;p=moon.git Get errors from Keystone-Moon and throw them from Moonclient Change-Id: I686f2d49b0c41a8352ed9c18805fbf4058d8ad3d --- diff --git a/moonclient/moonclient/shell.py b/moonclient/moonclient/shell.py index 49422a45..5e40bf40 100644 --- a/moonclient/moonclient/shell.py +++ b/moonclient/moonclient/shell.py @@ -150,9 +150,21 @@ class MoonClient(App): content = resp.read() conn.close() try: - return json.loads(content) + content = json.loads(content) + if "error" in content: + try: + raise Exception("Getting an error while requiring {} ({}: {}, {})".format( + url, + content['error']['code'], + content['error']['title'], + content['error']['message'], + )) + except ValueError: + raise Exception("Getting an error while requiring {} ({})".format(url, content)) + return content except ValueError: - return {"content": content} + raise Exception("Getting an error while requiring {} ({})".format(url, content)) + # return {"content": content} def auth_keystone(self, username=None, password=None, host=None, port=None): """Send a new authentication request to Keystone