redo salt setup
This commit is contained in:
@@ -1,12 +1,74 @@
|
||||
include:
|
||||
- salt.configs
|
||||
{% if grains['osarch'].lower().startswith('arm') or grains['os'] == 'Fedora' %}
|
||||
- salt.pypi_install
|
||||
{% elif grains['os_family'] == 'Debian' %}
|
||||
- salt.deb_install
|
||||
{% elif grains['os_family'] == 'RedHat' %}
|
||||
- salt.rhel_install
|
||||
{% else %}
|
||||
{{ raise("Unsupported grains.os") }}
|
||||
{% macro salt_daemon(daemon) %}
|
||||
salt-{{ daemon }}:
|
||||
service.running:
|
||||
- enable: true
|
||||
- listen:
|
||||
- file: /etc/salt/{{ daemon }}
|
||||
- watch:
|
||||
- cmd: update salt
|
||||
- require:
|
||||
- file: /lib/systemd/system/salt-{{ daemon }}.service
|
||||
- module: systemd reload for salt
|
||||
/etc/salt/{{ daemon }}:
|
||||
file.managed:
|
||||
- source: salt://{{ slspath }}/files/{{ daemon }}.jinja
|
||||
- template: jinja
|
||||
- user: root
|
||||
- group: root
|
||||
- mode: 640
|
||||
/lib/systemd/system/salt-{{ daemon }}.service:
|
||||
file.managed:
|
||||
- source: salt://{{ slspath }}/files/salt-{{ daemon }}.service
|
||||
- user: root
|
||||
- group: root
|
||||
- mode: 644
|
||||
{% endmacro %}
|
||||
|
||||
/etc/logrotate.d/salt:
|
||||
file.managed:
|
||||
- source: salt://{{ slspath }}/files/logrotate
|
||||
- user: root
|
||||
- group: root
|
||||
- mode: 644
|
||||
|
||||
{{ salt_daemon("minion" ) }}
|
||||
|
||||
{% if salt.pillar.get('salt:master', false) %}
|
||||
{{ salt_daemon("master" ) }}
|
||||
{% endif %}
|
||||
- salt.modules
|
||||
|
||||
systemd reload for salt:
|
||||
module.run:
|
||||
- name: service.systemctl_reload
|
||||
- onchanges:
|
||||
- file: /lib/systemd/system/salt-minion.service
|
||||
{% if salt.pillar.get('salt:master', false) %}
|
||||
- file: /lib/systemd/system/salt-master.service
|
||||
{% endif %}
|
||||
|
||||
saltutil.sync_all:
|
||||
saltutil.sync_all:
|
||||
- refresh: True
|
||||
|
||||
salt dependencies:
|
||||
pkg.installed:
|
||||
- pkgs:
|
||||
- usbutils # for the lsusb grain
|
||||
- dmidecode
|
||||
|
||||
{% for link in ('salt', 'salt-call', 'salt-minion', 'salt-proxy', 'salt-run', 'salt-key') %}
|
||||
/usr/bin/{{ link }}:
|
||||
file.symlink:
|
||||
- target: /opt/saltstack/salt/bin/{{ link }}
|
||||
{% endfor %}
|
||||
/usr/bin/salt-pip:
|
||||
file.symlink:
|
||||
- target: /opt/saltstack/salt/bin/pip
|
||||
|
||||
update salt:
|
||||
cmd.script:
|
||||
- source: salt://{{ slspath }}/files/update_salt.sh
|
||||
- template: jinja
|
||||
- unless: /usr/bin/salt-pip freeze | grep -q 'salt=={{ salt.pillar.get("salt:version") }}'
|
||||
- require:
|
||||
- file: /usr/bin/salt-pip
|
||||
|
||||
Reference in New Issue
Block a user