REGTESTS: add a test on "del backend"

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.
This commit is contained in:
Amaury Denoyelle 2026-02-27 10:45:55 +01:00
parent 712055f2f8
commit 2f5030c847

View File

@ -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,"
}