Newer
Older
class iaas::profile::database (
$percona_master = false,
$root_password = undef,

Riccardo Bucchi
committed
$mysql_users = undef,
$mysql_databases = undef,
$mysql_grants = undef,

Riccardo Bucchi
committed
$mysql_user_defaults = {
ensure => 'present',
require => File['/root/.my.cnf'],

Riccardo Bucchi
committed
}
$mysql_database_defaults = {
ensure => 'present',
charset => 'utf8',
collate => 'utf8_general_ci',
require => File['/root/.my.cnf'],

Riccardo Bucchi
committed
}
$mysql_grant_defaults = {
ensure => 'present',
options => ['GRANT'],
privileges => ['ALL'],
require => File['/root/.my.cnf'],
}
file { '/root/.my.cnf':
ensure => 'present',
content => "[client]
user=root
host=localhost
password=$root_password\n",
mode => '600',
} ->
Giovanni Zizzi
committed
package{'xinetd':
ensure => installed,
} ->
service { 'xinetd':
ensure => 'running'

Riccardo Bucchi
committed
} ->
root_password => $root_password,
mysql_cluster_servers => $mysql_cluster_servers,
mysql_port => $mysql_port,
master => $percona_master,
} ->
exec { 'drop anonymous users on specific host':
command => "mysql -u root -p$root_password -e \"GRANT USAGE ON *.* TO \'\'@\'$::hostname\'; DROP USER \'\'@\'$::hostname\';\"",
path => [ '/bin', '/usr/bin' ],
} ->
exec { 'drop anonymous users on localhost':
command => "mysql -u root -p$root_password -e \"GRANT USAGE ON *.* TO \'\'@\'localhost\'; DROP USER \'\'@\'localhost\';\"",
path => [ '/bin', '/usr/bin' ],
}

Riccardo Bucchi
committed
create_resources(mysql_database, $mysql_databases, $mysql_database_defaults)
create_resources(mysql_user, $mysql_users, $mysql_user_defaults)
create_resources(mysql_grant, $mysql_grants, $mysql_grant_defaults)