|
| 1 | +# -*- coding: utf-8 -*- |
| 2 | +# vim: ft=sls |
| 3 | + |
| 4 | +{#- Get the `tplroot` from `tpldir` #} |
1 | 5 | {%- set tplroot = tpldir.split('/')[0] %} |
2 | | -{%- from tplroot ~ "/map.jinja" import salt_settings with context %} |
3 | | -{%- from tplroot ~ "/libtofs.jinja" import files_switch with context %} |
| 6 | +{%- set sls_windows_excluded = tplroot ~ ".windows-excluded" %} |
4 | 7 |
|
5 | | -{% if salt_settings.pin_version and salt_settings.version and grains.os_family|lower == 'debian' %} |
6 | 8 | include: |
7 | | - - .pin |
8 | | -{% endif %} |
9 | | -
|
10 | | -{%- if grains.kernel != 'Windows' %} |
11 | | -
|
12 | | - {%- if grains.os == 'MacOS' %} |
13 | | -salt-master-macos: |
14 | | - file.managed: |
15 | | - - name: /Library/LaunchDaemons/com.saltstack.salt.master.plist |
16 | | - - source: https://raw.githubusercontent.com/saltstack/salt/master/pkg/osx/scripts/com.saltstack.salt.master.plist |
17 | | - - source_hash: {{ salt_settings.salt_master_macos_plist_hash }} |
18 | | - - retry: {{ salt_settings.retry_options | json }} |
19 | | - - require_in: |
20 | | - - service: salt-master |
21 | | - {%- endif %} |
22 | | -
|
23 | | -salt-master: |
24 | | - {% if salt_settings.install_packages %} |
25 | | - pkg.installed: |
26 | | - - name: {{ salt_settings.salt_master }} |
27 | | - {%- if salt_settings.version is defined %} |
28 | | - - version: {{ salt_settings.version }} |
29 | | - {%- endif %} |
30 | | - {% if salt_settings.master_service_details.state != 'ignore' %} |
31 | | - - require_in: |
32 | | - - service: salt-master |
33 | | - - watch_in: |
34 | | - - service: salt-master |
35 | | - {% endif %} |
36 | | - {% endif %} |
37 | | - file.recurse: |
38 | | - - name: {{ salt_settings.config_path }}/master.d |
39 | | - {%- if salt_settings.master_config_use_TOFS %} |
40 | | - - template: '' |
41 | | - - source: {{ files_switch(['master.d'], |
42 | | - lookup='salt-master' |
43 | | - ) |
44 | | - }} |
45 | | - {%- else %} |
46 | | - - template: jinja |
47 | | - - source: salt://{{ tplroot }}/files/master.d |
48 | | - {%- endif %} |
49 | | - - clean: {{ salt_settings.clean_config_d_dir }} |
50 | | - - exclude_pat: |
51 | | - - _* |
52 | | - - raas.conf |
53 | | - {% if salt_settings.master_service_details.state != 'ignore' %} |
54 | | - service.{{ salt_settings.master_service_details.state }}: |
55 | | - - enable: {{ salt_settings.master_service_details.enabled }} |
56 | | - - name: {{ salt_settings.master_service }} |
57 | | - {%- if grains.os_family in ['FreeBSD', 'Gentoo'] %} |
58 | | - - retry: {{ salt_settings.retry_options | json }} |
59 | | - {%- endif %} |
60 | | - - watch: |
61 | | - {%- if grains.kernel|lower == 'darwin' %} |
62 | | - - file: salt-master-macos |
63 | | - {%- else %} |
64 | | - - file: salt-master |
65 | | - {%- endif %} |
66 | | - - file: remove-old-master-conf-file |
67 | | - - order: last |
68 | | - {% endif %} |
69 | | - {% if salt_settings.master_remove_config %} |
70 | | -remove-default-master-conf-file: |
71 | | - file.absent: |
72 | | - - name: {{ salt_settings.config_path }}/master |
73 | | - - watch_in: |
74 | | - - service: salt-master |
75 | | - {% endif %} |
76 | | -
|
77 | | -# clean up old _defaults.conf file if they have it around |
78 | | -remove-old-master-conf-file: |
79 | | - file.absent: |
80 | | - - name: {{ salt_settings.config_path }}/master.d/_defaults.conf |
81 | | -
|
82 | | -{%- else %} |
83 | | -
|
84 | | -salt-master-install-skip: |
85 | | - test.show_notification: |
86 | | - - text: | |
87 | | - No salt-master state for Windows |
88 | | -
|
89 | | -{%- endif %} |
| 9 | + - {{ sls_windows_excluded }} |
| 10 | + - .package |
| 11 | + - .config |
| 12 | + - .service |
0 commit comments