28 lines
989 B
Plaintext
28 lines
989 B
Plaintext
|
{#- 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__() }};
|
||
|
{%- endfor %}
|
||
|
{% endif %}
|