From 08dd202d7319af27521f62525a1ed77e7abe88ca Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Thu, 21 Nov 2019 18:07:30 +0100 Subject: [PATCH] MINOR: version: report the version status in "haproxy -v" As discussed on Discourse here: https://discourse.haproxy.org/t/haproxy-branch-support-lifetime/4466 it's not always easy for end users to know the lifecycle of the version they are using. This patch introduces a "Status" line in the output of "haproxy -vv" indicating whether it's a development, stable, long-term supported version, possibly with an estimated end of life for the branch when it can be anticipated (e.g. for stable versions). This field should be adjusted when creating a major release to reflect the new status. It may make sense to backport this to other branches to clarify the situation. --- include/common/version.h | 6 ++++++ src/haproxy.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/include/common/version.h b/include/common/version.h index 248c22e23..fd5c95440 100644 --- a/include/common/version.h +++ b/include/common/version.h @@ -36,6 +36,12 @@ #define PRODUCT_BRANCH "2.1" #endif +#ifdef CONFIG_PRODUCT_STATUS +#define PRODUCT_STATUS CONFIG_PRODUCT_STATUS +#else +#define PRODUCT_STATUS "Status: development branch - not safe for use in production." +#endif + #ifdef CONFIG_PRODUCT_URL #define PRODUCT_URL CONFIG_PRODUCT_URL #else diff --git a/src/haproxy.c b/src/haproxy.c index 699a1fea0..32d9d33ce 100644 --- a/src/haproxy.c +++ b/src/haproxy.c @@ -543,7 +543,8 @@ void hap_register_per_thread_free(int (*fct)()) static void display_version() { - printf("HA-Proxy version %s %s - https://haproxy.org/\n", haproxy_version, haproxy_date); + printf("HA-Proxy version %s %s - https://haproxy.org/\n" + PRODUCT_STATUS "\n", haproxy_version, haproxy_date); } static void display_build_opts()