diff --git a/doc/configuration.txt b/doc/configuration.txt index beae7db87..fbe598e8f 100644 --- a/doc/configuration.txt +++ b/doc/configuration.txt @@ -782,6 +782,11 @@ file, or could be inherited by a program (See 3.7. Programs): mode this is the version which was used to start the master, even after updating the binary and reloading. +* HAPROXY_BRANCH: contains the HAProxy branch version (such as "2.8"). It does + not contain the full version number. It can be useful in case of migration + if resources (such as maps or certificates) are in a path containing the + branch number. + In addition, some pseudo-variables are internally resolved and may be used as regular variables. Pseudo-variables always start with a dot ('.'), and are the only ones where the dot is permitted. The current list of pseudo-variables is: diff --git a/src/haproxy.c b/src/haproxy.c index a1399f9dc..eb490804a 100644 --- a/src/haproxy.c +++ b/src/haproxy.c @@ -2090,6 +2090,7 @@ static void init(int argc, char **argv) setenv("HAPROXY_HTTP_LOG_FMT", default_http_log_format, 1); setenv("HAPROXY_HTTPS_LOG_FMT", default_https_log_format, 1); setenv("HAPROXY_TCP_LOG_FMT", default_tcp_log_format, 1); + setenv("HAPROXY_BRANCH", PRODUCT_BRANCH, 1); list_for_each_entry(wl, &cfg_cfgfiles, list) { int ret; @@ -2116,6 +2117,7 @@ static void init(int argc, char **argv) } } /* remove temporary environment variables. */ + unsetenv("HAPROXY_BRANCH"); unsetenv("HAPROXY_HTTP_LOG_FMT"); unsetenv("HAPROXY_HTTPS_LOG_FMT"); unsetenv("HAPROXY_TCP_LOG_FMT");