Blob Blame History Raw
{% set workers = salt['pillar.get']('profile:matrix:workers') %}

{% for app, types in workers.items() %}
{% for type in types %}

upstream {{ app }}_{{ loop.index }} {
    {{ type.get('upstream_balancing') }}
    {%- for worker, port in type.get('workers').items() %}
    server 127.0.0.1:{{ port }}; # {{ worker }}
    {%- endfor %}
}

{%- for uri in type.get('rest') %}
location ~ {{ uri }} {
    proxy_pass http://{{ app }}_{{ loop.index }}$request_uri;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header Host $host;
}
{% endfor %}

{% endfor %}
{% endfor %}