Konstantin Demin
a0a4531501
also: - drop "njs" directories (not actually used nor useful) - rework jinja filters: more functions, shorter names, etc.
29 lines
1006 B
Django/Jinja
29 lines
1006 B
Django/Jinja
{#- prologue -#}
|
|
{#- NB: "TZ" is always provided by Angie itself -#}
|
|
{%- set s_vars = ['MALLOC_ARENA_MAX', 'GLIBC_TUNABLES', 'MALLOC_CONF'] -%}
|
|
{%- set c_env = ( j2cfg.core_worker_env or [] ) | any_to_env_dict -%}
|
|
{%- set c_vars = c_env | dict_keys -%}
|
|
{%- set c_vars_preserve = c_env | dict_empty_keys -%}
|
|
{%- set c_vars_override = c_env | dict_non_empty_keys -%}
|
|
{%- set vars_preserve = ( c_vars_preserve + ( s_vars | list_diff(c_vars) )) | sort -%}
|
|
{#- main part -#}
|
|
{%- if vars_preserve %}
|
|
## preserve
|
|
{%- for k in vars_preserve %}
|
|
env {{ k }};
|
|
{%- endfor %}
|
|
{% endif %}
|
|
|
|
{%- if c_vars_override %}
|
|
## WARNING!
|
|
## explicit environment variables are NOT implemented
|
|
## reason: envs are supported only for http_perl but not for http_js/stream_js
|
|
## solution: provide environment variables explicitly
|
|
## and then list them in "core_worker_env" key in config
|
|
{%- for k in c_vars_override %}
|
|
{%- set v = c_env[k] -%}
|
|
# env {{ k }}={{ v.__repr__() }};
|
|
{%- endif %}
|
|
{%- endfor %}
|
|
{% endif %}
|