gcp_utils: Handle JSON decode exception (#59427)
Handle json.loads exception rather than providing stacktrace Fixes: #56269 Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
This commit is contained in:
parent
49da47d09f
commit
c1ee1f142d
1 changed files with 7 additions and 2 deletions
|
@ -18,7 +18,7 @@ except ImportError:
|
|||
|
||||
from ansible.module_utils.basic import AnsibleModule, env_fallback
|
||||
from ansible.module_utils.six import string_types
|
||||
from ansible.module_utils._text import to_text
|
||||
from ansible.module_utils._text import to_text, to_native
|
||||
import ast
|
||||
import os
|
||||
import json
|
||||
|
@ -156,7 +156,12 @@ class GcpSession(object):
|
|||
path = os.path.realpath(os.path.expanduser(self.module.params['service_account_file']))
|
||||
return service_account.Credentials.from_service_account_file(path).with_scopes(self.module.params['scopes'])
|
||||
elif cred_type == 'serviceaccount' and self.module.params.get('service_account_contents'):
|
||||
cred = json.loads(self.module.params.get('service_account_contents'))
|
||||
try:
|
||||
cred = json.loads(self.module.params.get('service_account_contents'))
|
||||
except json.decoder.JSONDecodeError as e:
|
||||
self.module.fail_json(
|
||||
msg="Unable to decode service_account_contents as JSON : %s" % to_native(e)
|
||||
)
|
||||
return service_account.Credentials.from_service_account_info(cred).with_scopes(self.module.params['scopes'])
|
||||
elif cred_type == 'machineaccount':
|
||||
return google.auth.compute_engine.Credentials(
|
||||
|
|
Loading…
Reference in a new issue