Ver código fonte

Merge pull request #22 from tcpcloud/syndic

Refactored salt-syndic features
tags/mcp0.5
mceloud 8 anos atrás
pai
commit
dc886f9163
5 arquivos alterados com 63 adições e 17 exclusões
  1. +20
    -8
      README.rst
  2. +11
    -0
      salt/files/_syndic.conf
  3. +1
    -9
      salt/files/master.conf
  4. +12
    -0
      salt/map.jinja
  5. +19
    -0
      salt/syndic.sls

+ 20
- 8
README.rst Ver arquivo

@@ -102,26 +102,38 @@ Salt master with specified formula refs (for example for Gerrit review)
address: https://git.openstack.org/openstack/salt-formula-keystone
revision: refs/changes/56/123456/1

Salt master syndicate master of masters
Salt syndic: Master of masters

.. code-block:: yaml

salt:
master:
enabled: true
syndicate:
mode: master
order_masters: True

Salt master syndicate (client) master
Salt syndic: Lower master

.. code-block:: yaml

salt:
master:
syndic:
enabled: true
master:
host: master-of-master-host
timeout: 5

Salt syndic: Lower master with multi-master of masters

.. code-block:: yaml

salt:
syndic:
enabled: true
syndicate:
mode: client
host: master-master
masters:
- host: master-of-master-host1
- host: master-of-master-host2
timeout: 5


Salt master with custom handlers


+ 11
- 0
salt/files/_syndic.conf Ver arquivo

@@ -0,0 +1,11 @@
{%- from "salt/map.jinja" import syndic with context %}

{%- if syndic.masters is defined %}
syndic_master:
{%- for master in syndic.masters %}
- {{ master.host }}
{%- endfor %}
{%- else %}
syndic_master: {{ syndic.master.host }}
{%- endif %}
syndic_wait: {{ syndic.get('timeout', '5') }}

+ 1
- 9
salt/files/master.conf Ver arquivo

@@ -81,14 +81,6 @@ logstash_zmq_handler:

{%- endfor %}

{%- if master.syndic is defined %}

{% if master.syndic.mode == 'master' %}
{%- if master.order_masters %}
order_masters: True
{%- endif %}

{% if master.syndic.mode == 'client' %}
syndic_master: {{ master.syndic.host }}
{%- endif %}

{%- endif %}

+ 12
- 0
salt/map.jinja Ver arquivo

@@ -47,6 +47,18 @@ RedHat:
{%- endif %}


{%- load_yaml as syndic_defaults %}
Debian:
pkgs:
- salt-syndic
RedHat:
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:

+ 19
- 0
salt/syndic.sls Ver arquivo

@@ -0,0 +1,19 @@
{%- from "salt/map.jinja" import syndic with context %}
{%- if syndic.enabled %}

include:
- salt.master.service

salt_syndic_packages:
pkg.installed:
- names: {{ syndic.pkgs }}

/etc/salt/master.d/_syndic.conf:
file.managed:
- source: salt://salt/files/_syndic.conf
- user: root
- template: jinja
- watch_in:
- service: salt_master_service

{%- endif %}

Carregando…
Cancelar
Salvar