MINOR: export localpeer as an environment variable
Export localpeer as the environment variable $HAPROXY_LOCALPEER,
allowing to use this variable in the configuration file.
It's useful to use this variable in the case of synchronized
configuration between peers.
diff --git a/doc/configuration.txt b/doc/configuration.txt
index c687722..dcc87fd 100644
--- a/doc/configuration.txt
+++ b/doc/configuration.txt
@@ -476,6 +476,9 @@
user "$HAPROXY_USER"
+A special variable $HAPROXY_LOCALPEER is defined at the startup of the process
+which contains the name of the local peer. (See "-L" in the management guide.)
+
2.4. Time format
----------------
diff --git a/doc/management.txt b/doc/management.txt
index 1488862..4b69018 100644
--- a/doc/management.txt
+++ b/doc/management.txt
@@ -161,7 +161,9 @@
that a faulty configuration doesn't prevent the system from booting.
-L <name> : change the local peer name to <name>, which defaults to the local
- hostname. This is used only with peers replication.
+ hostname. This is used only with peers replication. You can use the
+ variable $HAPROXY_LOCALPEER in the configuration file to reference the
+ peer name.
-N <limit> : sets the default per-proxy maxconn to <limit> instead of the
builtin default value (usually 2000). Only useful for debugging.
diff --git a/src/haproxy.c b/src/haproxy.c
index d5235eb..48a77e8 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -1293,6 +1293,7 @@
gethostname(hostname, sizeof(hostname) - 1);
memset(localpeer, 0, sizeof(localpeer));
memcpy(localpeer, hostname, (sizeof(hostname) > sizeof(localpeer) ? sizeof(localpeer) : sizeof(hostname)) - 1);
+ setenv("HAPROXY_LOCALPEER", localpeer, 1);
/*
* Initialize the previously static variables.
@@ -1496,7 +1497,10 @@
case 'n' : cfg_maxconn = atol(*argv); break;
case 'm' : global.rlimit_memmax_all = atol(*argv); break;
case 'N' : cfg_maxpconn = atol(*argv); break;
- case 'L' : strncpy(localpeer, *argv, sizeof(localpeer) - 1); break;
+ case 'L' :
+ strncpy(localpeer, *argv, sizeof(localpeer) - 1);
+ setenv("HAPROXY_LOCALPEER", localpeer, 1);
+ break;
case 'f' :
if (!list_append_word(&cfg_cfgfiles, *argv, &err_msg)) {
ha_alert("Cannot load configuration file/directory %s : %s\n",