Makes ansible fail if login_port is defined and login_host is either not defined, or defined as localhost. This is because if login_host is localhost then MySQLdb will use the socket instead of TCP. This leads to confusion for ansible users as, when a port is defined it gets ignored if login_host is localhost. This is to fix the bug reported by wrosario #8070. Info on MysqlDb can be read here http://mysql-python.sourceforge.net/MySQLdb.html
This commit is contained in:
parent
30ad859fe0
commit
90f7f82224
|
@ -50,7 +50,7 @@ options:
|
||||||
default: localhost
|
default: localhost
|
||||||
login_port:
|
login_port:
|
||||||
description:
|
description:
|
||||||
- Port of the MySQL server
|
- Port of the MySQL server. Requires login_host be defined as other then localhost if login_port is used
|
||||||
required: false
|
required: false
|
||||||
default: 3306
|
default: 3306
|
||||||
login_unix_socket:
|
login_unix_socket:
|
||||||
|
@ -308,6 +308,8 @@ def main():
|
||||||
try:
|
try:
|
||||||
if module.params["login_unix_socket"]:
|
if module.params["login_unix_socket"]:
|
||||||
db_connection = MySQLdb.connect(host=module.params["login_host"], unix_socket=module.params["login_unix_socket"], user=login_user, passwd=login_password, db=connect_to_db)
|
db_connection = MySQLdb.connect(host=module.params["login_host"], unix_socket=module.params["login_unix_socket"], user=login_user, passwd=login_password, db=connect_to_db)
|
||||||
|
elif module.params["login_port"] != "3306" and module.params["login_host"] == "localhost":
|
||||||
|
module.fail_json(msg="login_host is required when login_port is defined, login_host cannot be localhost when login_port is defined")
|
||||||
else:
|
else:
|
||||||
db_connection = MySQLdb.connect(host=module.params["login_host"], port=int(module.params["login_port"]), user=login_user, passwd=login_password, db=connect_to_db)
|
db_connection = MySQLdb.connect(host=module.params["login_host"], port=int(module.params["login_port"]), user=login_user, passwd=login_password, db=connect_to_db)
|
||||||
cursor = db_connection.cursor()
|
cursor = db_connection.cursor()
|
||||||
|
|
Loading…
Reference in a new issue