class database { include mysql::server # Database definitions define instance($password) { mysql_database { "$name": ensure => present, } mysql_user { "$name@%": password_hash => mysql_password($password), ensure => present, require => Mysql_database["$name"], } mysql_grant { "$name@%/$name": privileges => all, require => Mysql_user["$name@%"], } } }