class mail::virtual::web::client( $roundcube_des_key = hiera('mail::virtual::web::roundcube_des_key', $mail::virtual::web::params::roundcube_des_key), $roundcube_logo = hiera('mail::virtual::web::roundcube_logo', $mail::virtual::web::params::roundcube_logo), $roundcube_login_info = hiera('mail::virtual::web::roundcube_login_info', $mail::virtual::web::params::roundcube_login_info) ) { include php::imap case $roundcube_des_key { '': { fail("You need to define mail::virtual::web::roundcube_des_key config") } } apache::site { "mail": docroot => $::lsbdistcodename ? { 'lenny' => "/usr/share/squirrelmail", default => "/var/lib/roundcube", }, source => true, mpm => false, } $web_db_pass = hiera('mail::virtual::web::database::password', '') database::instance { "mail": password => "${web_db_pass}", } # Old config file { "/etc/roundcube/main.inc.php": ensure => absent, owner => root, group => www-data, mode => 0640, require => Package['roundcube'], } file { "/etc/roundcube/config.inc.php": ensure => $::lsbdistcodename ? { 'lenny' => absent, default => present, }, owner => root, group => www-data, mode => 0640, content => template('mail/virtual/roundcube/config.inc.php.erb'), require => Package['roundcube'], } file { "/var/lib/roundcube/plugins/login_info": ensure => $::lsbdistcodename ? { 'lenny' => absent, default => directory, }, recurse => true, owner => root, group => root, mode => 0644, source => "puppet:///modules/mail/roundcube/plugins/login_info", require => Package['roundcube'], } }