Commit graph

136 commits

Author SHA1 Message Date
Wayne Rosario eaf4571e42 Adding the following Test Coverage:
Use mysql_user module to create, delete users.
Update user password and ensure new password was updated for the correct user.
Assert user has access to multiple databases
Assert user creation, deleting using different user privilege and ensure privilege work correctly.
2014-07-29 11:49:53 -04:00
Wayne Rosario d595fd00e9 updating doc to include revoke example for mysql_user docs 2014-07-24 10:32:28 -04:00
Jonathan Mainguy 6789098bc5 This fixes 8173, if target was not defined it would break, now it wont 2014-07-18 09:52:37 -04:00
James Cammarata ac73822405 Expand target for mysql_db
Fixes #8128
2014-07-16 13:39:47 -05:00
Jonathan Mainguy 40ef07a286 Errors out with stderr 1049, unknown database: when importing a database that does not exist 2014-07-11 14:57:45 -04:00
James Cammarata 5e0d07c93e Merge pull request #8092 from ghjm/mysql-exceptions
Added exception handling to database creation and deletion. Fixes #8075.
2014-07-11 11:59:12 -05:00
Graham Mainwaring 22390e50e5 Switched primary and alias names of the name/db parameter, to match documentation. Fixes #8065. 2014-07-10 22:37:46 -04:00
Graham Mainwaring 980d9da7e9 Added exception handling to database creation and deletion. Fixes #8075. 2014-07-10 22:28:56 -04:00
Jonathan Mainguy 90f7f82224 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 2014-07-09 14:38:27 -04:00
James Cammarata 5ad7dcf4f0 Merge pull request #6766 from Jmainguy/mysql_db_bug
mysql_db module now correctly fails on import if bz2 or gz fails.
2014-06-23 12:42:42 -05:00
Scott Brown 28c9104ed5 BUGFIX 1178: Adding better existence check in one place. db_import now fails fast if target does not exist b/c no point going further without the target. 2014-06-17 14:37:14 -07:00
Scott Brown b09a144724 BUGFIX 7811: Adding file existence check when performing mysql import on a .gz or .bz2 file, otherwise Ansible will not notice that the underlying *nix command silently died. 2014-06-17 13:08:53 -07:00
James Cammarata 4c30b3d68a Fixing mysql master replication boolean
Fixes #7528
2014-06-09 08:58:55 -05:00
Josef Špak 2d402ab5ca Fix typo in CHANGE MASTER TO syntax 2014-06-02 13:42:55 +02:00
Mathieu Martin a8969b5d3c Add example 'Specify grants composed of more than one word' to the mysql_user module. 2014-05-20 14:41:18 -04:00
Scott Sturdivant 726dc1d2e8 Clarify that the encrypted param must also be set.
While the encrypted parameter's documentation clearly states that it needs to
be set, if you are focused on the password parameter's documentation, there's
nothing to draw your attention to the fact that encrypted may also need to be
set.
2014-05-14 07:49:11 -06:00
Adam Chainz 967de3cdf9 Fix sync_binlog name in mysql_variables example
The previous sync_binary_log is not a real MySQL variable.
2014-05-06 12:25:11 +01:00
Cove Schneider 6a321fe346 re-add idempotency check 2014-04-05 16:31:33 -07:00
Cove Schneider 6e81f41cd4 add replicaset support to mongodb_user module 2014-04-05 15:33:22 -07:00
Michael DeHaan 0125f36c49 Merge pull request #6796 from mistaka0s/mysqldump_fix
Remove extra quote from the mysqldump password argument
2014-04-02 17:24:35 -04:00
Matt Martz b4de76373a Use /usr/bin/python instead of /usr/bin/env python 2014-04-01 13:54:37 -05:00
Chao Luan 134c449cf6 Remove extra quote from the mysqldump password argument
The mysqldb Ansible module will fail if the state specified is import or dump with a '1045: Access Denied' mysql error for complex passwords.

This is caused by the extra quote around the '--password' argument to mysqldump, as pipes.quotes already quotes the password string.

>>> "--password='%s'" % pipes.quote('simple')
"--password='simple'"

>>> "--password='%s'" % pipes.quote('c0mplexp@ssword!')
"--password=''c0mplexp@ssword!''"

