Hi all,

while revisiting pending issues, I've come across this one, about
the impossibility for an environment variable to produce multiple
words in the configuration:

    https://github.com/haproxy/haproxy/issues/165

It can be trivially addressed by adding support for ${VAR[*]} to the
config language. This addition is relatively simple to do, roughly
speaking, simply add the code in parse_line() in the "if" block dealing
with "$", detect the presence of '[', terminate the variable name here,
raise a flag, then once the variable is resolved, increase arg for each
space found.

We've missed it for 2.2 already, it would be nice if someone interested
in this feature could have a look at it before we release 2.3. I'm OK
with merging it slightly late given that the side effects are quickly
tested.

In the same vein, I've long been saying that we're missing an ifdef
mechanism, but if we had $(if,cond,true,false) like makefiles, we could
already do a lot, particularly in the regtests. There's quite more work
here (define expressions for the condition, internal variable names for
version and builtin options, recursive resolving of variable names), but
it's likely that the same person(s) might be interested.

If someone's interested in having a look at that, please let me know.
There's no shame in trying and not succeeding, don't worry :-)

Thanks,
Willy

Reply via email to