diff --git a/openstackclient/common/utils.py b/openstackclient/common/utils.py index 5c5466dfc6..818f8d4771 100644 --- a/openstackclient/common/utils.py +++ b/openstackclient/common/utils.py @@ -33,8 +33,15 @@ def find_resource(manager, name_or_id): try: if isinstance(name_or_id, int) or name_or_id.isdigit(): return manager.get(int(name_or_id)) - except exceptions.NotFound: - pass + # FIXME(dtroyer): The exception to catch here is dependent on which + # client library the manager passed in belongs to. + # Eventually this should be pulled from a common set + # of client exceptions. + except Exception as ex: + if type(ex).__name__ == 'NotFound': + pass + else: + raise # Try directly using the passed value try: