No description
Find a file
Stijn Tintel 9d0fc0fd67 Only revoke GRANT OPTION when user actually has it
When revoking privileges from a user, the GRANT OPTION is always
revoked, even if the user doesn't have it. If the user exists, this
doesn't give an error, but if the user doesn't exist, it does:

mysql> GRANT ALL ON test.* TO 'test'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> REVOKE GRANT OPTION ON test.* FROM 'test'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> REVOKE GRANT OPTION ON test.* FROM 'test'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> REVOKE ALL ON test.* FROM 'test'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> REVOKE GRANT OPTION ON test.* FROM 'test'@'localhost';
ERROR 1141 (42000): There is no such grant defined for user 'test' on
host 'localhost'

Additionally, in MySQL 5.6 this breaks replication because of
http://bugs.mysql.com/bug.php?id=68892.

Rather than revoking the GRANT OPTION and catching the error, check if
the user actually has it and only revoke it when he does.
2013-07-23 13:00:29 +02:00
bin Remove task count information from task list. 2013-07-21 09:50:14 -04:00
docs/man Merge pull request #3094 from sfromm/issue2464-redux 2013-06-03 09:01:39 -07:00
docsite Minor cleanup of YAML Syntax documentation 2013-07-22 16:09:18 -06:00
examples Slight revisement to configuration file comment. 2013-07-05 22:11:51 -04:00
hacking Fix module path in readme file. 2013-07-19 09:34:43 -04:00
lib/ansible Merge pull request #3621 from sergevanginderachter/rename2flattened 2013-07-22 10:32:38 -07:00
library Only revoke GRANT OPTION when user actually has it 2013-07-23 13:00:29 +02:00
packaging Fixup changelog dates 2013-07-05 22:12:33 -04:00
plugins digital_ocean: whitespace changes 2013-07-05 10:38:04 -04:00
test Merge branch 'changed_when' of git://github.com/stoned/ansible into changed_when 2013-07-21 10:14:03 -04:00
.gitignore Update .gitignore 2013-06-10 15:46:16 -04:00
CHANGELOG.md Update changelog 2013-07-21 11:12:30 -04:00
CONTRIBUTING.md Add a line about testing. 2013-02-23 12:41:00 -05:00
COPYING license file should be in source tree 2012-03-15 20:24:22 -04:00
Makefile Do not set RPMDIST to '%dist' when dist is not set by the distribution. 2013-06-02 13:27:04 -04:00
MANIFEST.in Add some docs/examples 2012-08-14 13:05:44 -04:00
README.md Use new site URLs in README 2013-06-17 22:20:31 -06:00
RELEASES.txt Update releases 2013-07-05 22:10:34 -04:00
setup.py fix package mentioned twice in setup.py 2013-05-15 21:02:53 +02:00
VERSION Version bump and assorted things to start new development version. 2013-06-10 15:34:52 -04:00

Ansible

Ansible is a radically simple configuration-management, deployment, task-execution, and multinode orchestration framework.

Read the documentation and more at http://ansibleworks.com/

Many users run straight from the development branch (it's generally fine to do so), but you might also wish to consume a release. You can find instructions on http://ansibleworks.com/docs/gettingstarted.html for a variety of platforms. If you want a tarball of the last release, go to http://ansibleworks.com/releases/ and you can also install with pip (though that will bring in some optional binary dependencies you normally do not need).

Design Principles

  • Dead simple setup
  • Super fast & parallel by default
  • No server or client daemons; use existing SSHd
  • No additional software required on client boxes
  • Modules can be written in ANY language
  • Awesome API for creating very powerful distributed scripts
  • Be usable as non-root
  • The easiest config management system to use, ever.

Get Involved

Branch Info

  • Releases are named after Van Halen songs.
  • The devel branch corresponds to the release actively under development.
  • Various release-X.Y branches exist for previous releases
  • We'd love to have your contributions, read "CONTRIBUTING.md" for process notes.

Author

Michael DeHaan -- michael@ansibleworks.com

AnsibleWorks