haproxy/reg-tests/quic/retry.vtc
Frederic Lecaille 479c9fb067 REGTESTS: use two haproxy instances to distinguish the QUIC traces
The aim of this patch is to identify the QUIC traces between the QUIC frontend
and backend parts. Two haproxy instances are created. The c(1|2) http clients
connect to ha1 with TCP frontends and QUIC backends. ha2 embeds two QUIC listeners
with s1 as TCP backend. When the traces are activated, they are dumped to stderr.
Hopefully, they are prefixed by the haproxy instance name (h1 or h2). This is very
useful to identify the QUIC instances.
2025-07-09 16:01:02 +02:00

85 lines
2.3 KiB
Plaintext

varnishtest "Two simple h3 tests (with and without QUIC RETRY)"
feature cmd "$HAPROXY_PROGRAM -cc 'version_atleast(3.3-dev2)'"
# QUIC backend are not supported with USE_QUIC_OPENSSL_COMPAT
feature cmd "$HAPROXY_PROGRAM -cc 'feature(QUIC) && !feature(QUIC_OPENSSL_COMPAT) && !feature(OPENSSL_WOLFSSL)'"
feature ignore_unknown_macro
server s1 {
rxreq
txresp
} -repeat 2 -start
haproxy ha2 -conf {
global
expose-experimental-directives
.if feature(THREAD)
thread-groups 1
.endif
# Uncomment these lines to get some debug traces on stderr
# traces
# trace quic sink stderr level developer start now
# trace ssl sink stderr level developer verbosity complete start now
defaults
mode http
timeout connect "${HAPROXY_TEST_TIMEOUT-5s}"
timeout client "${HAPROXY_TEST_TIMEOUT-5s}"
timeout server "${HAPROXY_TEST_TIMEOUT-5s}"
listen quic_lstnr
bind "quic+fd@${fe_quic}" ssl crt ${testdir}/common.pem
server srv ${s1_addr}:${s1_port}
listen quic_lstnr_retry
bind "quic+fd@${fe_quic_retry}" ssl crt ${testdir}/common.pem quic-force-retry
server srv ${s1_addr}:${s1_port}
} -start
haproxy ha1 -conf {
global
expose-experimental-directives
.if feature(THREAD)
thread-groups 1
.endif
# Uncomment these lines to get some debug traces on stderr
# traces
# trace quic sink stderr level developer start now
# trace ssl sink stderr level developer verbosity complete start now
defaults
mode http
timeout connect "${HAPROXY_TEST_TIMEOUT-5s}"
timeout client "${HAPROXY_TEST_TIMEOUT-5s}"
timeout server "${HAPROXY_TEST_TIMEOUT-5s}"
backend quic_be
server quic quic4@${ha2_fe_quic_addr}:${ha2_fe_quic_port} ssl verify none
backend quic_be_retry
server quic_retry quic4@${ha2_fe_quic_retry_addr}:${ha2_fe_quic_retry_port} ssl verify none
frontend fe_wo_retry
bind "fd@${fe}"
use_backend quic_be
frontend fe_with_retry
bind "fd@${fe_retry}"
use_backend quic_be_retry
} -start
client c1 -connect ${ha1_fe_sock} {
txreq
rxresp
expect resp.status == 200
} -run
client c2 -connect ${ha1_fe_retry_sock} {
txreq
rxresp
expect resp.status == 200
} -run