From 59b124ea5025ce75914800574f4990cf60c42ad5 Mon Sep 17 00:00:00 2001 From: Daniel Ziegenberg Date: Fri, 12 Mar 2021 15:01:28 +0100 Subject: [PATCH] change deprecated parameter db to database --- plugins/module_utils/mysql.py | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/plugins/module_utils/mysql.py b/plugins/module_utils/mysql.py index 2b8aec0..58f5bad 100644 --- a/plugins/module_utils/mysql.py +++ b/plugins/module_utils/mysql.py @@ -104,7 +104,24 @@ def mysql_connect(module, login_user=None, login_password=None, config_file='', if ssl_ca is not None: config['ssl']['ca'] = ssl_ca if db is not None: - config['db'] = db + if mysql_driver.__name__ == "pymysql": + # In case of PyMySQL driver: + version_tuple = (n for n in mysql_driver.__version__.split('.') if n != 'None') + if reduce(lambda x, y: int(x) * 100 + int(y), version_tuple) >= 607: + # pymysql >= 0.6.7 + config['database'] = db + else: + # NOTE: This check SHOULD be removed as soon as the minimum support version of PyMySQL for this collection reaches pymysql v0.6.7 + config['db'] = db + else: + # In case of MySQLdb driver + version_tuple = (n for n in mysql_driver.__version__.split('.') if n != 'None') + if reduce(lambda x, y: int(x) * 100 + int(y), version_tuple) >= 10308: + # mysqlclient >= 1.3.8 + config['database'] = login_password + else: + # NOTE: This check SHOULD be removed as soon as the minimum support version of MySQLdb for this collection reaches mysqlclient v1.3.8 + config['db'] = db if connect_timeout is not None: config['connect_timeout'] = connect_timeout if check_hostname is not None: