Сборка: добавить production packaging flow через .deb

Добавлен package-режим в tools/build.sh: --package, --dist-dir, --version. Реализована сборка Debian-пакета, metadata/control, postinst/postrm и SHA256SUMS. Установочные пути унифицированы под /usr/sbin и /lib/systemd/system для production-модели.
This commit is contained in:
2026-05-10 17:26:11 +05:00
parent 76c6b52f4e
commit 9d2d2bc0c2
9 changed files with 307 additions and 143 deletions
+36
View File
@@ -20,6 +20,42 @@ Production reboot path — только встроенный scheduler в [`traf
Важно: ничего из legacy-деревьев не устанавливается, не вызывается и не требуется для runtime пути `awg2-harness`.
## Production deployment model
AWG2 Harness собирается на отдельной Debian 13 amd64 build-machine.
Production Amnezia-хост **не должен** требовать Rust, cargo, clippy, source tree и legacy bash-скрипты. На production-хост переносится готовый Debian-пакет и вручную подготовленный `/etc/awg2-harness/config.toml`.
Build machine:
```bash
./tools/build.sh --prepare-build-env --bootstrap-rust --yes
./tools/build.sh --package
sha256sum -c dist/SHA256SUMS
```
Копирование на production host:
```bash
scp dist/awg2-harness_*_amd64.deb root@vpn-host:/root/
scp config.toml root@vpn-host:/root/awg2-harness.config.toml
```
Production host:
```bash
apt install ./awg2-harness_*_amd64.deb
install -d -m 0755 /etc/awg2-harness
install -m 0644 /root/awg2-harness.config.toml /etc/awg2-harness/config.toml
awg2-harness validate-config --config /etc/awg2-harness/config.toml
awg2-harness apply-limits --config /etc/awg2-harness/config.toml
awg2-harness apply-firewall --config /etc/awg2-harness/config.toml
awg2-harness status --config /etc/awg2-harness/config.toml
systemctl enable --now awg2-harness.service
```
Ничего из [`Amnezia limits (old bash)/`](Amnezia%20limits%20(old%20bash)/) и [`reboot_module/`](reboot_module/) не запускается в production-пути.
Основная документация:
- [`docs/MIGRATION.md`](docs/MIGRATION.md) — исправленная миграционная стратегия bash → Rust multi-orchestrator.