Skip to content
Snippets Groups Projects
Select Git revision
  • master
  • unicaen_authentification
  • 4.x
  • 6.2.0
  • 6.1.0
  • 6.0.0
  • 5.0.1
  • 5.0.0
  • 4.0.2
  • 4.0.1
  • 4.0.0
  • 3.0.0
  • 1.0.4
  • 1.0.3
  • 1.0.2
  • 1.0.1
  • 1.0.0
17 results

AbstractEntityProvider.php

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    config.pp 1.04 KiB
    /*
    == Definition: postfix::config
    
    Uses the "postconf" command to add/alter/remove options in postfix main
    configuation file (/etc/postfix/main.cf).
    
    Parameters:
    - *name*: name of the parameter.
    - *ensure*: present/absent. defaults to present.
    - *value*: value of the parameter.
    
    Requires:
    - Class["postfix"]
    
    Example usage:
    
      node "toto.example.com" {
    
        include postfix
    
        postfix::config {
          "smtp_use_tls"            => "yes";
          "smtp_sasl_auth_enable"   => "yes";
          "smtp_sasl_password_maps" => "hash:/etc/postfix/my_sasl_passwords";
          "relayhost"               => "[mail.example.com]:587";
        }
      }
    
    */
    define postfix::config ($ensure = present, $value) {
    
      Augeas {
        context => "/files/etc/postfix/main.cf",
        notify  => Service["postfix"],
        require => File["/etc/postfix/main.cf"],
      }
    
      case $ensure {
        present: {
          augeas { "set postfix $name to $value":
            changes => "set $name $value",
          }
        }
    
        absent: {
          augeas { "set postfix $name to $value":
            changes => "rm $name",
          }
        }
      }
    }