Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 1 | varnishtest "Check health-check email alerts" |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 2 | #REQUIRE_OPTIONS=LUA |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 3 | |
| 4 | feature ignore_unknown_macro |
| 5 | |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 6 | syslog S1 -level notice { |
| 7 | recv |
Christopher Faulet | 28bc152 | 2022-09-12 09:58:47 +0200 | [diff] [blame] | 8 | expect ~ "[^:\\[ ]\\[${h1_pid}\\]: Health check for server be1/srv1 failed.+check duration: [[:digit:]]+ms.+status: 0/1 DOWN." |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 9 | recv info |
| 10 | expect ~ "[^:\\[ ]\\[${h1_pid}\\]: Result=SUCCESS Bytes=[[:digit:]]+" |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 11 | } -start |
| 12 | |
| 13 | haproxy h1 -conf { |
| 14 | global |
Aurelien DARRAGON | 7963fb5 | 2023-05-03 16:55:52 +0200 | [diff] [blame] | 15 | lua-load ${testdir}/mailers.lua |
Frédéric Lécaille | b894f92 | 2019-03-29 16:13:48 +0100 | [diff] [blame] | 16 | lua-load ${testdir}/healthcheckmail.lua |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 17 | |
| 18 | defaults |
| 19 | timeout client "${HAPROXY_TEST_TIMEOUT-5s}" |
| 20 | timeout server "${HAPROXY_TEST_TIMEOUT-5s}" |
| 21 | timeout connect "${HAPROXY_TEST_TIMEOUT-5s}" |
| 22 | |
| 23 | listen lisrv |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 24 | mode tcp |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 25 | bind "fd@${lisrv}" |
| 26 | tcp-request connection reject |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 27 | |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 28 | listen lismtp |
| 29 | mode tcp |
| 30 | bind "fd@${lismtp}" |
| 31 | log ${S1_addr}:${S1_port} daemon |
| 32 | log-format "Result=%[var(txn.result)] Bytes=%B" |
| 33 | tcp-request content use-service lua.mailservice |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 34 | |
| 35 | frontend fe1 |
| 36 | mode http |
| 37 | bind "fd@${fe1}" |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 38 | default_backend be1 |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 39 | |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 40 | backend be1 |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 41 | mode http |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 42 | log ${S1_addr}:${S1_port} daemon |
| 43 | option httpchk |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 44 | option log-health-checks |
| 45 | |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 46 | default-server inter 200ms downinter 100ms rise 1 fall 1 |
| 47 | |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 48 | email-alert mailers mymailers |
| 49 | email-alert level info |
| 50 | email-alert from from@domain.tld |
| 51 | email-alert to to@domain.tld |
| 52 | |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 53 | server srv1 ${h1_lisrv_addr}:${h1_lisrv_port} check |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 54 | |
| 55 | mailers mymailers |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 56 | mailer smtp1 ${h1_lismtp_addr}:${h1_lismtp_port} |
PiBa-NL | c3949d4 | 2018-12-23 21:06:31 +0100 | [diff] [blame] | 57 | |
| 58 | } -start |
| 59 | |
Christopher Faulet | 5291257 | 2022-06-08 11:57:52 +0200 | [diff] [blame] | 60 | syslog S1 -wait |