diff --git a/src/gam/__init__.py b/src/gam/__init__.py index b56353c5..d85db310 100755 --- a/src/gam/__init__.py +++ b/src/gam/__init__.py @@ -871,9 +871,9 @@ def getSvcAcctCredentials(scopes, act_as, api=None): GM_Globals[GM_OAUTH2SERVICE_ACCOUNT_CLIENT_ID] = GM_Globals[ GM_OAUTH2SERVICE_JSON_DATA]['client_id'] return credentials - except (ValueError, KeyError): + except (ValueError, KeyError) as err: printLine(MESSAGE_INSTRUCTIONS_OAUTH2SERVICE_JSON) - controlflow.invalid_json_exit(GC_Values[GC_OAUTH2SERVICE_JSON]) + controlflow.invalid_json_exit(GC_Values[GC_OAUTH2SERVICE_JSON], err) def getAPIVersion(api): @@ -899,8 +899,8 @@ def readDiscoveryFile(api_version): try: discovery = json.loads(json_string) return (disc_file, discovery) - except ValueError: - controlflow.invalid_json_exit(disc_file) + except ValueError as err: + controlflow.invalid_json_exit(disc_file, err) def getOauth2TxtStorageCredentials(): @@ -7889,7 +7889,7 @@ def doCreateOrRotateServiceAccountKeys(iam=None, i += 1 elif myarg == 'yubikeyslot': new_data['yubikey_slot'] = sys.argv[i+1].upper() - i =+ 2 + i += 2 elif myarg == 'yubikeypin': new_data['yubikey_pin'] = input('Enter your YubiKey PIN: ') i += 1 diff --git a/src/gam/controlflow.py b/src/gam/controlflow.py index e4402986..3a4faca7 100644 --- a/src/gam/controlflow.py +++ b/src/gam/controlflow.py @@ -65,9 +65,12 @@ def csv_field_error_exit(field_name, field_names): ','.join(field_names))) -def invalid_json_exit(file_name): +def invalid_json_exit(file_name, err=None): """Raises a system exit when invalid JSON content is encountered.""" - system_error_exit(17, MESSAGE_INVALID_JSON.format(file_name)) + err_msg = MESSAGE_INVALID_JSON.format(file_name) + if err: + err_msg += f'\n\n{err}' + system_error_exit(17, err_msg) def wait_on_failure(current_attempt_num,