Puppet Class: dovecot::install

Inherits:
dovecot
Defined in:
manifests/install.pp

Summary

This class handles packages.

Overview



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'manifests/install.pp', line 3

class dovecot::install inherits dovecot {
  if ($dovecot::package_manage) {
    package { $dovecot::package_name:
      ensure => $dovecot::package_ensure,
    }

    # get a list of package names for all requested plugins
    $_list = $dovecot::plugins.map |$_plugin| {
      $dovecot::plugin.dig($_plugin, 'package_name')
    }

    # remove duplicates from the list
    $packages = unique($_list).filter|$value| { $value != undef }

    # install plugin packages
    $packages.each |$_package| {
      package { $_package:
        ensure => $dovecot::package_ensure,
      }
    }
  }
}