dev/provisioning/modules/mysql/manifests/server.pp
changeset 28 b0b56e0f8c7f
equal deleted inserted replaced
27:a2342f26c9de 28:b0b56e0f8c7f
       
     1 # Class: mysql::server:  See README.md for documentation.
       
     2 class mysql::server (
       
     3   $config_file             = $mysql::params::config_file,
       
     4   $includedir              = $mysql::params::includedir,
       
     5   $install_options         = undef,
       
     6   $install_secret_file     = $mysql::params::install_secret_file,
       
     7   $manage_config_file      = $mysql::params::manage_config_file,
       
     8   $override_options        = {},
       
     9   $package_ensure          = $mysql::params::server_package_ensure,
       
    10   $package_manage          = $mysql::params::server_package_manage,
       
    11   $package_name            = $mysql::params::server_package_name,
       
    12   $purge_conf_dir          = $mysql::params::purge_conf_dir,
       
    13   $remove_default_accounts = false,
       
    14   $restart                 = $mysql::params::restart,
       
    15   $root_group              = $mysql::params::root_group,
       
    16   $mysql_group             = $mysql::params::mysql_group,
       
    17   $root_password           = $mysql::params::root_password,
       
    18   $service_enabled         = $mysql::params::server_service_enabled,
       
    19   $service_manage          = $mysql::params::server_service_manage,
       
    20   $service_name            = $mysql::params::server_service_name,
       
    21   $service_provider        = $mysql::params::server_service_provider,
       
    22   $create_root_user        = $mysql::params::create_root_user,
       
    23   $create_root_my_cnf      = $mysql::params::create_root_my_cnf,
       
    24   $users                   = {},
       
    25   $grants                  = {},
       
    26   $databases               = {},
       
    27 
       
    28   # Deprecated parameters
       
    29   $enabled                 = undef,
       
    30   $manage_service          = undef,
       
    31   $old_root_password       = undef
       
    32 ) inherits mysql::params {
       
    33 
       
    34   # Deprecated parameters.
       
    35   if $enabled {
       
    36     crit('This parameter has been renamed to service_enabled.')
       
    37     $real_service_enabled = $enabled
       
    38   } else {
       
    39     $real_service_enabled = $service_enabled
       
    40   }
       
    41   if $manage_service {
       
    42     crit('This parameter has been renamed to service_manage.')
       
    43     $real_service_manage = $manage_service
       
    44   } else {
       
    45     $real_service_manage = $service_manage
       
    46   }
       
    47   if $old_root_password {
       
    48     warning('old_root_password is no longer used and will be removed in a future release')
       
    49   }
       
    50 
       
    51   # Create a merged together set of options.  Rightmost hashes win over left.
       
    52   $options = mysql_deepmerge($mysql::params::default_options, $override_options)
       
    53 
       
    54   Class['mysql::server::root_password'] -> Mysql::Db <| |>
       
    55 
       
    56   include '::mysql::server::install'
       
    57   include '::mysql::server::config'
       
    58   include '::mysql::server::installdb'
       
    59   include '::mysql::server::service'
       
    60   include '::mysql::server::root_password'
       
    61   include '::mysql::server::providers'
       
    62 
       
    63   if $remove_default_accounts {
       
    64     class { '::mysql::server::account_security':
       
    65       require => Anchor['mysql::server::end'],
       
    66     }
       
    67   }
       
    68 
       
    69   anchor { 'mysql::server::start': }
       
    70   anchor { 'mysql::server::end': }
       
    71 
       
    72   if $restart {
       
    73     Class['mysql::server::config'] ~>
       
    74     Class['mysql::server::service']
       
    75   }
       
    76 
       
    77   Anchor['mysql::server::start'] ->
       
    78   Class['mysql::server::install'] ->
       
    79   Class['mysql::server::config'] ->
       
    80   Class['mysql::server::installdb'] ->
       
    81   Class['mysql::server::service'] ->
       
    82   Class['mysql::server::root_password'] ->
       
    83   Class['mysql::server::providers'] ->
       
    84   Anchor['mysql::server::end']
       
    85 
       
    86 
       
    87 }