| |
| {%- load_yaml as master_common %} |
| default: |
| service: salt-master |
| {%- if pillar.salt.get('master', {}).get('source', {}).get('engine', 'pkg') == 'pkg' %} |
| install_state: "pkg: salt_master_packages" |
| source: |
| engine: pkg |
| {%- elif pillar.salt.master.source.engine == 'pip' %} |
| install_state: "pip: salt_master_packages" |
| {%- endif %} |
| |
| {%- if pillar.salt.get('master', {}).get('source', {}).version is defined %} |
| version: {{ pillar.salt.master.source.version }} |
| {%- endif %} |
| accept_policy: preseed |
| bind: {} |
| formula: {} |
| base_environment: dev |
| dir: |
| files: /srv/salt/env |
| pillar_safe_render_error: true |
| pillar: |
| engine: salt |
| max_event_size: 100000000 |
| minion_data_cache: 'localfs' |
| {%- endload %} |
| |
| {%- load_yaml as master_specific %} |
| Arch: |
| pkgs: |
| - salt |
| Debian: |
| pkgs: |
| - salt-master |
| Gentoo: |
| pkgs: |
| - app-admin/salt |
| MacOS: |
| pkgs: |
| - saltstack |
| RedHat: |
| pkgs: |
| - salt-master |
| {%- endload %} |
| |
| {%- if pillar.salt.master is defined %} |
| {%- set raw_master = salt['grains.filter_by'](master_specific, merge=salt['pillar.get']('salt:master')) %} |
| {%- set master = salt['grains.filter_by'](master_common, merge=raw_master) %} |
| {%- endif %} |
| |
| |
| {%- load_yaml as syndic_defaults %} |
| Debian: |
| service: salt-syndic |
| pkgs: |
| - salt-syndic |
| RedHat: |
| service: salt-syndic |
| pkgs: |
| - salt-syndic |
| {%- endload %} |
| |
| {%- set syndic = salt['grains.filter_by'](syndic_defaults, merge=salt['pillar.get']('salt:syndic')) %} |
| |
| |
| {%- load_yaml as minion_common %} |
| default: |
| graph_pkgs: |
| - graphviz |
| graph_states_pkgs: |
| - python-pydot |
| - python-yaml |
| graph_states: False |
| log: |
| level: info |
| service: salt-minion |
| {%- if pillar.salt.get('minion', {}).get('source', {}).get('engine', 'pkg') == 'pkg' %} |
| install_state: "pkg: salt_minion_packages" |
| source: |
| engine: pkg |
| {%- elif pillar.salt.minion.source.engine == 'pip' %} |
| install_state: "pip: salt_minion_packages" |
| {%- endif %} |
| |
| {%- if pillar.salt.get('minion', {}).get('source', {}).version is defined %} |
| version: {{ pillar.salt.minion.source.version }} |
| {%- endif %} |
| max_event_size: 100000000 |
| {%- endload %} |
| |
| {%- load_yaml as minion_specific %} |
| Arch: |
| pkgs: |
| - salt |
| Debian: |
| pkgs: |
| - salt-minion |
| dependency_pkgs: |
| - python-m2crypto |
| - python-psutil |
| - python-yaml |
| - python-msgpack |
| - python-oauth |
| dependency_pkgs_pip: |
| - PyYAML |
| - M2Crypto |
| - psutil |
| - oauth |
| cert_pkgs: |
| - ca-certificates |
| Gentoo: |
| pkgs: |
| - app-admin/salt |
| MacOS: |
| pkgs: |
| - saltstack |
| RedHat: |
| pkgs: |
| - salt-minion |
| dependency_pkgs: |
| - m2crypto |
| - psutils |
| - PyYAML |
| - python-oauth |
| dependency_pkgs_pip: |
| - PyYAML |
| - M2Crypto |
| - psutil |
| - oauth |
| cert_pkgs: |
| - ca-certificates |
| {%- endload %} |
| |
| {%- if pillar.salt.minion is defined %} |
| {%- set raw_minion = salt['grains.filter_by'](minion_specific, merge=salt['pillar.get']('salt:minion')) %} |
| {%- set minion = salt['grains.filter_by'](minion_common, merge=raw_minion) %} |
| |
| {%- if pillar.salt.minion.proxy_minion is defined %} |
| {% set proxy_minion = salt['grains.filter_by']({ |
| 'Debian': { |
| 'napalm_pkgs': ['python-pip', 'libxml2-dev', 'libxslt1-dev', 'zlib1g-dev'], |
| 'napalm_pip_pkgs': ['napalm', 'oauth'] |
| }, |
| 'RedHat': { |
| 'napalm_pkgs': ['libxml2-dev', 'libxslt1-dev', 'zlib1g-dev'] |
| }, |
| }, merge=pillar.salt.minion.get('proxy_minion', {})) %} |
| {%- endif %} |
| |
| {%- if pillar.salt.minion.env_vars is defined %} |
| {% set env_vars = salt['grains.filter_by']({ |
| 'Debian': { |
| 'engine': 'file' |
| }, |
| 'RedHat': { |
| 'engine': 'file' |
| }, |
| }, merge=pillar.salt.minion.get('env_vars', {})) %} |
| {%- endif %} |
| |
| {%- endif %} |
| |
| |
| {%- load_yaml as api_common %} |
| default: |
| pkgs: |
| - salt-api |
| - python-cherrypy3 |
| service: salt-api |
| {%- endload %} |
| |
| {%- set api = salt['grains.filter_by'](api_common, merge=salt['pillar.get']('salt:api')) %} |
| |
| {%- load_yaml as control_common %} |
| default: |
| cloud_pips: |
| - apache-libcloud |
| - netaddr |
| cloud_pkgs: |
| - python-netaddr |
| - python-libcloud |
| virt_pips: |
| - libvirt-python |
| maas_pkgs: |
| - python-maas-client |
| cluster: {} |
| {%- endload %} |
| |
| {%- load_yaml as control_specific %} |
| Debian: |
| virt_pkgs: |
| - libvirt-dev |
| - pkg-config |
| - genisoimage |
| {% if grains.get('oscodename') == 'trusty' %} |
| - libguestfs-tools |
| {% endif %} |
| virt_service: 'libvirt-bin' |
| |
| RedHat: |
| virt_pkgs: |
| - libvirt-dev |
| - pkg-config |
| - genisoimage |
| virt_service: 'libvirtd' |
| {%- endload %} |
| |
| {%- load_yaml as renderer_defaults %} |
| default: {} |
| {%- endload %} |
| {%- set renderer = salt['grains.filter_by'](renderer_defaults, merge=salt['pillar.get']('salt:renderer')) %} |
| |
| {%- if pillar.salt.control is defined %} |
| {%- set raw_control = salt['grains.filter_by'](control_specific, merge=salt['pillar.get']('salt:control')) %} |
| {%- set control = salt['grains.filter_by'](control_common, merge=raw_control) %} |
| {%- endif %} |