mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-13 23:14:46 +00:00
996190a70d
Error output for dynamic server creation if invalid lb algo has changed since previous commit : MINOR: server: fix doc/trace on lb algo for dynamic server creation The vtest regex should have been updated has well to match it.
93 lines
2.0 KiB
Plaintext
93 lines
2.0 KiB
Plaintext
varnishtest "Add server via cli"
|
|
|
|
feature ignore_unknown_macro
|
|
|
|
#REQUIRE_VERSION=2.4
|
|
|
|
server s1 {
|
|
rxreq
|
|
txresp
|
|
} -start
|
|
|
|
haproxy h1 -conf {
|
|
defaults
|
|
mode http
|
|
${no-htx} option http-use-htx
|
|
timeout connect 1s
|
|
timeout client 1s
|
|
timeout server 1s
|
|
|
|
frontend fe
|
|
bind "fd@${feS}"
|
|
default_backend test
|
|
|
|
backend test
|
|
balance random
|
|
|
|
backend other
|
|
balance static-rr
|
|
|
|
backend other2
|
|
balance random
|
|
mode tcp
|
|
} -start
|
|
|
|
client c1 -connect ${h1_feS_sock} {
|
|
txreq
|
|
rxresp
|
|
expect resp.status == 503
|
|
} -run
|
|
|
|
haproxy h1 -cli {
|
|
# experimental mode disabled
|
|
send "add server foo/s1 ${s1_addr}:${s1_port}"
|
|
expect ~ "This command is restricted to experimental mode only."
|
|
|
|
# non existent backend
|
|
send "experimental-mode on; add server foo/s1 ${s1_addr}:${s1_port}"
|
|
expect ~ "No such backend."
|
|
|
|
# missing address
|
|
send "experimental-mode on; add server test/s1"
|
|
expect ~ "'server' expects <name> and <addr>\\[:<port>\\] as arguments."
|
|
|
|
# invalid load-balancing algo
|
|
send "experimental-mode on; add server other/s1 ${s1_addr}:${s1_port}"
|
|
expect ~ "Backend must use a dynamic load balancing to support dynamic servers."
|
|
|
|
# invalid mux proto
|
|
send "experimental-mode on; add server other2/s1 ${s1_addr}:${s1_port} proto h2"
|
|
expect ~ "MUX protocol is not usable for server."
|
|
|
|
# valid command
|
|
send "experimental-mode on; add server test/s1 ${s1_addr}:${s1_port}"
|
|
expect ~ "New server registered."
|
|
|
|
# duplicate server
|
|
send "experimental-mode on; add server test/s1 ${s1_addr}:${s1_port}"
|
|
expect ~ "Already exists a server with the same name in backend."
|
|
|
|
# valid command
|
|
# specify the proto, it should be accepted for this backend
|
|
send "experimental-mode on; add server test/s2 ${s1_addr}:${s1_port} proto h2"
|
|
expect ~ "New server registered."
|
|
}
|
|
|
|
# dynamic servers are created on MAINT mode and should not be available at first
|
|
client c2 -connect ${h1_feS_sock} {
|
|
txreq
|
|
rxresp
|
|
expect resp.status == 503
|
|
} -run
|
|
|
|
haproxy h1 -cli {
|
|
send "enable server test/s1"
|
|
expect ~ ".*"
|
|
}
|
|
|
|
client c3 -connect ${h1_feS_sock} {
|
|
txreq
|
|
rxresp
|
|
expect resp.status == 200
|
|
} -run
|