@@ -290,7 +290,9 @@ def _write_runner(
290290
291291 base_def_env_values = []
292292 base_envs_values = []
293+ generator_envs_values = []
293294 collect_statements = []
295+ generator_collect_statements = []
294296 for key , value in bazel_env .items ():
295297 if value == _NULL_BAZEL_ENV_VALUE :
296298 base_def_env_values .append (
333335
334336 for key , value in generator_bazel_env .items ():
335337 if value == _NULL_BAZEL_ENV_VALUE :
336- collect_statements .append ("""\
338+ generator_collect_statements .append ("""\
337339 if [[ -n "${{{key}:-}}" ]]; then
338- envs +=("{key}=${key}")
340+ generator_envs +=("{key}=${key}")
339341fi
340342""" .format (key = key ))
341343 else :
342- base_envs_values .append (" \" {}={}\" " .format (
344+ generator_envs_values .append (" \" {}={}\" " .format (
343345 key ,
344346 (
345347 value .replace (
@@ -359,10 +361,17 @@ def_env="{{
359361"
360362
361363{collect_statements}
364+ generator_envs=(
365+ "${{envs[@]}}"
366+ {generator_envs_values}
367+ )
368+ {generator_collect_statements}
362369def_env+='}}'""" .format (
363370 base_def_env_values = "\n " .join (base_def_env_values ),
364371 base_envs_values = "\n " .join (base_envs_values ),
365372 collect_statements = "\n " .join (collect_statements ),
373+ generator_collect_statements = "\n " .join (generator_collect_statements ),
374+ generator_envs_values = "\n " .join (generator_envs_values ),
366375 )
367376
368377 generator_package_name = paths .join ("generator" , package , name )
0 commit comments