summaryrefslogtreecommitdiff
path: root/lib/puppet
diff options
context:
space:
mode:
authormh <mh@immerda.ch>2011-05-12 22:13:37 +0200
committermh <mh@immerda.ch>2011-05-12 22:13:37 +0200
commit585cbc381ba1fe3fe0c1172e049f7d7ba2639edf (patch)
tree7ee0a721cbf601defea1e5428e27e44bbe76f604 /lib/puppet
parentb8b6705865f947e4473a8e4981963dbeed667f8d (diff)
fix grant on newer mysql version
MySQL introduced some new privileges in Versions > 5.1.6, add them to our set, so puppet still knows what :all is.
Diffstat (limited to 'lib/puppet')
-rw-r--r--lib/puppet/provider/mysql_grant/mysql.rb21
1 files changed, 15 insertions, 6 deletions
diff --git a/lib/puppet/provider/mysql_grant/mysql.rb b/lib/puppet/provider/mysql_grant/mysql.rb
index 2c44e0b..6582523 100644
--- a/lib/puppet/provider/mysql_grant/mysql.rb
+++ b/lib/puppet/provider/mysql_grant/mysql.rb
@@ -13,12 +13,21 @@ MYSQL_USER_PRIVS = [ :select_priv, :insert_priv, :update_priv, :delete_priv,
:show_view_priv, :create_routine_priv, :alter_routine_priv,
:create_user_priv
]
-
-MYSQL_DB_PRIVS = [ :select_priv, :insert_priv, :update_priv, :delete_priv,
- :create_priv, :drop_priv, :grant_priv, :references_priv, :index_priv,
- :alter_priv, :create_tmp_table_priv, :lock_tables_priv, :create_view_priv,
- :show_view_priv, :create_routine_priv, :alter_routine_priv, :execute_priv
-]
+mysql_version = Facter.value(:mysql_version)
+if mysql_version =~ /^5.1/ && mysql_version.split('.').last.to_i >= 6
+ MYSQL_DB_PRIVS = [ :select_priv, :insert_priv, :update_priv, :delete_priv,
+ :create_priv, :drop_priv, :grant_priv, :references_priv, :index_priv,
+ :alter_priv, :create_tmp_table_priv, :lock_tables_priv, :create_view_priv,
+ :show_view_priv, :create_routine_priv, :alter_routine_priv, :execute_priv,
+ :event_priv, :trigger_priv
+ ]
+else
+ MYSQL_DB_PRIVS = [ :select_priv, :insert_priv, :update_priv, :delete_priv,
+ :create_priv, :drop_priv, :grant_priv, :references_priv, :index_priv,
+ :alter_priv, :create_tmp_table_priv, :lock_tables_priv, :create_view_priv,
+ :show_view_priv, :create_routine_priv, :alter_routine_priv, :execute_priv,
+ ]
+end
Puppet::Type.type(:mysql_grant).provide(:mysql) do