123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- # == Class icingaweb2::config
- #
- class icingaweb2::config {
- if is_function_available('assert_private') {
- assert_private()
- } else {
- private()
- }
- @user { 'icingaweb2':
- ensure => present,
- home => $::icingaweb2::web_root,
- managehome => true,
- }
- @group { 'icingaweb2':
- ensure => present,
- system => true,
- }
- realize(User['icingaweb2'])
- realize(Group['icingaweb2'])
- File {
- require => Class['::icingaweb2::install'],
- owner => $::icingaweb2::config_user,
- group => $::icingaweb2::config_group,
- mode => $::icingaweb2::config_file_mode,
- }
- file {
- $::icingaweb2::config_dir:
- ensure => directory,
- mode => $::icingaweb2::config_dir_mode,
- recurse => $::icingaweb2::config_dir_recurse;
- "${::icingaweb2::config_dir}/enabledModules":
- ensure => directory,
- mode => $::icingaweb2::config_dir_mode;
- "${::icingaweb2::config_dir}/modules":
- ensure => directory,
- mode => $::icingaweb2::config_dir_mode;
- "${::icingaweb2::config_dir}/authentication.ini":
- ensure => present;
- "${::icingaweb2::config_dir}/config.ini":
- ensure => present;
- "${::icingaweb2::config_dir}/resources.ini":
- ensure => present;
- "${::icingaweb2::config_dir}/roles.ini":
- ensure => present;
- $::icingaweb2::web_root:
- ensure => directory,
- mode => $::icingaweb2::config_dir_mode;
- }
- # Configure authentication.ini settings
- icingaweb2::config::authentication_database { 'Local Database Authenticaiton':
- auth_section => 'icingaweb2',
- auth_resource => "${::icingaweb2::auth_resource}",
- }
- # Configure config.ini settings
- Ini_Setting {
- ensure => present,
- require => File["${::icingaweb2::config_dir}/config.ini"],
- path => "${::icingaweb2::config_dir}/config.ini",
- }
- # Logging Configuration
- ini_setting { 'icingaweb2 config logging method':
- section => 'logging',
- setting => 'log',
- value => "\"${::icingaweb2::log_method}\"",
- }
- ini_setting { 'icingaweb2 config logging level':
- section => 'logging',
- setting => 'level',
- value => "\"${::icingaweb2::log_level}\"",
- }
- ini_setting { 'icingaweb2 config logging application':
- section => 'logging',
- setting => 'application',
- value => "\"${::icingaweb2::log_application}\"",
- }
- # Preferences Configuration
- ini_setting { 'icingaweb2 config preferences store':
- section => 'preferences',
- setting => 'store',
- value => "\"${::icingaweb2::log_store}\"",
- }
- ini_setting { 'icingaweb2 config preferences resource':
- section => 'preferences',
- setting => 'resource',
- value => "\"${::icingaweb2::log_resource}\"",
- }
- # Configure resources.ini
- icingaweb2::config::resource_database { 'icingaweb_db':
- resource_db => "${::icingaweb2::web_db}",
- resource_host => "${::icingaweb2::web_db_host}",
- resource_port => "${::icingaweb2::web_db_port}",
- resource_dbname => "${::icingaweb2::web_db_name}",
- resource_username => "${::icingaweb2::web_db_user}",
- resource_password => "${::icingaweb2::web_db_pass}",
- }
- icingaweb2::config::resource_database { 'icinga_ido':
- resource_db => "${::icingaweb2::ido_db}",
- resource_host => "${::icingaweb2::ido_db_host}",
- resource_port => "${::icingaweb2::ido_db_port}",
- resource_dbname => "${::icingaweb2::ido_db_name}",
- resource_username => "${::icingaweb2::ido_db_user}",
- resource_password => "${::icingaweb2::ido_db_pass}",
- }
- # Configure roles.ini
- icingaweb2::config::roles { 'Admins':
- role_name => "${::icingaweb2::admin_users}",
- role_permissions => "${::icingaweb2::admin_permissions}",
- }
- if $::icingaweb2::manage_apache_vhost {
- ::apache::custom_config { 'icingaweb2':
- content => template("${::icingaweb2::template_apache}"),
- }
- }
- }
|