37
37
{%- endmacro % }
38
38
39
39
# Creates the sls block that manages symlinking / renaming servers
40
- {% macro manage_status(server, state) -% }
40
+ {% macro manage_status(server, state, deleted ) -% }
41
41
{%- set anti_state = {True :False , False :True }.get(state) -% }
42
42
{% if state == True % }
43
43
{%- if nginx.lookup.server_use_symlink % }
46
46
- name: {{ server_path(server, state) }}
47
47
- target: {{ server_path(server, anti_state) }}
48
48
{%- else % }
49
+ {%- if deleted == True % }
50
+ file .absent:
51
+ - name: {{ server_path(server, state) }}
52
+ {%- else % }
49
53
file .rename:
50
54
{{ sls_block(nginx.servers.rename_opts) }}
51
55
- name: {{ server_path(server, state) }}
52
56
- source: {{ server_path(server, anti_state) }}
57
+ {%- endif % }
53
58
{%- endif % }
54
59
{%- elif state == False % }
55
60
{%- if nginx.lookup.server_use_symlink % }
56
61
file .absent:
57
62
- name: {{ server_path(server, anti_state) }}
58
63
{%- else % }
64
+ {%- if deleted == True % }
65
+ file .absent:
66
+ - name: {{ server_path(server, state) }}
67
+ {%- else % }
59
68
file .rename:
60
69
{{ sls_block(nginx.servers.rename_opts) }}
61
70
- name: {{ server_path(server, state) }}
62
71
- source: {{ server_path(server, anti_state) }}
72
+ {%- endif % }
63
73
{%- endif -% }
64
74
{%- endif -% }
65
75
{%- endmacro % }
@@ -84,13 +94,18 @@ nginx_server_available_dir:
84
94
85
95
# Managed enabled/disabled state for servers
86
96
{% for server, settings in nginx.servers.managed.items() % }
87
- {% if settings.config != None % }
97
+ {% set conf_state_id = ' server_conf_' ~ loop.index0 % }
98
+ {% if ' deleted' in settings and settings.deleted % }
99
+ {{ conf_state_id }}:
100
+ file .absent:
101
+ - name: {{ server_curpath(server) }}
102
+ {% else % }
103
+ {% if settings.config != None and settings.enabled == True % }
88
104
{% if ' source_path' in settings.config % }
89
105
{% set source_path = settings.config.source_path % }
90
106
{% else % }
91
107
{% set source_path = ' salt://nginx/ng/files/server.conf' % }
92
108
{% endif % }
93
- {% set conf_state_id = ' server_conf_' ~ loop.index0 % }
94
109
{{ conf_state_id }}:
95
110
file .managed:
96
111
{{ sls_block(nginx.servers.managed_opts) }}
@@ -107,16 +122,23 @@ nginx_server_available_dir:
107
122
{% endif % }
108
123
{% do server_states.append(conf_state_id) % }
109
124
{% endif % }
125
+ {% endif % }
110
126
111
127
{% if settings.enabled != None % }
112
128
{% set status_state_id = ' server_state_' ~ loop.index0 % }
113
129
{{ status_state_id }}:
114
- {{ manage_status(server, settings.enabled) }}
115
- {% if settings.config != None % }
130
+ {% if ' deleted' in settings and settings.deleted % }
131
+ {{ manage_status(server, False , True ) }}
132
+ {% else % }
133
+ {{ manage_status(server, settings.enabled, False ) }}
134
+ {% endif % }
135
+ {% if settings.config != None and settings.enabled == True % }
116
136
- require:
117
137
- file : {{ conf_state_id }}
118
138
{% endif % }
119
139
140
+ {% if ' deleted' not in settings or ( ' deleted' in settings and settings.deleted == False ) % }
120
141
{% do server_states.append(status_state_id) % }
121
142
{% endif % }
143
+ {% endif % }
122
144
{% endfor % }
0 commit comments