diff --git a/lib/puppet/type/database_user.rb b/lib/puppet/type/database_user.rb index ef98547..23af104 100644 --- a/lib/puppet/type/database_user.rb +++ b/lib/puppet/type/database_user.rb @@ -9,7 +9,7 @@ Puppet::Type.newtype(:database_user) do validate do |value| # https://dev.mysql.com/doc/refman/5.1/en/account-names.html # Regex should problably be more like this: /^[`'"]?[^`'"]*[`'"]?@[`'"]?[\w%\.]+[`'"]?$/ - raise(ArgumentError, "Invalid database user #{value}") unless value =~ /[\w-]*@[\w%\.]+/ + raise(ArgumentError, "Invalid database user #{value}") unless value =~ /[\w-]*@[\w%\.:]+/ username = value.split('@')[0] if username.size > 16 raise ArgumentError, "MySQL usernames are limited to a maximum of 16 characters"