haproxy/reg-tests/peers/tls_basic_sync_wo_stkt_backend.vtc
Christopher Faulet 1448d3a157 REGTESTS: Send valid URIs in peers reg-tests and fix HA config to avoid warnings
Absolute path must be used, otherwise, the requests are rejected by HAProxy
because of the recent changes. In addition, the configuration has been slightly
updated to remove warnings at startup.
2019-10-14 22:28:50 +02:00

153 lines
4.0 KiB
Plaintext

vtest "Basic test for peers protocol over SSL/TLS with stick-table declared in peers sections"
feature ignore_unknown_macro
#REQUIRE_VERSION=2.0
#REQUIRE_OPTIONS=OPENSSL
#REGTEST_TYPE=slow
haproxy h1 -arg "-L A" -conf {
defaults
timeout client 1s
timeout connect 1s
timeout server 1s
peers peers
table stkt type string size 10m store server_id,gpc0,conn_cur,conn_rate(50000)
default-server ssl crt ${testdir}/common.pem verify none
bind "fd@${A}" ssl crt ${testdir}/common.pem
server A
server B ${h2_B_addr}:${h2_B_port}
server C ${h3_C_addr}:${h3_C_port}
server D ${h4_D_addr}:${h4_D_port}
frontend fe
bind "fd@${fe}"
tcp-request inspect-delay 100ms
tcp-request content track-sc0 url table peers/stkt
tcp-request content sc-inc-gpc0(0)
}
haproxy h2 -arg "-L B" -conf {
defaults
mode http
timeout client 1s
timeout connect 1s
timeout server 1s
peers peers
table stkt type string size 10m store server_id,gpc0,conn_cur,conn_rate(50000)
default-server ssl crt ${testdir}/common.pem verify none
bind "fd@${B}" ssl crt ${testdir}/common.pem
server A ${h1_A_addr}:${h1_A_port}
server B
server C ${h3_C_addr}:${h3_C_port}
server D ${h4_D_addr}:${h4_D_port}
frontend fe
bind "fd@${fe}"
http-request track-sc0 url table peers/stkt
http-request sc-inc-gpc0(0)
}
haproxy h3 -arg "-L C" -conf {
defaults
mode http
timeout client 1s
timeout connect 1s
timeout server 1s
peers peers
table stkt type string size 10m store server_id,gpc0,conn_cur,conn_rate(50000)
default-server ssl crt ${testdir}/common.pem verify none
bind "fd@${C}" ssl crt ${testdir}/common.pem
server A ${h1_A_addr}:${h1_A_port}
server B ${h2_B_addr}:${h2_B_port}
server C
server D ${h4_D_addr}:${h4_D_port}
frontend fe
bind "fd@${fe}"
http-request track-sc0 url table peers/stkt
http-request sc-inc-gpc0(0)
}
haproxy h4 -arg "-L D" -conf {
defaults
mode http
timeout client 1s
timeout connect 1s
timeout server 1s
backend stkt
peers peers
table stkt type string size 10m store server_id,gpc0,conn_cur,conn_rate(50000)
bind "fd@${D}"
server A ${h1_A_addr}:${h1_A_port}
server B ${h2_B_addr}:${h2_B_port}
server C ${h3_C_addr}:${h3_C_port}
server D
frontend fe
bind "fd@${fe}"
http-request track-sc0 url table peers/stkt
http-request sc-inc-gpc0(0)
}
client c1 -connect ${h1_fe_sock} {
txreq -url "/c1_client"
expect_close
} -start
client c2 -connect ${h1_fe_sock} {
txreq -url "/c2_client"
expect_close
} -start
client c3 -connect ${h1_fe_sock} {
txreq -url "/c3_client"
expect_close
} -start
client c4 -connect ${h1_fe_sock} {
txreq -url "/c4_client"
expect_close
} -start
haproxy h1 -start
delay 0.2
haproxy h2 -start
delay 0.2
haproxy h3 -start
delay 0.2
haproxy h4 -start
delay 0.2
client c1 -wait
client c2 -wait
client c3 -wait
client c4 -wait
delay 2
haproxy h1 -cli {
send "show table peers/stkt"
expect ~ "# table: peers/stkt, type: string, size:1048[0-9]{4}, used:4(\n0x[0-9a-f]*: key=/c[1-4]_client use=0 exp=0 server_id=0 gpc0=1 conn_rate\\(50000\\)=1 conn_cur=0){4}"
}
haproxy h2 -cli {
send "show table peers/stkt"
expect ~ "# table: peers/stkt, type: string, size:1048[0-9]{4}, used:4(\n0x[0-9a-f]*: key=/c[1-4]_client use=0 exp=0 server_id=0 gpc0=1 conn_rate\\(50000\\)=1 conn_cur=0){4}"
}
haproxy h3 -cli {
send "show table peers/stkt"
expect ~ "# table: peers/stkt, type: string, size:1048[0-9]{4}, used:4(\n0x[0-9a-f]*: key=/c[1-4]_client use=0 exp=0 server_id=0 gpc0=1 conn_rate\\(50000\\)=1 conn_cur=0){4}"
}
haproxy h4 -cli {
send "show table peers/stkt"
expect ~ "# table: peers/stkt, type: string, size:1048[0-9]{4}, used:0\n"
}