diff options
Diffstat (limited to 'plugins/puppet/provider')
-rw-r--r-- | plugins/puppet/provider/mysql_grant/mysql.rb | 7 | ||||
-rw-r--r-- | plugins/puppet/provider/mysql_user/mysql.rb | 8 |
2 files changed, 15 insertions, 0 deletions
diff --git a/plugins/puppet/provider/mysql_grant/mysql.rb b/plugins/puppet/provider/mysql_grant/mysql.rb index 9d900ec..93d7ecf 100644 --- a/plugins/puppet/provider/mysql_grant/mysql.rb +++ b/plugins/puppet/provider/mysql_grant/mysql.rb @@ -10,6 +10,11 @@ Puppet::Type.type(:mysql_grant).provide(:mysql) do desc "Uses mysql as database." commands :mysql => '/usr/bin/mysql' + commands :mysqladmin => '/usr/bin/mysqladmin' + + def mysql_flush + mysqladmin "flush-privileges" + end # this parses the def split_name(string) @@ -44,6 +49,7 @@ Puppet::Type.type(:mysql_grant).provide(:mysql) do name[:host], name[:user], name[:db], ] end + mysql_flush end end @@ -129,6 +135,7 @@ Puppet::Type.type(:mysql_grant).provide(:mysql) do stmt = stmt << set << where mysql "mysql", "-Be", stmt + mysql_flush end end diff --git a/plugins/puppet/provider/mysql_user/mysql.rb b/plugins/puppet/provider/mysql_user/mysql.rb index 8238620..adc46c3 100644 --- a/plugins/puppet/provider/mysql_user/mysql.rb +++ b/plugins/puppet/provider/mysql_user/mysql.rb @@ -6,6 +6,7 @@ Puppet::Type.type(:mysql_user).provide(:mysql, desc "Use mysql as database." commands :mysql => '/usr/bin/mysql' + commands :mysqladmin => '/usr/bin/mysqladmin' # retrieve the current set of mysql users def self.instances @@ -29,6 +30,10 @@ Puppet::Type.type(:mysql_user).provide(:mysql, } end + def mysql_flush + mysqladmin "flush-privileges" + end + def query result = {} @@ -47,10 +52,12 @@ Puppet::Type.type(:mysql_user).provide(:mysql, def create mysql "mysql", "-e", "create user '%s' identified by PASSWORD '%s'" % [ @resource[:name].sub("@", "'@'"), @resource.should(:password_hash) ] + mysql_flush end def destroy mysql "mysql", "-e", "drop user '%s'" % @resource[:name].sub("@", "'@'") + mysql_flush end def exists? @@ -63,6 +70,7 @@ Puppet::Type.type(:mysql_user).provide(:mysql, def password_hash=(string) mysql "mysql", "-e", "SET PASSWORD FOR '%s' = '%s'" % [ @resource[:name].sub("@", "'@'"), string ] + mysql_flush end end |