feat(context): pass nginx to snippets and server_config contexts

This commit is contained in:
sticky-note 2020-11-09 10:30:45 +11:00
parent 33d9ab74e1
commit 8641f0d79a
2 changed files with 11 additions and 0 deletions

View File

@ -8,6 +8,10 @@
{%- from tplroot ~ '/libtofs.jinja' import files_switch with context %} {%- from tplroot ~ '/libtofs.jinja' import files_switch with context %}
{% set server_states = [] %} {% set server_states = [] %}
{#- _nginx is a lightened copy of nginx map intended to passed in templates #}
{%- set _nginx = nginx.copy() %}
{%- do _nginx.pop('snippets') %}
{%- do _nginx.pop('servers') %}
# Simple path concatenation. # Simple path concatenation.
# Needs work to make this function on windows. # Needs work to make this function on windows.
@ -126,6 +130,7 @@ nginx_server_available_dir:
{% if 'source_path' not in settings.config %} {% if 'source_path' not in settings.config %}
- context: - context:
config: {{ settings.config|json(sort_keys=False) }} config: {{ settings.config|json(sort_keys=False) }}
nginx: {{ _nginx|json() }}
{% endif %} {% endif %}
{% if 'overwrite' in settings and settings.overwrite == False %} {% if 'overwrite' in settings and settings.overwrite == False %}
- unless: - unless:

View File

@ -6,6 +6,11 @@
{%- from tplroot ~ '/map.jinja' import nginx, sls_block with context %} {%- from tplroot ~ '/map.jinja' import nginx, sls_block with context %}
{%- from tplroot ~ '/libtofs.jinja' import files_switch with context %} {%- from tplroot ~ '/libtofs.jinja' import files_switch with context %}
{#- _nginx is a lightened copy of nginx map intended to passed in templates #}
{%- set _nginx = nginx.copy() %}
{%- do _nginx.pop('snippets') %}
{%- do _nginx.pop('servers') %}
nginx_snippets_dir: nginx_snippets_dir:
file.directory: file.directory:
{{ sls_block(nginx.servers.dir_opts) }} {{ sls_block(nginx.servers.dir_opts) }}
@ -22,4 +27,5 @@ nginx_snippet_{{ snippet }}:
- template: jinja - template: jinja
- context: - context:
config: {{ config|json() }} config: {{ config|json() }}
nginx: {{ _nginx|json() }}
{% endfor %} {% endfor %}