|
-
- {%- 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
- ddns_pkgs:
- - python-dnspython
- Debian:
- pkgs:
- - salt-master
- ddns_pkgs:
- - python-dnspython
- Gentoo:
- pkgs:
- - app-admin/salt
- MacOS:
- pkgs:
- - saltstack
- RedHat:
- pkgs:
- - salt-master
- ddns_pkgs:
- - python-dnspython
- {%- 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 %}
|