Merge pull request #106 from iggy/cleanup_variable_overwriting
Don't overwrite salt variable
This commit is contained in:
commit
611e78eb4d
@ -1,14 +1,14 @@
|
||||
{% from "salt/map.jinja" import salt with context %}
|
||||
{% from "salt/map.jinja" import salt_settings with context %}
|
||||
|
||||
include:
|
||||
- salt.master
|
||||
|
||||
salt-api:
|
||||
pkg.installed:
|
||||
- name: {{ salt['salt-api'] }}
|
||||
- name: {{ salt_settings.salt_api }}
|
||||
service.running:
|
||||
- name: {{ salt.get('api-service', 'salt-api') }}
|
||||
- name: {{ salt_settings.api_service }}
|
||||
- require:
|
||||
- service: {{ salt.get('api-service', 'salt-master') }}
|
||||
- service: {{ salt_settings.api_service }}
|
||||
- watch:
|
||||
- pkg: salt-master
|
||||
|
@ -1,6 +1,4 @@
|
||||
{% from "salt/map.jinja" import salt with context %}
|
||||
{% do salt.update(pillar.get('salt', {})) -%}
|
||||
{% set cloud = salt.get('cloud', {}) -%}
|
||||
{% from "salt/map.jinja" import salt_settings with context %}
|
||||
|
||||
python-pip:
|
||||
pkg.installed
|
||||
@ -24,7 +22,7 @@ apache-libcloud:
|
||||
|
||||
salt-cloud:
|
||||
pkg.installed:
|
||||
- name: {{ salt['salt-cloud'] }}
|
||||
- name: {{ salt_settings.salt_cloud }}
|
||||
- require:
|
||||
- pip: apache-libcloud
|
||||
- pip: pycrypto
|
||||
@ -32,7 +30,7 @@ salt-cloud:
|
||||
- pip: crypto
|
||||
{% endif %}
|
||||
|
||||
{% for folder in cloud['folders'] %}
|
||||
{% for folder in salt_settings.cloud.folders %}
|
||||
{{ folder }}:
|
||||
file.directory:
|
||||
- name: /etc/salt/{{ folder }}
|
||||
@ -43,7 +41,7 @@ salt-cloud:
|
||||
- makedirs: True
|
||||
{% endfor %}
|
||||
|
||||
{% for cert in pillar.get('salt_cloud_certs', {}) %}
|
||||
{% for cert in salt_settings.salt_cloud_certs %}
|
||||
{% for type in ['pem'] %}
|
||||
cloud-cert-{{ cert }}-pem:
|
||||
file.managed:
|
||||
@ -59,23 +57,19 @@ cloud-cert-{{ cert }}-pem:
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
|
||||
{% for providers in cloud['providers'] %}
|
||||
{% for providers in salt_settings.cloud.providers %}
|
||||
salt-cloud-profiles-{{ providers }}:
|
||||
file.managed:
|
||||
- name: /etc/salt/cloud.profiles.d/{{ providers }}.conf
|
||||
- template: jinja
|
||||
- source: salt://salt/files/cloud.profiles.d/{{ providers }}.conf
|
||||
{% endfor %}
|
||||
|
||||
{% for providers in cloud['providers'] %}
|
||||
salt-cloud-providers-{{ providers }}:
|
||||
file.managed:
|
||||
- name: /etc/salt/cloud.providers.d/{{ providers }}.conf
|
||||
- template: jinja
|
||||
- source: salt://salt/files/cloud.providers.d/{{ providers }}.conf
|
||||
{% endfor %}
|
||||
|
||||
{% for providers in cloud['providers'] %}
|
||||
salt-cloud-maps-{{ providers }}:
|
||||
file.managed:
|
||||
- name: /etc/salt/cloud.maps.d/{{ providers }}.conf
|
||||
|
12
salt/defaults.yaml
Normal file
12
salt/defaults.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
salt:
|
||||
config_path: /etc/salt
|
||||
minion_service: salt-minion
|
||||
master_service: salt-master
|
||||
api_service: salt-api
|
||||
syndic_service: salt-syndic
|
||||
salt_master: salt-master
|
||||
salt_minion: salt-minion
|
||||
salt_syndic: salt-syndic
|
||||
salt_cloud: salt-cloud
|
||||
salt_api: salt-api
|
||||
salt_ssh: salt-ssh
|
135
salt/map.jinja
135
salt/map.jinja
@ -1,65 +1,72 @@
|
||||
{% set salt = salt['grains.filter_by']({
|
||||
'Debian': {'salt-master': 'salt-master',
|
||||
'salt-minion': 'salt-minion',
|
||||
'salt-syndic': 'salt-syndic',
|
||||
'salt-cloud': 'salt-cloud',
|
||||
'salt-api': 'salt-api',
|
||||
'salt-ssh': 'salt-ssh'},
|
||||
'Ubuntu': {'salt-master': 'salt-master',
|
||||
'salt-minion': 'salt-minion',
|
||||
'salt-syndic': 'salt-syndic',
|
||||
'salt-cloud': 'salt-cloud',
|
||||
'salt-api': 'salt-api',
|
||||
'salt-ssh': 'salt-ssh'},
|
||||
'CentOS': {'salt-master': 'salt-master',
|
||||
'salt-minion': 'salt-minion',
|
||||
'salt-syndic': 'salt-syndic',
|
||||
'salt-cloud': 'salt-cloud',
|
||||
'salt-api': 'salt-api',
|
||||
'salt-ssh': 'salt-ssh'},
|
||||
'Amazon': {'salt-master': 'salt-master',
|
||||
'salt-minion': 'salt-minion',
|
||||
'salt-syndic': 'salt-syndic',
|
||||
'salt-cloud': 'salt-cloud',
|
||||
'salt-api': 'salt-api',
|
||||
'salt-ssh': 'salt-ssh'},
|
||||
'Fedora': {'salt-master': 'salt-master',
|
||||
'salt-minion': 'salt-minion',
|
||||
'salt-syndic': 'salt-syndic',
|
||||
'salt-cloud': 'salt-cloud',
|
||||
'salt-api': 'salt-api',
|
||||
'salt-ssh': 'salt-ssh'},
|
||||
'RedHat': {'salt-master': 'salt-master',
|
||||
'salt-minion': 'salt-minion',
|
||||
'salt-syndic': 'salt-syndic',
|
||||
'salt-cloud': 'salt-cloud',
|
||||
'salt-api': 'salt-api',
|
||||
'salt-ssh': 'salt-ssh'},
|
||||
'Gentoo': {'salt-master': 'app-admin/salt',
|
||||
'salt-minion': 'app-admin/salt',
|
||||
'salt-syndic': 'app-admin/salt',
|
||||
'salt-api': 'app-admin/salt',
|
||||
'salt-cloud': 'app-admin/salt'},
|
||||
'Arch': {'salt-master': 'salt-zmq',
|
||||
'salt-minion': 'salt-zmq',
|
||||
'salt-syndic': 'salt-zmq',
|
||||
'salt-cloud': 'salt-zmq',
|
||||
'salt-api': 'salt-zmq',
|
||||
'salt-ssh': 'salt-zmq'},
|
||||
'Suse': {'salt-master': 'salt-master',
|
||||
'salt-minion': 'salt-minion',
|
||||
'salt-syndic': 'salt-syndic',
|
||||
'salt-api': 'salt-api',
|
||||
'salt-cloud': 'salt-cloud',
|
||||
'salt-ssh': 'salt-ssh'},
|
||||
'FreeBSD': {'salt-master': 'py27-salt',
|
||||
'salt-minion': 'py27-salt',
|
||||
'salt-syndic': 'py27-salt',
|
||||
'salt-cloud': 'py27-salt',
|
||||
'salt-api': 'py27-salt',
|
||||
'config-path': '/usr/local/etc/salt',
|
||||
'minion-service': 'salt_minion',
|
||||
'master-service': 'salt_master',
|
||||
'api-service': 'salt_api',
|
||||
'syndic-service': 'salt_syndic'},
|
||||
{% import_yaml "salt/defaults.yaml" as default_settings %}
|
||||
|
||||
{% set distro_map = salt['grains.filter_by']({
|
||||
'Debian': {'salt_master': 'salt-master',
|
||||
'salt_minion': 'salt-minion',
|
||||
'salt_syndic': 'salt-syndic',
|
||||
'salt_cloud': 'salt-cloud',
|
||||
'salt_api': 'salt-api',
|
||||
'salt_ssh': 'salt-ssh'},
|
||||
'Ubuntu': {'salt_master': 'salt-master',
|
||||
'salt_minion': 'salt-minion',
|
||||
'salt_syndic': 'salt-syndic',
|
||||
'salt_cloud': 'salt-cloud',
|
||||
'salt_api': 'salt-api',
|
||||
'salt_ssh': 'salt-ssh'},
|
||||
'CentOS': {'salt_master': 'salt-master',
|
||||
'salt_minion': 'salt-minion',
|
||||
'salt_syndic': 'salt-syndic',
|
||||
'salt_cloud': 'salt-cloud',
|
||||
'salt_api': 'salt-api',
|
||||
'salt_ssh': 'salt-ssh'},
|
||||
'Amazon': {'salt_master': 'salt-master',
|
||||
'salt_minion': 'salt-minion',
|
||||
'salt_syndic': 'salt-syndic',
|
||||
'salt_cloud': 'salt-cloud',
|
||||
'salt_api': 'salt-api',
|
||||
'salt_ssh': 'salt-ssh'},
|
||||
'Fedora': {'salt_master': 'salt-master',
|
||||
'salt_minion': 'salt-minion',
|
||||
'salt_syndic': 'salt-syndic',
|
||||
'salt_cloud': 'salt-cloud',
|
||||
'salt_api': 'salt-api',
|
||||
'salt_ssh': 'salt-ssh'},
|
||||
'RedHat': {'salt_master': 'salt-master',
|
||||
'salt_minion': 'salt-minion',
|
||||
'salt_syndic': 'salt-syndic',
|
||||
'salt_cloud': 'salt-cloud',
|
||||
'salt_api': 'salt-api',
|
||||
'salt_ssh': 'salt-ssh'},
|
||||
'Gentoo': {'salt_master': 'app-admin/salt',
|
||||
'salt_minion': 'app-admin/salt',
|
||||
'salt_syndic': 'app-admin/salt',
|
||||
'salt_api': 'app-admin/salt',
|
||||
'salt_cloud': 'app-admin/salt'},
|
||||
'Arch': {'salt_master': 'salt-zmq',
|
||||
'salt_minion': 'salt-zmq',
|
||||
'salt_syndic': 'salt-zmq',
|
||||
'salt_cloud': 'salt-zmq',
|
||||
'salt_api': 'salt-zmq',
|
||||
'salt_ssh': 'salt-zmq'},
|
||||
'Suse': {'salt_master': 'salt-master',
|
||||
'salt_minion': 'salt-minion',
|
||||
'salt_syndic': 'salt-syndic',
|
||||
'salt_api': 'salt-api',
|
||||
'salt_cloud': 'salt-cloud',
|
||||
'salt_ssh': 'salt-ssh'},
|
||||
'FreeBSD': {'salt_master': 'py27-salt',
|
||||
'salt_minion': 'py27-salt',
|
||||
'salt_syndic': 'py27-salt',
|
||||
'salt_cloud': 'py27-salt',
|
||||
'salt_api': 'py27-salt',
|
||||
'config_path': '/usr/local/etc/salt',
|
||||
'minion_service': 'salt_minion',
|
||||
'master_service': 'salt_master',
|
||||
'api_service': 'salt_api',
|
||||
'syndic_service': 'salt_syndic'},
|
||||
}, merge=salt['pillar.get']('salt:lookup')) %}
|
||||
|
||||
{% do default_settings.salt.update(distro_map) %}
|
||||
|
||||
{% set salt_settings = salt['pillar.get']('salt', default=default_settings.salt,
|
||||
merge=True) %}
|
||||
|
@ -1,16 +1,16 @@
|
||||
{% from "salt/map.jinja" import salt with context %}
|
||||
{% from "salt/map.jinja" import salt_settings with context %}
|
||||
|
||||
salt-master:
|
||||
pkg.installed:
|
||||
- name: {{ salt['salt-master'] }}
|
||||
- name: {{ salt_settings.salt_master }}
|
||||
file.recurse:
|
||||
- name: {{ salt.get('config-path', '/etc/salt') }}/master.d
|
||||
- name: {{ salt_settings.config_path }}/master.d
|
||||
- template: jinja
|
||||
- source: salt://salt/files/master.d
|
||||
- clean: True
|
||||
service.running:
|
||||
- enable: True
|
||||
- name: {{ salt.get('master-service', 'salt-master') }}
|
||||
- name: {{ salt_settings.master_service }}
|
||||
- watch:
|
||||
- pkg: salt-master
|
||||
- file: salt-master
|
||||
|
@ -1,10 +1,10 @@
|
||||
{% from "salt/map.jinja" import salt with context %}
|
||||
{% from "salt/map.jinja" import salt_settings with context %}
|
||||
|
||||
salt-minion:
|
||||
pkg.installed:
|
||||
- name: {{ salt['salt-minion'] }}
|
||||
- name: {{ salt_settings.salt_minion }}
|
||||
file.recurse:
|
||||
- name: {{ salt.get('config-path', '/etc/salt') }}/minion.d
|
||||
- name: {{ salt_settings.config_path }}/minion.d
|
||||
- template: jinja
|
||||
- source: salt://salt/files/minion.d
|
||||
- clean: True
|
||||
@ -12,7 +12,7 @@ salt-minion:
|
||||
standalone: False
|
||||
service.running:
|
||||
- enable: True
|
||||
- name: {{ salt.get('minion-service', 'salt-minion') }}
|
||||
- name: {{ salt_settings.minion_service }}
|
||||
- watch:
|
||||
- pkg: salt-minion
|
||||
- file: salt-minion
|
||||
|
@ -1,12 +1,12 @@
|
||||
{% from "salt/map.jinja" import salt with context %}
|
||||
{% from "salt/map.jinja" import salt_settings with context %}
|
||||
|
||||
ensure salt-ssh is installed:
|
||||
pkg.installed:
|
||||
- name: {{ salt['salt-ssh'] }}
|
||||
- name: {{ salt_settings.salt_ssh }}
|
||||
|
||||
ensure roster config:
|
||||
file.managed:
|
||||
- name: {{ salt.get('config_path', '/etc/salt') }}/roster
|
||||
- name: {{ salt_settings.config_path }}/roster
|
||||
- source: salt://salt/files/roster.jinja
|
||||
- template: jinja
|
||||
- require:
|
||||
|
@ -1,10 +1,10 @@
|
||||
{% from "salt/map.jinja" import salt with context %}
|
||||
{% from "salt/map.jinja" import salt_settings with context %}
|
||||
|
||||
salt-minion:
|
||||
pkg.installed:
|
||||
- name: {{ salt['salt-minion'] }}
|
||||
- name: {{ salt_settings.salt_minion }}
|
||||
file.recurse:
|
||||
- name: {{ salt.get('config-path', '/etc/salt') }}/minion.d
|
||||
- name: {{ salt_settings.config_path }}/minion.d
|
||||
- template: jinja
|
||||
- source: salt://salt/files/minion.d
|
||||
- clean: True
|
||||
@ -12,7 +12,7 @@ salt-minion:
|
||||
standalone: True
|
||||
service.dead:
|
||||
- enable: False
|
||||
- name: {{ salt.get('minion-service', 'salt-minion') }}
|
||||
- name: {{ salt_settings.minion_service }}
|
||||
- require:
|
||||
- pkg: salt-minion
|
||||
- file: salt-minion
|
||||
|
@ -1,15 +1,15 @@
|
||||
{% from "salt/map.jinja" import salt with context %}
|
||||
{% from "salt/map.jinja" import salt_settings with context %}
|
||||
|
||||
include:
|
||||
- salt.master
|
||||
|
||||
salt-syndic:
|
||||
pkg.installed:
|
||||
- name: {{ salt['salt-syndic'] }}
|
||||
- name: {{ salt_settings.salt_syndic }}
|
||||
service:
|
||||
- running
|
||||
- require:
|
||||
- service: {{ salt.get('syndic-service', 'salt-master') }}
|
||||
- service: {{ salt_settings.syndic_service }}
|
||||
- watch:
|
||||
- pkg: salt-master
|
||||
- file: {{ salt.get('config-path', '/etc/salt') }}/master
|
||||
- file: {{ salt_settings.config_path }}/master
|
||||
|
Loading…
Reference in New Issue
Block a user