blob: 4feed673203a11ac5ff5ba34337b655294466016 [file] [log] [blame]
Ales Komarek63c2db52014-09-15 09:26:22 +02001{%- from "isc_dhcp/map.jinja" import server with context %}
2{%- if server.enabled %}
3
4isc_dhcp_packages:
5 pkg.installed:
6 - pkgs: {{ server.pkgs }}
7
8{{ server.config.defaults_config }}:
9 file.managed:
10 - makedirs: True
11 - source: 'salt://isc_dhcp/files/defaults.{{ salt['grains.get']('os_family')) }}'
12 - template: jinja
13 - mode: 644
14 - require:
15 - pkg: isc_dhcp_packages
16 - watch_in:
17 - service: isc_dhcp_service
18
19{%- if server.dhcpd_config is defined %}
20
21{{ server.config.dhcpd.path }}:
22 file.managed:
23 - source: salt://isc_dhcp/files/dhcpd.conf
24 - template: jinja
25 - mode: 644
26 - require:
27 - pkg: isc_dhcp_packages
28 - watch_in:
29 - service: isc_dhcp_service
30
31{%- endif %}
32
33{%- if server.hosts_config is defined %}
34
35{{ server.hosts_config }}:
36 file.managed:
37 - source: salt://isc_dhcp/files/dhcpd.hosts
38 - template: jinja
39 - mode: 644
40 - require:
41 - pkg: isc_dhcp_packages
42 - watch_in:
43 - service: isc_dhcp_service
44
45{%- endif %}
46
47{%- if server.subnets_config is defined %}
48
49{{ server.subnets_config }}:
50 file.managed:
51 - source: salt://isc_dhcp/files/dhcpd.subnets
52 - template: jinja
53 - mode: 644
54 - require:
55 - pkg: isc_dhcp_packages
56 - watch_in:
57 - service: isc_dhcp_service
58
59{%- endif %}
60
61isc_dhcp_service:
62 service.running:
63 - name: {{ server.service }}
64 - enable: true
65
66{%- endif %}