class mail::virtual::web::client( $roundcube_des_key = lookup('mail::virtual::web::roundcube_des_key', undef, undef, $mail::virtual::web::params::roundcube_des_key), $roundcube_logo = lookup('mail::virtual::web::roundcube_logo', undef, undef, $mail::virtual::web::params::roundcube_logo), $roundcube_login_info = lookup('mail::virtual::web::roundcube_login_info', undef, undef, $mail::virtual::web::params::roundcube_login_info) ) { include php 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 = lookup('mail::virtual::web::database::password', undef, undef, '') 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'], } }