refactoring code to use map.jinja for config values

at the moment only Debian managed, FreeBSD exception still in state
This commit is contained in:
Eric Veiras Galisson 2017-10-31 14:09:52 +01:00
parent 0e697c67c9
commit 2b83ca0860
4 changed files with 25 additions and 7 deletions

View file

@ -1,13 +1,16 @@
{% from "haproxy/map.jinja" import haproxy with context %}
{% set config_file = salt['pillar.get']('haproxy:config_file_path', haproxy.config_file) %}
haproxy.config: haproxy.config:
file.managed: file.managed:
- name: {{ salt['pillar.get']('haproxy:config_file_path', '/etc/haproxy/haproxy.cfg') }} - name: {{ config_file }}
- source: salt://haproxy/templates/haproxy.jinja - source: {{ haproxy.config_file_source }}
- template: jinja - template: jinja
- user: root - user: {{ haproxy.user }}
{% if salt['grains.get']('os_family') == 'FreeBSD' %} {% if salt['grains.get']('os_family') == 'FreeBSD' %}
- group: wheel - group: wheel
{% else %} {% else %}
- group: root - group: {{ haproxy.group }}
{% endif %} {% endif %}
- mode: 644 - mode: 644
- require_in: - require_in:
@ -16,5 +19,5 @@ haproxy.config:
- service: haproxy.service - service: haproxy.service
{% if salt['pillar.get']('haproxy:overwrite', default=True) == False %} {% if salt['pillar.get']('haproxy:overwrite', default=True) == False %}
- unless: - unless:
- test -e {{ salt['pillar.get']('haproxy:config_file_path', '/etc/haproxy/haproxy.cfg') }} - test -e {{ config_file }}
{% endif %} {% endif %}

View file

@ -1,6 +1,8 @@
{% from "haproxy/map.jinja" import haproxy with context %}
haproxy.install: haproxy.install:
pkg.installed: pkg.installed:
- name: haproxy - name: {{ haproxy.package }}
{% if salt['pillar.get']('haproxy:require') %} {% if salt['pillar.get']('haproxy:require') %}
- require: - require:
{% for item in salt['pillar.get']('haproxy:require') %} {% for item in salt['pillar.get']('haproxy:require') %}

11
haproxy/map.jinja Normal file
View file

@ -0,0 +1,11 @@
{% set haproxy = salt['grains.filter_by']({
'Debian': {
'package': 'haproxy',
'config_file': '/etc/haproxy/haproxy.cfg',
'config_file_source': 'salt://haproxy/templates/haproxy.jinja',
'user': 'root',
'group': 'root',
'service': 'haproxy',
},
}, merge=salt['pillar.get']('haproxy:lookup')) %}

View file

@ -1,7 +1,9 @@
{% from "haproxy/map.jinja" import haproxy with context %}
haproxy.service: haproxy.service:
{% if salt['pillar.get']('haproxy:enable', True) %} {% if salt['pillar.get']('haproxy:enable', True) %}
service.running: service.running:
- name: haproxy - name: {{ haproxy.service }}
- enable: True - enable: True
- reload: True - reload: True
- require: - require: