Skip to content
Snippets Groups Projects
Select Git revision
  • 6e3ed8fae755a9f06604ca3a18edd1b097207b05
  • master default protected
  • cleanup_fixtures
  • add-openvox
  • freebsd-14
  • remove-legacy-top-scope-syntax
  • rel430
  • tests
  • revert-363-augeas-module-cleanup
  • release-4.1.0
  • puppet8
  • relax-dependencies
  • rel400
  • mode
  • puppet7
  • release-3.1.0
  • freebsd13
  • freebsd11
  • stdlib
  • centos
  • fedora
  • v5.1.0
  • v5.0.0
  • v4.5.0
  • v4.4.0
  • v4.3.0
  • v4.2.1
  • v4.2.0
  • v4.1.0
  • v4.0.0
  • v3.1.0
  • v3.0.0
  • v2.0.0
  • 1.12.0
  • 1.11.0
  • 1.10.0
  • 1.9.0
  • 1.8.0
  • 1.7.0
  • 1.6.0
  • 1.5.0
41 results

virtual.pp

  • user avatar
    Marc Fournier authored
    8a23f6d5
    History
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    virtual.pp 1.05 KiB
    /*
    == Definition: postfix::virtual
    
    Manages content of the /etc/postfix/virtual map.
    
    Parameters:
    - *name*: name of address postfix will lookup. See virtual(8).
    - *destination*: where the emails will be delivered to. See virtual(8).
    - *ensure*: present/absent, defaults to present.
    
    Requires:
    - Class["postfix"]
    - Postfix::Hash["/etc/postfix/virtual"]
    - Postfix::Config["virtual_alias_maps"]
    - common::line (from module common)
    
    Example usage:
    
      node "toto.example.com" {
    
        include postfix
    
        postfix::hash { "/etc/postfix/virtual":
          ensure => present,
        }
        postfix::config { "virtual_alias_maps":
          value => "hash:/etc/postfix/virtual"
        }
        postfix::virtual { "user@example.com":
          ensure      => present,
          destination => "root",
        }
      }
    
    */
    define postfix::virtual ($ensure="present", $destination) {
      line {"${name} ${destination}":
        ensure => $ensure,
        file   => "/etc/postfix/virtual",
        line   => "${name} ${destination}",
        notify => Exec["generate /etc/postfix/virtual.db"],
        require => Package["postfix"],
      }
    }