Skip to content
Snippets Groups Projects
Select Git revision
  • master
  • release/8.0-perimetres
  • php84
  • detached3
  • 6.x
  • 7.x
  • detached2
  • detached
  • php82
  • 5.x
  • cherry-pick-bf3b5271
  • v5.x-test
  • laminas_migration
  • 7.2.13
  • 7.2.12
  • 7.2.11
  • 7.2.10
  • 7.2.9
  • 7.2.8
  • 7.2.7
  • 7.2.6
  • 7.2.5
  • 7.2.4
  • 7.2.3
  • 7.2.2
  • 7.2.1
  • 7.2.0
  • 7.1.3
  • 7.1.2
  • 7.1.1
  • 7.1.0
  • 7.0.1
  • 7.0.0
33 results

001_tables.sql

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    files.pp 1.86 KiB
    class postfix::files (
      $smtp_listen,
      $root_mail_recipient,
      $use_amavisd,
      $use_dovecot_lda,
      $use_schleuder,
      $use_sympa,
      $mail_user,
      $myorigin,
      $inet_interfaces,
      $master_smtp,
      $master_smtps,
      $master_submission,
    ) {
      include postfix::params
    
      file { '/etc/mailname':
        ensure  => present,
        content => "${::fqdn}\n",
        seltype => $postfix::params::seltype,
      }
    
      # Aliases
      file { '/etc/aliases':
        ensure  => present,
        content => "# file managed by puppet\n",
        replace => false,
        seltype => $postfix::params::seltype,
        notify  => Exec['newaliases'],
      }
    
      # Aliases
      exec { 'newaliases':
        command     => '/usr/bin/newaliases',
        refreshonly => true,
        subscribe   => File['/etc/aliases'],
      }
    
      # Config files
      file { '/etc/postfix/master.cf':
        ensure  => present,
        owner   => 'root',
        group   => 'root',
        mode    => '0644',
        content => template(
          $postfix::params::master_os_template,
          "${module_name}/master.cf.common.erb"
        ),
        seltype => $postfix::params::seltype,
      }
    
      # Config files
      file { '/etc/postfix/main.cf':
        ensure  => present,
        owner   => 'root',
        group   => 'root',
        mode    => '0644',
        source  => "puppet:///modules/${module_name}/main.cf",
        replace => false,
        seltype => $postfix::params::seltype,
      }
    
      ::postfix::config {
        'myorigin':         value => $myorigin;
        'alias_maps':       value => 'hash:/etc/aliases';
        'inet_interfaces':  value => $inet_interfaces;
      }
    
      case $::osfamily {
        'RedHat': {
          ::postfix::config {
            'sendmail_path':    value => '/usr/sbin/sendmail.postfix';
            'newaliases_path':  value => '/usr/bin/newaliases.postfix';
            'mailq_path':       value => '/usr/bin/mailq.postfix';
          }
        }
        default: {}
      }
    
      mailalias {'root':
        recipient => $root_mail_recipient,
        notify    => Exec['newaliases'],
      }
    }