From 024d20d3d8ebb7d8827e137a352629771622cb37 Mon Sep 17 00:00:00 2001 From: Cory Johns Date: Wed, 29 Jul 2020 15:11:29 -0400 Subject: [PATCH] Improve exception checking per review --- lib/charms/layer/openstack.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/charms/layer/openstack.py b/lib/charms/layer/openstack.py index 5225da5..2dd9b21 100644 --- a/lib/charms/layer/openstack.py +++ b/lib/charms/layer/openstack.py @@ -1,3 +1,4 @@ +import binascii import json import re import os @@ -82,8 +83,13 @@ def get_credentials(): _creds_data = b64decode(config['credentials']).decode('utf8') _creds_data = json.loads(_creds_data) _merge_if_set(creds_data, _normalize_creds(_creds_data)) - except Exception as e: - if str(e).startswith('unsupported auth-type'): + except (ValueError, + TypeError, + binascii.Error, + json.JSONDecodeError, + UnicodeDecodeError) as e: + if isinstance(e, ValueError) and \ + str(e).startswith('unsupported auth-type'): raise # handled below log_err('Invalid value for credentials config\n{}', format_exc())