Files
go-sip/deploys/test/README.md
T

41 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Test-only deployment helpers
Nothing in this directory is installed by the production package.
## Dependency infrastructure
Use the existing Docker-backed target for RabbitMQ integration tests:
```sh
make mq-integration-local
```
It starts a disposable RabbitMQ container, waits for readiness, runs the
integration tests and removes the container. Do not install RabbitMQ as a
systemd service or add it to a production host.
## Native Asterisk validation
`nonprod-call-evidence.sh` is the mandatory capture-first wrapper for
non-production `mock`, `mixed` and `real` call checks. It runs on a validation
host with native Asterisk and required diagnostics; it is not an Asterisk or
Agent replacement and is not containerized. Run it explicitly with the current
call authorization and the approved target/trunk. It refuses production mode
and fails closed when its prerequisites are missing. Before any dial attempt it
checks the Asia/Shanghai 09:00–20:00 window twice (09:00 included, 20:00
excluded), the exact `enabled` + `active` Asterisk systemd state, the running
ARI module and HTTP `/ari/` route, the selected PJSIP endpoint, and SHA-256
of the installed binary and configuration. Missing facts fail the validation;
`--preflight-only` never authorizes a call. After capture, missing capture or
recording SHA-256, Asterisk journal, SIP summary, logger shutdown, timestamp, or
restricted evidence ownership is recorded in `diagnostic-errors.txt` and fails
the check; an already failed call keeps its nonzero result. Isolated tests
replace host tools with fakes: they do not prove a real host or supplier is ready.
The offline OSS environment file is a fixture for isolated tests only. It
contains no real credentials or production approval. The former
`ai-dental-meiba-v1.json` is archived at
[`docs/archive/deployment-examples/ai-dental-meiba-v1.json`](../../docs/archive/deployment-examples/ai-dental-meiba-v1.json),
with its original path and SHA-256 recorded in the archive README; it is not a
current AI configuration or an installable deployment input.