fix(servers_config): remove service depedency

* servers_config should run without service dependency. Service is
  managed in servers.sls.
* dropped nginx_service_reload in favor of extending nginx_service
* wait for all file states (create and delete)
* create dirs for symlinked files
This commit is contained in:
Tobias Jungel 2021-03-13 21:54:07 +01:00 committed by Tobias Jungel
parent 8ea3c82be3
commit 05994e1b17
2 changed files with 14 additions and 21 deletions

View File

@ -5,12 +5,11 @@
{%- set tplroot = tpldir.split('/')[0] %}
{%- from tplroot ~ '/map.jinja' import nginx, sls_block with context %}
{%- from tplroot ~ '/servers_config.sls' import server_states with context %}
{%- from tplroot ~ '/service.sls' import service_function with context %}
{% macro file_requisites(states) %}
{%- for state in states %}
{%- for state in states %}
- file: {{ state }}
{%- endfor -%}
{%- endfor -%}
{% endmacro %}
include:
@ -18,15 +17,12 @@ include:
- nginx.servers_config
{% if server_states|length() > 0 %}
nginx_service_reload:
service.{{ service_function }}:
- name: {{ nginx.lookup.service }}
extend:
nginx_service:
service:
- reload: True
- use:
- service: nginx_service
- listen:
{{ file_requisites(server_states) }}
- require:
{{ file_requisites(server_states) }}
- service: nginx_service
- listen:
{{ file_requisites(server_states) }}
{% endif %}

View File

@ -52,6 +52,7 @@
file.symlink:
{{ sls_block(nginx.servers.symlink_opts) }}
- name: {{ server_path(server, state) }}
- makedirs: True
- target: {{ server_path(server, anti_state) }}
{%- else %}
{%- if deleted == True %}
@ -125,8 +126,6 @@ nginx_server_available_dir:
}}
- makedirs: True
- template: jinja
- require_in:
- service: nginx_service
{% if 'source_path' not in settings.config %}
- context:
config: {{ settings.config|json(sort_keys=False) }}
@ -136,9 +135,9 @@ nginx_server_available_dir:
- unless:
- test -e {{ server_curpath(server) }}
{% endif %}
{% endif %}
{% endif %}
{% do server_states.append(conf_state_id) %}
{% endif %}
{% endif %}
{% if settings.enabled != None %}
{% set status_state_id = 'server_state_' ~ loop.index0 %}
@ -156,9 +155,7 @@ nginx_server_available_dir:
- file: {{ conf_state_id }}
{% endif %}
{% if 'deleted' not in settings or ( 'deleted' in settings and settings.deleted == False ) %}
{% do server_states.append(status_state_id) %}
{% endif %}
{%- endif %} {# enabled != available_dir #}
{% endif %}
{% endfor %}