diff options
author | root <root@puppetmaster.black.co.at> | 2007-10-10 17:23:20 +0200 |
---|---|---|
committer | root <root@puppetmaster.black.co.at> | 2007-10-10 17:23:20 +0200 |
commit | d33c7aa10e3a4bd9e97e947c471ee3ed36e9d1e2 (patch) | |
tree | ce6a9ac08f46ab845eda0c7a77d1a3f4dd670d86 /plugins/puppet/provider/mysql_user/mysql.rb | |
parent | 9a22e7d41a84ec2585b6b7200f8fd08c3b46a04c (diff) | |
download | puppet-mysql-d33c7aa10e3a4bd9e97e947c471ee3ed36e9d1e2.tar.gz puppet-mysql-d33c7aa10e3a4bd9e97e947c471ee3ed36e9d1e2.tar.xz puppet-mysql-d33c7aa10e3a4bd9e97e947c471ee3ed36e9d1e2.zip |
mysql: implement native types and test them
Diffstat (limited to 'plugins/puppet/provider/mysql_user/mysql.rb')
-rw-r--r-- | plugins/puppet/provider/mysql_user/mysql.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/plugins/puppet/provider/mysql_user/mysql.rb b/plugins/puppet/provider/mysql_user/mysql.rb new file mode 100644 index 0000000..a1c2896 --- /dev/null +++ b/plugins/puppet/provider/mysql_user/mysql.rb @@ -0,0 +1,19 @@ +Puppet::Type.type(:mysql_user).provide(:mysql) do + desc "Use mysql as database." + commands :mysql => '/usr/bin/mysql' + + def create + mysql "mysql", "-e", "create user '%s@%s' identified by '%s'" % [ @resource[:name], @resource[:host], @resource[:password] ] + end + def destroy + mysql "mysql", "-e", "drop user '%s@%s'" % [ @resource[:name], @resource[:host] ] + end + def exists? + if /^#{@resource[:name]}@#{@resource[:host]}$/.match( mysql( "mysql", "-Be", 'SELECT CONCAT(user, "@", host) FROM user' ) ) + true + else + false + end + end +end + |