63 lines
2.0 KiB
Markdown
63 lines
2.0 KiB
Markdown
# AWG2 Harness builder
|
||
|
||
`tools/build.sh` — единый build/package helper для AWG2 Harness. Он предназначен в первую очередь для build-machine. Production-хост обычно получает только готовый `.deb` и `/etc/awg2-harness/config.toml`.
|
||
|
||
Скрипт собирает workspace из двух бинарей:
|
||
|
||
```text
|
||
traffic_core -> awg2-harness
|
||
reboot_module -> awg2-reboot-scheduler
|
||
```
|
||
|
||
И при `--package` создаёт Debian-пакет `dist/awg2-harness_<version>_amd64.deb` с checksum-файлом `dist/SHA256SUMS`.
|
||
|
||
## Поддерживаемая build-среда
|
||
|
||
- Debian/Ubuntu с `apt`.
|
||
- amd64/x86_64.
|
||
- Rust toolchain из `rust-toolchain.toml` (`1.95.0` в текущем дереве).
|
||
- `Cargo.lock` обязателен: build gate работает в `--locked` режиме.
|
||
|
||
## Быстрый production build
|
||
|
||
```bash
|
||
cd awg2_harness
|
||
chmod +x tools/build.sh
|
||
./tools/build.sh --prepare-build-env --bootstrap-rust --yes
|
||
./tools/build.sh --package --version 0.1.6
|
||
sha256sum -c dist/SHA256SUMS
|
||
dpkg-deb -I dist/awg2-harness_0.1.6_amd64.deb
|
||
dpkg-deb -c dist/awg2-harness_0.1.6_amd64.deb | sort
|
||
```
|
||
|
||
## Что делает default запуск
|
||
|
||
```bash
|
||
./tools/build.sh
|
||
```
|
||
|
||
Если не указан ни один action flag, включается `--build`.
|
||
|
||
## Проверка пакета перед переносом
|
||
|
||
```bash
|
||
sha256sum -c dist/SHA256SUMS
|
||
dpkg-deb -I dist/awg2-harness_<version>_amd64.deb
|
||
dpkg-deb -c dist/awg2-harness_<version>_amd64.deb | sort
|
||
```
|
||
|
||
## Production transfer
|
||
|
||
```bash
|
||
scp -P 2323 dist/awg2-harness_<version>_amd64.deb root@<server-ip>:/root/
|
||
scp -P 2323 dist/SHA256SUMS root@<server-ip>:/root/
|
||
```
|
||
|
||
## Что скрипт намеренно не делает
|
||
|
||
- не устанавливает AmneziaVPN;
|
||
- не генерирует client keys/configs;
|
||
- не копирует `config.example.toml` в `/etc/awg2-harness/config.toml`;
|
||
- не включает services без `--enable`;
|
||
- не управляет SSH hardening.
|