7a4e9764b1
- Полностью переписан swap-модуль в режиме exclusive ownership\n- Добавлены verify/checks, статус фактического swap-state и drift\n- Интегрирован ensure-swap в daemon и systemd ExecStartPre\n- Усилен lock API (таймауты) и применение в traffic/firewall/swap\n- Усилен parser firewall (JSON-first + устойчивый text fallback)\n- Обновлены config validation, runtime tools и default priority\n- Синхронизированы docs и build/package hygiene\n- Удалены member Cargo.lock в пользу корневого lockfile
2.2 KiB
2.2 KiB
Installation
Deployment contract
- Build выполняется на отдельной Debian 13 amd64 build-machine.
- Production-хост получает готовый Debian-пакет.
- На production-хосте не требуются Rust/cargo/source tree.
- Amnezia должна быть уже установлена и работать через Docker.
- Production-конфиг создаётся вручную;
config.example.tomlне копируется автоматически как боевой конфиг.
A. Build machine
A1. Подготовка build environment
./tools/build.sh --prepare-build-env --bootstrap-rust --yes
A2. Build и тесты
./tools/build.sh --build
A3. Сборка пакета
./tools/build.sh --package
sha256sum -c dist/SHA256SUMS
B. Transfer artifacts
scp dist/awg2-harness_*_amd64.deb root@vpn-host:/root/
scp config.toml root@vpn-host:/root/awg2-harness.config.toml
C. Production host
C1. Install package
apt install ./awg2-harness_*_amd64.deb
C2. Install config
install -d -m 0755 /etc/awg2-harness
install -m 0644 /root/awg2-harness.config.toml /etc/awg2-harness/config.toml
C3. Validate and apply
awg2-harness --config /etc/awg2-harness/config.toml validate-config
awg2-harness --config /etc/awg2-harness/config.toml validate-runtime
awg2-harness --config /etc/awg2-harness/config.toml ensure-swap
awg2-harness --config /etc/awg2-harness/config.toml apply-limits
awg2-harness --config /etc/awg2-harness/config.toml apply-firewall
awg2-harness --config /etc/awg2-harness/config.toml status
When swap.enabled=true, AWG2 Harness will disable all other active swap entries and rewrite /etc/fstab swap entries to a single managed swapfile.
C4. Enable services
systemctl enable --now awg2-harness.service
systemctl enable --now awg2-reboot-scheduler.service
D. Manual source-tree install (staging/debug only)
Режим ./tools/build.sh --install предназначен для staging/debug с checkout-репозиторием.
Это не основной production deployment path.