General cleanup.
This commit is contained in:
parent
80b46aca2f
commit
1ee609a616
@ -6,67 +6,10 @@
|
|||||||
# Any changes will be overwritten.
|
# Any changes will be overwritten.
|
||||||
{{ '\n' }}
|
{{ '\n' }}
|
||||||
|
|
||||||
{% import 'keepalived/templates/config.jinja' as config %}
|
{%- import 'keepalived/templates/config.jinja' as config -%}
|
||||||
{%- import_yaml 'keepalived/defaults.yaml' as keepalived_defaults -%}
|
{%- import_yaml 'keepalived/defaults.yaml' as keepalived_defaults -%}
|
||||||
{%- set keepalived_final_values = salt.pillar.get(
|
{%- set keepalived_final_values = salt.pillar.get(
|
||||||
'keepalived',
|
'keepalived',
|
||||||
default=keepalived_defaults,
|
default=keepalived_defaults,
|
||||||
merge=True) -%}
|
merge=True) -%}
|
||||||
{{ config.keepalived_config(keepalived_final_values) }}
|
{{ config.keepalived_config(keepalived_final_values) }}
|
||||||
|
|
||||||
{#
|
|
||||||
Macro Explanation:
|
|
||||||
|
|
||||||
This is a recursive macro that takes the type of entry and determines how
|
|
||||||
it is suppose to appear in the configuration file. Strings and numbers
|
|
||||||
are just written out. Lists and hashes are placed inside if couple of
|
|
||||||
parenthesis. It also takes into account the special groupings like
|
|
||||||
vrrp_instance and virtual_server. Any additional data from a list or a
|
|
||||||
hash is then processed by calling the macro again.
|
|
||||||
|
|
||||||
Forced carriage returns and use of jinja's indent are only there to make
|
|
||||||
the final file more human readable. They serve no other function.
|
|
||||||
#}
|
|
||||||
{#
|
|
||||||
{%- import_yaml 'keepalived/defaults.yaml' as keepalived_defaults -%}
|
|
||||||
{%- set keepalived_final_values = salt.pillar.get(
|
|
||||||
'keepalived',
|
|
||||||
default=keepalived_defaults,
|
|
||||||
merge=True) -%}
|
|
||||||
|
|
||||||
{%- set groupings = ['vrrp_script', 'vrrp_sync_group', 'vrrp_instance',
|
|
||||||
'virtual_server_group', 'virtual_server', 'real_server'] -%}
|
|
||||||
{%- macro config_entries(data, indents, carryover='') -%}
|
|
||||||
{%- if data is string or data is number -%}
|
|
||||||
{{- data|string|indent(indents, True) }}{{ '\n' -}}
|
|
||||||
{%- elif data is none -%}
|
|
||||||
{{- '\n' -}}
|
|
||||||
{%- else -%}
|
|
||||||
{%- if indents != 0 and not carryover -%}
|
|
||||||
{{- " {\n" -}}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- if data is mapping -%}
|
|
||||||
{%- for entry in data|dictsort -%}
|
|
||||||
{%- if entry[0] in groupings -%}
|
|
||||||
{{- config_entries(entry[1], indents, carryover=entry[0]) -}}
|
|
||||||
{%- else -%}
|
|
||||||
{%- if carryover -%}
|
|
||||||
{{- carryover|indent(indents, True) }}{{ ' ' }}
|
|
||||||
{%- endif -%}
|
|
||||||
{{- entry[0]|indent(indents, True) }}
|
|
||||||
{{- config_entries(entry[1], indents + 2) -}}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endfor -%}
|
|
||||||
{%- else -%}
|
|
||||||
{%- for entry in data -%}
|
|
||||||
{{- config_entries(entry, indents) -}}
|
|
||||||
{%- endfor -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- if indents != 0 and not carryover -%}
|
|
||||||
{{- '}'|indent(indents - 2, True) }}{{ '\n' }}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endmacro -%}
|
|
||||||
|
|
||||||
{{ config_entries(keepalived_final_values, 0) }}
|
|
||||||
#}
|
|
||||||
|
@ -1,6 +1,15 @@
|
|||||||
#
|
#
|
||||||
# Example pillar configuration
|
# Example pillar configuration
|
||||||
#
|
#
|
||||||
|
# Boolean entries must be placed stored as strings, otherwise it will show
|
||||||
|
# up as 1 or 0 in the config file.
|
||||||
|
#
|
||||||
|
# Anything that needs to be in quotes in the configuration file needs to
|
||||||
|
# be escaped in the yaml file. Otherwise the quotes will not appear in
|
||||||
|
# the config file.
|
||||||
|
#
|
||||||
|
# When order is important, put the entries into a yaml array or list. This
|
||||||
|
# could be used to place vrrp_script before vrrp_instance entries.
|
||||||
|
|
||||||
# The following would generate the example file in RedHat based systems.
|
# The following would generate the example file in RedHat based systems.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user