test(#21): тесты инвариантов compose, Make-цели стенда и обновлённый deploy/README
- tests/deploy/test_compose_manifests.py — 7 тестов на compose-инварианты (без Docker, только PyYAML) — готовы к включению в CI (#17); - Makefile: dev-up/dev-up-stub/dev-down/dev-logs/dev-verify/dev-verify-stub/ dev-reset/test-netns/test-netns-keep/test-netns-ci/test-manifests/lint-shell, переменные HOST_DIR, DASH_PORT, NETNS_ARGS; dev-up без docker падает с внятным сообщением, а не трейсбеком; - deploy/README.md — таблица артефактов и быстрые команды стенда. Refs #21 Refs #15
This commit is contained in:
@@ -6,7 +6,36 @@
|
||||
| `entrypoint.sh` | супервизор: `awg-agent` (root) + `awg-api` | #18 |
|
||||
| `docker-compose.dev.yml` | dev-стенд: порт 8080, тома `/config` `/data`, healthcheck | #21 |
|
||||
| `docker-compose.test.yml` | стенд для тестов | #21 |
|
||||
| `docker-compose.stub.yml` | DEV-ONLY оверрайд: health-заглушка до мержа #31 | #21 |
|
||||
| `api_stub.py` | минимальный `/api/v1/health` для проверки плумбинга стенда | #21 |
|
||||
| `verify-dev-stand.sh` | проверка AC #21 на Docker-хосте (`make dev-verify`) | #21 |
|
||||
| `dev-stand.md` | runbook dev-стенда: запуск, AC, откат, pitfalls | #21 |
|
||||
| `grafana/` | дашборд JSON (опциональный профиль monitoring) | #46 |
|
||||
| `awg0.conf.example` | пример клиентского конфига | #22 |
|
||||
|
||||
Запуск по ТЗ (после релиза): `--network=host`, `--device=/dev/net/tun`, `--cap-add=NET_ADMIN --cap-add=SYS_MODULE`, `--restart always`.
|
||||
|
||||
## Dev-стенд (задача #21)
|
||||
|
||||
```bash
|
||||
make dev-up # поднять стенд (compose project awg-dash-dev)
|
||||
make dev-verify # AC: health 200 + /config /data переживают restart
|
||||
make dev-up-stub # + health-заглушка, пока нет API (#31)
|
||||
make dev-logs
|
||||
make dev-down
|
||||
```
|
||||
|
||||
* Состояние: `/opt/awg-dash-dev/{config,data}` на Docker-хосте (`AWG_DASH_HOST_DIR`).
|
||||
* Хост-порт: `AWG_DASH_PORT` (по умолчанию 8180 — 8080 занят на dev-хосте; в контейнере всегда 8080).
|
||||
* Подробности, таблица AC, откат и pitfalls — [dev-stand.md](dev-stand.md).
|
||||
|
||||
### Тестовый стенд без реального провайдера
|
||||
|
||||
```bash
|
||||
make test-netns # netns-топология client/gw/uplink + мок WireGuard-endpoint
|
||||
make test-netns-ci # то же в привилегированном контейнере (путь для CI, #17)
|
||||
make test-manifests # статическая проверка compose-файлов (без Docker)
|
||||
make lint-shell # shellcheck для скриптов стенда
|
||||
```
|
||||
|
||||
Описание топологии, тестов и pitfalls — [../tests/netns/README.md](../tests/netns/README.md).
|
||||
|
||||
Reference in New Issue
Block a user