>>> "--password='%s'" % pipes.quote('password with space')
"--password=''password with space''"
2014-04-01 23:52:08 +11:00
Jonathan Mainguy 8928a5ede1 Added mpdehaan suggestion to use os.path.splitext. Wise suggestion, does look clearner 2014-03-31 11:09:00 -04:00
Jonathan Mainguy bb73819c43 mysql_db module now correctly fails on import if bz2 or gz fails. 2014-03-30 13:39:00 -04:00
Michael DeHaan 991399edf0 Update comments about redis config. 2014-03-19 18:15:52 -04:00
Michael DeHaan b0639b16cf Merge branch 'devel' of git://github.com/mleventi/ansible into devel 2014-03-19 18:15:06 -04:00
Michael DeHaan aaaf9dbc43 Merge pull request #5597 from laggyluke/mongodb_user_idempotence
Fix idempotence in mongodb_user module
2014-03-16 15:50:43 -05:00
Cristian Ciupitu 0749112286 Micro-optimization: replace s.find(x)!=-1 with x in s
timeit shows a speedup of ~3x on Python 2.7.5 x86_64.
It also makes the code a bit shorter.
2014-03-16 13:10:28 -04:00
Richard Isaacson e6f6a73328 Merge pull request #6461 from risaacson/modules_make_run_command_safer
Modules make run command safer
2014-03-12 23:28:06 -05:00
Richard C Isaacson 2b53ece3ab mysql_db module: typo fix
Tests clean.
2014-03-12 23:25:22 -05:00
Richard C Isaacson 427221786c Shell updates. 2014-03-12 22:15:56 -05:00
James Martin 3d032b9db9 Fixes various typos introduced in a9017af2bb.
Fixes odd encoding problem with wait_for_service.
2014-03-12 21:26:16 -04:00
Michael DeHaan dac90278db More shell fixes 2014-03-12 17:43:31 -04:00
James Cammarata a9017af2bb Adding validate_certs to all modules that use fetch_url 2014-03-12 10:19:54 -05:00
Richard C Isaacson c2bf201bce Bulk update of choices=BOOLEANS to type='bool' 2014-03-11 22:56:51 -05:00
James Cammarata 11f500fa2f Merge pull request #4630 from mmoya/mysql_variables-fix2
Add support for string values
2014-03-11 15:20:46 -05:00
James Cammarata 9730157525 Validate SSL certs accessed through urllib*
* Adds another module utility file which generalizes the
  access of urls via the urllib* libraries.
* Adds a new spec generator for common arguments.
* Makes the user-agent string configurable.

Fixes #6211
2014-03-10 16:06:52 -05:00
Michael DeHaan 616d7e53b1 Merge pull request #6305 from amree/fix-mysql-replication-port
Fixed SQL syntax error when running mysql_replication module
2014-03-06 11:08:12 -06:00
Jimena Cabrera-Notari cc6e1ec261 Don't use keyword error in encode
This is not supported in Python 2.6. Just use positional arguments.
2014-03-06 13:33:53 +00:00
amree 1d731e5c30 MASTER_PORT variable for CHANGE MASTER TO command can only accept integer value 2014-03-06 12:19:54 +08:00
Guido Kollerie a000f37132 Emphasize target is on remote host. List supported file types.
From the documentation it is not immediately clear that the 'target'
option refers to a location on the remote host. This change emphasizes that.
In addition to .sql files, .bz2 and .gz files are supported for dumps and
restores. This is now documented.
2014-02-26 12:56:24 +01:00
Kyle Kelley b5eb4d2a71 Fix expires 2014-02-24 15:54:55 -06:00
James Martin 0e3356c40e Properly fetching the riak version, and properly setting the python interpreter. 2014-02-19 12:12:02 -05:00
James Cammarata 1544c93bf2 Merge branch 'fix-postgres_user_to_understand_pg_namespaces' of https://github.com/alanfairless/ansible into alanfairless-fix-postgres_user_to_understand_pg_namespaces 2014-02-17 10:04:12 -06:00
James Cammarata 87bf16930e Merge branch 'postgres_alter_role' of https://github.com/jinnko/ansible into jinnko-postgres_alter_role
Conflicts:
	library/database/postgresql_user
2014-02-17 09:57:31 -06:00
Maykel Moya 811aa2611e Add support for string values
The SET GLOBAL statement requires properly quoting of values. For example, the
following correct queries will fail if quotes are toggled:

mysql> SET GLOBAL innodb_lru_scan_depth = 2000;
mysql> SET GLOBAL master_info_repository = "TABLE";

`mysql_variable` module doesn't quote the value argument, therefore
string values will fail.

  # this task will pass, 2000 is passed without quotes
  - name: set a numeric value
    mysql_variable: variable=innodb_lru_scan_depth value=2000

  # this task will fail, TABLE is passed without quotes
  - name: set a string value
    mysql_variable: variable=master_info_repository value=TABLE

With this patch prepared statements are used. Proper quoting will be
done automatically based on the type of the variables thus an attempt
to convert to int, then to float is done in first place.

Booleans values, ie: ON, OFF, are not specially handled because they
can be quoted. For example, the following queries are correct and
equivalent, they all set _innodb_file_per_table_ to logical _True_:

mysql> SET GLOBAL innodb_file_per_table = "ON";
mysql> SET GLOBAL innodb_file_per_table = ON;
mysql> SET GLOBAL innodb_file_per_table = 1;

Tested in mysql 5.5 and 5.6.
2014-02-12 12:44:28 +01:00
Arturs Vonda 6d85082586 Added port documentation to postgresql_db and postgresql_user 2014-02-07 18:27:55 +02:00
George Miroshnykov 66b2d55a18 Add idempotency to mongodb_user module 2014-02-04 13:56:35 +02:00
Matthew Jones 31ac3e71df Allow strings containing single and double quotes to be used as passwords for postgres_user 2014-02-03 17:07:17 -05:00
Timur Batyrshin 658c15930e reword "except Error as e:" into "except Error, e:" to be compatible with Python 2.5 (#5852) 2014-02-03 13:00:40 -06:00