AWG2 Harness builder
Основной скрипт: build.sh.
Целевой crate: traffic_core.
Unit: awg2-harness.service.
Пример конфига: config.example.toml.
Supported host
- Debian/Ubuntu (apt-based)
- amd64/x86_64
Default mode
./tools/build.sh
Дефолтный запуск не изменяет систему. Он:
- проверяет prereqs;
- запускает
fmt/clippy/test/buildв locked-режиме; - печатает
file,ldd,sha256для собранного бинаря.
Flags
--prepare-build-env— установить недостающие build-пакеты;--prepare-runtime-env— установить недостающие runtime-пакеты;--bootstrap-rust— установить rustup и pinned toolchain;--build— запустить build gate явно;--install— установить бинарь + systemd unit (без enable/start);--enable—systemctl enable --now awg2-harness.service;--yes— подтверждение системных изменений (apt/rustup);--skip-fmt— пропуститьcargo fmt --check;--help— справка.
Typical build machine flow
./tools/build.sh --prepare-build-env --bootstrap-rust --yes
./tools/build.sh
Typical production host flow
./tools/build.sh --prepare-runtime-env --yes
install -d -m 0755 /etc/awg2-harness
install -m 0644 config.toml /etc/awg2-harness/config.toml
./tools/build.sh --install
./tools/build.sh --enable
What the script intentionally does not do
- не устанавливает Docker автоматически;
- не генерирует production config из example;
- не включает сервис без явного
--enable; - не управляет установкой AmneziaWG.