131 lines
4.0 KiB
YAML
131 lines
4.0 KiB
YAML
x-smppsim-healthcheck: &smppsim-healthcheck
|
|
# Not a raw TCP probe on 2775: SMPPSim reads an empty connection as a malformed PDU and logs a
|
|
# full stack trace per attempt: with DECODE_PDUS_IN_LOG and a 1s interval that fills the disk
|
|
# within tens of minutes (24GB+ across the 9 services in-house). The HTTP admin port answers a
|
|
# bare request harmlessly.
|
|
test: ["CMD-SHELL", "curl -sf -o /dev/null http://127.0.0.1:8884/"]
|
|
interval: 1s
|
|
retries: 30
|
|
timeout: 2s
|
|
|
|
# A second line of defence for the same runaway-logging risk: DECODE_PDUS_IN_LOG dumps every PDU,
|
|
# so a stuck reconnect loop or a bad probe fills the disk long before anyone notices.
|
|
x-log-limits: &log-limits
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-file: "3"
|
|
max-size: 20m
|
|
|
|
services:
|
|
smppsim:
|
|
build:
|
|
context: interop-tests/peers/smppsim
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
smppsim-textdlr:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-textdlr.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
smppsim-transition:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-transition.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
smppsim-undeliv:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-undeliv.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
smppsim-rejected:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-rejected.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
smppsim-accepted:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-accepted.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
smppsim-delayed:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-delayed.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
smppsim-queuefull:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-queuefull.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
# OUTBIND_ESME_IP_ADDRESS in smppsim-outbind.props names the node service by its --use-aliases
|
|
# hostname; our own server() in smppsim.test.ts listens on port 2776 for it to connect to.
|
|
smppsim-outbind:
|
|
image: larvitsmpp-interop/smppsim:bc29982
|
|
<<: *log-limits
|
|
command: ["conf/smppsim-outbind.props"]
|
|
healthcheck: *smppsim-healthcheck
|
|
|
|
capture:
|
|
image: nicolaka/netshoot:v0.16
|
|
network_mode: "service:smppsim"
|
|
cap_add:
|
|
- NET_ADMIN
|
|
- NET_RAW
|
|
depends_on:
|
|
smppsim:
|
|
condition: service_started
|
|
command: ["dumpcap", "-i", "any", "-f", "tcp port 2775", "-w", "/captures/smppsim.pcapng"]
|
|
volumes:
|
|
- ./interop-tests/captures:/captures
|
|
|
|
# A second sidecar, cheap to add, so a textdlr-specific wire question can be checked without a
|
|
# second run. Not read by run.py's own pass/fail (that only decodes captures/smppsim.pcapng).
|
|
capture-textdlr:
|
|
image: nicolaka/netshoot:v0.16
|
|
network_mode: "service:smppsim-textdlr"
|
|
cap_add:
|
|
- NET_ADMIN
|
|
- NET_RAW
|
|
depends_on:
|
|
smppsim-textdlr:
|
|
condition: service_started
|
|
command: ["dumpcap", "-i", "any", "-f", "tcp port 2775", "-w", "/captures/smppsim-textdlr.pcapng"]
|
|
volumes:
|
|
- ./interop-tests/captures:/captures
|
|
|
|
node:
|
|
depends_on:
|
|
capture:
|
|
condition: service_started
|
|
capture-textdlr:
|
|
condition: service_started
|
|
smppsim:
|
|
condition: service_healthy
|
|
smppsim-textdlr:
|
|
condition: service_healthy
|
|
smppsim-transition:
|
|
condition: service_healthy
|
|
smppsim-undeliv:
|
|
condition: service_healthy
|
|
smppsim-rejected:
|
|
condition: service_healthy
|
|
smppsim-accepted:
|
|
condition: service_healthy
|
|
smppsim-delayed:
|
|
condition: service_healthy
|
|
smppsim-queuefull:
|
|
condition: service_healthy
|
|
smppsim-outbind:
|
|
condition: service_healthy
|