]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
REGTESTS: add a test on "del backend"
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Fri, 27 Feb 2026 09:45:55 +0000 (10:45 +0100)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Mon, 2 Mar 2026 13:14:05 +0000 (14:14 +0100)
Add a reg-tests to test "del backend" CLI command. First, checks are
performed to ensure a backend cannot be deleted if not in the expected
state.

Then, a "del backend" success is tested. Stats are dumped to ensure the
backend instance is indeed removed.

reg-tests/proxy/cli_del_backend.vtc [new file with mode: 0644]

diff --git a/reg-tests/proxy/cli_del_backend.vtc b/reg-tests/proxy/cli_del_backend.vtc
new file mode 100644 (file)
index 0000000..a78e2c0
--- /dev/null
@@ -0,0 +1,58 @@
+varnishtest "Delete backend via cli"
+
+feature ignore_unknown_macro
+
+haproxy h1 -conf {
+       global
+       .if feature(THREAD)
+               thread-groups 1
+       .endif
+
+       defaults
+               mode http
+               timeout connect "${HAPROXY_TEST_TIMEOUT-5s}"
+               timeout client  "${HAPROXY_TEST_TIMEOUT-5s}"
+               timeout server  "${HAPROXY_TEST_TIMEOUT-5s}"
+
+       frontend fe
+               bind "fd@${feS}"
+               use_backend be_ref
+
+       listen li
+               bind "fd@${feli}"
+
+       backend be_ref
+
+       backend be
+               server s1 ${s1_addr}:${s1_port} disabled
+} -start
+
+haproxy h1 -cli {
+       send "experimental-mode on; del backend other"
+       expect ~ "No such backend."
+
+       send "experimental-mode on; del backend li"
+       expect ~ "Cannot delete a listen section."
+
+       send "experimental-mode on; del backend be_ref"
+       expect ~ "This proxy cannot be removed at runtime due to other configuration elements pointing to it."
+
+       send "show stat be 2 -1"
+       expect ~ "be,BACKEND,"
+
+       send "experimental-mode on; del backend be"
+       expect ~ "Backend must be unpublished prior to its deletion."
+
+       send "unpublish backend be;"
+       expect ~ ".*"
+       send "experimental-mode on; del backend be"
+       expect ~ "Only a backend without server can be deleted."
+
+       send "del server be/s1"
+       expect ~ ".*"
+       send "experimental-mode on; del backend be"
+       expect ~ "Backend deleted."
+
+       send "show stat be 2 -1"
+       expect !~ "be,BACKEND,"
+}