Convert all databases modules to python3 and 2.4 syntax (#3688)

This commit is contained in:
Michael Scherer 2016-05-18 16:07:21 +02:00 committed by Toshio Kuratomi
parent 69ea617093
commit 20342860ad
7 changed files with 56 additions and 30 deletions

View file

@ -22,8 +22,8 @@ script:
- python2.4 -m compileall -fq cloud/amazon/_ec2_ami_search.py cloud/amazon/ec2_facts.py
- python2.6 -m compileall -fq .
- python2.7 -m compileall -fq .
- python3.4 -m compileall -fq system/ commands/ source_control/ inventory/ files/
- python3.5 -m compileall -fq system/ commands/ source_control/ inventory/ files/
- python3.4 -m compileall -fq system/ commands/ source_control/ inventory/ files/ databases/
- python3.5 -m compileall -fq system/ commands/ source_control/ inventory/ files/ databases/
- ansible-validate-modules --exclude 'utilities/' .
#- ansible-validate-modules --exclude 'cloud/amazon/ec2_lc\.py|cloud/amazon/ec2_scaling_policy\.py|cloud/amazon/ec2_scaling_policy\.py|cloud/amazon/ec2_asg\.py|cloud/azure/azure\.py|packaging/os/rhn_register\.py|network/openswitch/ops_template\.py|system/hostname\.py|utilities/' .
#- ./test-docs.sh core

View file

@ -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)

View file

@ -534,7 +534,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:
@ -543,11 +544,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":
@ -558,14 +561,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):

View file

@ -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()
main()

View file

@ -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)

View file

@ -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(),

View file

@ -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})
@ -575,7 +576,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"
@ -607,7 +609,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)
@ -618,16 +621,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):
@ -638,7 +644,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: