diff --git a/lib/ansible/modules/database/mysql/mysql_db.py b/lib/ansible/modules/database/mysql/mysql_db.py index b573f9d746..e6351fc9b1 100644 --- a/lib/ansible/modules/database/mysql/mysql_db.py +++ b/lib/ansible/modules/database/mysql/mysql_db.py @@ -289,7 +289,8 @@ def main(): try: cursor = mysql_connect(module, login_user, login_password, config_file, ssl_cert, ssl_key, ssl_ca, connect_timeout=connect_timeout) - except Exception, e: + except Exception: + e = get_exception() if os.path.exists(config_file): module.fail_json(msg="unable to connect to database, check login_user and login_password are correct or %s has the credentials. Exception message: %s" % (config_file, e)) else: @@ -305,7 +306,8 @@ def main(): else: try: changed = db_delete(cursor, db) - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg="error deleting database: " + str(e)) elif state == "dump": if module.check_mode: @@ -336,7 +338,8 @@ def main(): else: try: changed = db_create(cursor, db, encoding, collation) - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg="error creating database: " + str(e)) module.exit_json(changed=changed, db=db) diff --git a/lib/ansible/modules/database/mysql/mysql_user.py b/lib/ansible/modules/database/mysql/mysql_user.py index b0e46ee268..238e2a9cfc 100644 --- a/lib/ansible/modules/database/mysql/mysql_user.py +++ b/lib/ansible/modules/database/mysql/mysql_user.py @@ -541,7 +541,8 @@ def main(): if not cursor: cursor = mysql_connect(module, login_user, login_password, config_file, ssl_cert, ssl_key, ssl_ca, db, connect_timeout=connect_timeout) - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg="unable to connect to database, check login_user and login_password are correct or %s has the credentials. Exception message: %s" % (config_file, e)) if not sql_log_bin: @@ -550,11 +551,13 @@ def main(): if priv is not None: try: mode = get_mode(cursor) - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg=str(e)) try: priv = privileges_unpack(priv, mode) - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg="invalid privileges string: %s" % str(e)) if state == "present": @@ -565,14 +568,16 @@ def main(): else: changed = user_mod(cursor, user, host, host_all, None, encrypted, priv, append_privs, module) - except (SQLParseError, InvalidPrivsError, MySQLdb.Error), e: + except (SQLParseError, InvalidPrivsError, MySQLdb.Error): + e = get_exception() module.fail_json(msg=str(e)) else: if host_all: module.fail_json(msg="host_all parameter cannot be used when adding a user") try: changed = user_add(cursor, user, host, host_all, password, encrypted, priv, module.check_mode) - except (SQLParseError, InvalidPrivsError, MySQLdb.Error), e: + except (SQLParseError, InvalidPrivsError, MySQLdb.Error): + e = get_exception() module.fail_json(msg=str(e)) elif state == "absent": if user_exists(cursor, user, host, host_all): diff --git a/lib/ansible/modules/database/mysql/mysql_variables.py b/lib/ansible/modules/database/mysql/mysql_variables.py index da2c49a580..5cb6bf6fe5 100644 --- a/lib/ansible/modules/database/mysql/mysql_variables.py +++ b/lib/ansible/modules/database/mysql/mysql_variables.py @@ -109,7 +109,8 @@ def setvariable(cursor, mysqlvar, value): cursor.execute(query + "%s", (value,)) cursor.fetchall() result = True - except Exception, e: + except Exception: + e = get_exception() result = str(e) return result @@ -153,7 +154,8 @@ def main(): try: cursor = mysql_connect(module, user, password, config_file, ssl_cert, ssl_key, ssl_ca, db, connect_timeout=connect_timeout) - except Exception, e: + except Exception: + e = get_exception() if os.path.exists(config_file): module.fail_json(msg="unable to connect to database, check login_user and login_password are correct or %s has the credentials. Exception message: %s" % (config_file, e)) else: @@ -172,7 +174,8 @@ def main(): module.exit_json(msg="Variable already set to requested value", changed=False) try: result = setvariable(cursor, mysqlvar, value_wanted) - except SQLParseError, e: + except SQLParseError: + e = get_exception() result = str(e) if result is True: module.exit_json(msg="Variable change succeeded prev_value=%s" % value_actual, changed=True) @@ -184,4 +187,4 @@ from ansible.module_utils.basic import * from ansible.module_utils.database import * from ansible.module_utils.mysql import * if __name__ == '__main__': - main() \ No newline at end of file + main() diff --git a/lib/ansible/modules/database/postgresql/postgresql_db.py b/lib/ansible/modules/database/postgresql/postgresql_db.py index cca4196329..bfb2f7e095 100644 --- a/lib/ansible/modules/database/postgresql/postgresql_db.py +++ b/lib/ansible/modules/database/postgresql/postgresql_db.py @@ -280,7 +280,8 @@ def main(): .ISOLATION_LEVEL_AUTOCOMMIT) cursor = db_connection.cursor( cursor_factory=psycopg2.extras.DictCursor) - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg="unable to connect to database: %s" % e) try: @@ -295,21 +296,25 @@ def main(): if state == "absent": try: changed = db_delete(cursor, db) - except SQLParseError, e: + except SQLParseError: + e = get_exception() module.fail_json(msg=str(e)) elif state == "present": try: changed = db_create(cursor, db, owner, template, encoding, lc_collate, lc_ctype) - except SQLParseError, e: + except SQLParseError: + e = get_exception() module.fail_json(msg=str(e)) - except NotSupportedError, e: + except NotSupportedError: + e = get_exception() module.fail_json(msg=str(e)) except SystemExit: # Avoid catching this on Python 2.4 raise - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg="Database query failed: %s" % e) module.exit_json(changed=changed, db=db) diff --git a/lib/ansible/modules/database/postgresql/postgresql_privs.py b/lib/ansible/modules/database/postgresql/postgresql_privs.py index 8fefd3de64..6944b54fcc 100644 --- a/lib/ansible/modules/database/postgresql/postgresql_privs.py +++ b/lib/ansible/modules/database/postgresql/postgresql_privs.py @@ -573,7 +573,8 @@ def main(): module.fail_json(msg='Python module "psycopg2" must be installed.') try: conn = Connection(p) - except psycopg2.Error, e: + except psycopg2.Error: + e = get_exception() module.fail_json(msg='Could not connect to database: %s' % e) try: @@ -613,11 +614,13 @@ def main(): schema_qualifier=p.schema ) - except Error, e: + except Error: + e = get_exception() conn.rollback() module.fail_json(msg=e.message) - except psycopg2.Error, e: + except psycopg2.Error: + e = get_exception() conn.rollback() # psycopg2 errors come in connection encoding, reencode msg = e.message.decode(conn.encoding).encode(sys.getdefaultencoding(), diff --git a/lib/ansible/modules/database/postgresql/postgresql_user.py b/lib/ansible/modules/database/postgresql/postgresql_user.py index 1c745266b4..2254d3b924 100644 --- a/lib/ansible/modules/database/postgresql/postgresql_user.py +++ b/lib/ansible/modules/database/postgresql/postgresql_user.py @@ -290,7 +290,8 @@ def user_alter(cursor, module, user, password, role_attr_flags, encrypted, expir try: cursor.execute(' '.join(alter), query_password_data) - except psycopg2.InternalError, e: + except psycopg2.InternalError: + e = get_exception() if e.pgcode == '25006': # Handle errors due to read-only transactions indicated by pgcode 25006 # ERROR: cannot execute ALTER ROLE in a read-only transaction @@ -298,7 +299,7 @@ def user_alter(cursor, module, user, password, role_attr_flags, encrypted, expir module.fail_json(msg=e.pgerror) return changed else: - raise psycopg2.InternalError, e + raise psycopg2.InternalError(e) # Grab new role attributes. cursor.execute(select, {"user": user}) @@ -551,7 +552,8 @@ def main(): no_password_changes = module.params["no_password_changes"] try: role_attr_flags = parse_role_attrs(module.params["role_attr_flags"]) - except InvalidFlagsError, e: + except InvalidFlagsError: + e = get_exception() module.fail_json(msg=str(e)) if module.params["encrypted"]: encrypted = "ENCRYPTED" @@ -583,7 +585,8 @@ def main(): try: db_connection = psycopg2.connect(**kw) cursor = db_connection.cursor(cursor_factory=psycopg2.extras.DictCursor) - except Exception, e: + except Exception: + e = get_exception() module.fail_json(msg="unable to connect to database: %s" % e) kw = dict(user=user) @@ -594,16 +597,19 @@ def main(): if user_exists(cursor, user): try: changed = user_alter(cursor, module, user, password, role_attr_flags, encrypted, expires, no_password_changes) - except SQLParseError, e: + except SQLParseError: + e = get_exception() module.fail_json(msg=str(e)) else: try: changed = user_add(cursor, user, password, role_attr_flags, encrypted, expires) - except SQLParseError, e: + except SQLParseError: + e = get_exception() module.fail_json(msg=str(e)) try: changed = grant_privileges(cursor, user, privs) or changed - except SQLParseError, e: + except SQLParseError: + e = get_exception() module.fail_json(msg=str(e)) else: if user_exists(cursor, user): @@ -614,7 +620,8 @@ def main(): try: changed = revoke_privileges(cursor, user, privs) user_removed = user_delete(cursor, user) - except SQLParseError, e: + except SQLParseError: + e = get_exception() module.fail_json(msg=str(e)) changed = changed or user_removed if fail_on_user and not user_removed: