{%- from "salt/map.jinja" import master with context %} {%- if master.enabled %} {%- if master.pillar.engine == 'salt' %} include: - git.client - salt.master.service {{ master.pillar.source.address }}: git.latest: - target: /srv/salt/pillar - rev: {{ master.pillar.source.branch }} - require: - file: /srv/salt/env - pkg: git_packages /srv/salt/env/{{ master.system.environment }}/top.sls: file.symlink: - target: /srv/salt/pillar/files_top.sls - require: - file: /srv/salt/env/{{ master.system.environment }} {%- elif master.pillar.engine == 'reclass' %} include: - reclass.storage.data /srv/salt/reclass/classes/service: file.directory {%- if master.system is defined %} {%- for formula_name, formula in master.system.get('formula', {}).iteritems() %} /srv/salt/reclass/classes/service/{{ formula_name }}: file.symlink: - target: /srv/salt/env/{{ master.system.environment }}/{{ formula_name }}/metadata/service - require: - git: reclass_data_source - file: /srv/salt/reclass/classes/service {%- endfor %} {%- else %} {%- for environment_name, environment in master.environment.iteritems() %} {%- for formula_name, formula in environment.get('formula', {}).iteritems() %} {%- if environment_name == master.base_environment %} /srv/salt/reclass/classes/service/{{ formula_name }}: file.symlink: {%- if formula.source == 'pkg' %} - target: /usr/share/salt-formulas/reclass/service/{{ formula_name }} {%- else %} - target: /usr/share/salt-formulas/env/_formulas/{{ formula_name }}/metadata/service {%- endif %} - require: - git: reclass_data_source - file: /srv/salt/reclass/classes/service {%- endif %} {%- endfor %} {%- endfor %} {%-endif %} {%- endif %} {%- endif %}