diff --git a/postfix/init.sls b/postfix/init.sls index aa4f885..5515ef0 100644 --- a/postfix/init.sls +++ b/postfix/init.sls @@ -1,5 +1,15 @@ +{% from "postfix/map.jinja" import postfix with context %} + postfix: - pkg.installed: [] + {% if postfix.packages is defined %} + pkg.installed: + - names: + {% for name in postfix.packages %} + - {{ name }} + {% endfor %} + - watch_in: + - service: postfix + {% endif %} service.running: - enable: True - require: @@ -7,9 +17,6 @@ postfix: - watch: - pkg: postfix -postfix-policyd-spf-python: - pkg.installed: [] - # manage /etc/aliases if data found in pillar {% if 'aliases' in pillar.get('postfix', '') %} /etc/aliases: diff --git a/postfix/map.jinja b/postfix/map.jinja new file mode 100644 index 0000000..616fa02 --- /dev/null +++ b/postfix/map.jinja @@ -0,0 +1,10 @@ +{% set postfix = salt['grains.filter_by']({ + 'Debian': { + 'packages': ['postfix', 'postfix-policyd-spf-python'], + 'service': 'postfix', + }, + 'Gentoo': { + 'packages': ['mail-mta/postfix'], + 'service': 'postfix', + }, +}, merge=salt['pillar.get']('postfix:lookup')) %}