apache-formula/apache/register_site.sls
Ryan Peck a83f74c18e Add optional templating to register_site
Add optional templating for the register site aspect of a pillar.

User can specify keys to be included as defaults, otherwise it is
treated as a normal managed file.
2015-03-18 13:36:19 -04:00

58 lines
2.1 KiB
Plaintext

{% if grains['os_family']=="Debian" %}
{% if 'apache' in pillar and 'register-site' in pillar['apache'] %} #BEGIN: ['apache']['register-site']
{% for site in pillar['apache']['register-site'] %}
#BEGIN: Call apache a2ensite
##########################################
{% if 'name' in pillar['apache']['register-site'][site] and 'state' in pillar['apache']['register-site'][site] %}
{% if pillar['apache']['register-site'][site]['state'] == 'enabled' %}
{% set a2modid = "a2ensite " ~ pillar['apache']['register-site'][site]['name'] %}
{% else %}
{% set a2modid = "a2dissite " ~ pillar['apache']['register-site'][site]['name'] %}
{% endif %}
{{ a2modid }}:
cmd.run:
{% if pillar['apache']['register-site'][site]['state'] == 'enabled' %}
- unless: test -f /etc/apache2/sites-enabled/{{ pillar['apache']['register-site'][site]['name'] }}
{% else %}
- onlyif: test -f /etc/apache2/sites-enabled/{{ pillar['apache']['register-site'][site]['name'] }}
{% endif %}
- order: 230
- require:
- pkg: apache
- file: /etc/apache2/sites-available/{{ pillar['apache']['register-site'][site]['name'] }}
{% endif %}
##########################################
#BEGIN: Manage apache site config
##########################################
{% if 'name' in pillar['apache']['register-site'][site] and 'path' in pillar['apache']['register-site'][site] %}
/etc/apache2/sites-available/{{ pillar['apache']['register-site'][site]['name'] }}:
file.managed:
- source: {{ pillar['apache']['register-site'][site]['path'] }}
- order: 225
- user: root
- group: root
- mode: 775
{% if 'template' in pillar['apache']['register-site'][site] and 'defaults' in pillar['apache']['register-site'][site] %}
- template: jinja
- defaults:
{% for key, value in pillar['apache']['register-site'][site]['defaults'].iteritems() %}
{{ key }}: {{ value }}
{% endfor %}
{% endif %}
- watch_in:
- cmd: {{ a2modid }}
- module: apache-reload
{% endif %}
##########################################
{% endfor %}
{% endif %} #END: apache-register-site
{% endif %} #END: grains['os_family'] == debian