Полная очистка при uninstall: VPS и output/<server>/

Скрипт --remove снимает только бинарник и systemd; Ansible дочищает конфиг,
пользователя, ufw, пакеты и всегда удаляет локальную папку экспорта.
This commit is contained in:
Sergey Antropoff
2026-07-01 13:28:00 +03:00
parent bdc316efac
commit 4b5a1ef51f
4 changed files with 61 additions and 36 deletions
+9 -8
View File
@@ -83,7 +83,6 @@ make install LIMIT=vps-de
make update LIMIT=vps-nl
make export
make uninstall LIMIT=vps-de
make uninstall LIMIT=vps-de EXTRA_VARS='hysteria2_uninstall_remove_local_output=false'
make update EXTRA_VARS='hysteria2_force_export=true' # перевыпустить URL/QR для всех
make install EXTRA_VARS='hysteria2_open_browser=false'
make update EXTRA_VARS='hysteria2_wait_for_acme=false'
@@ -280,17 +279,20 @@ hysteria2_obfs_password: "{{ vault_hysteria2_obfs_passwords[inventory_hostname]
## `make uninstall` — полная очистка
На **VPS** удаляется:
На **VPS** (официальный `install_server.sh --remove` + дочистка Ansible):
- сервис и бинарник Hysteria2;
- бинарник `/usr/local/bin/hysteria` и unit-файлы systemd;
- `/etc/hysteria/` (конфиг и ACME);
- пользователь `hysteria` и его home;
- `/var/lib/hysteria` и пользователь `hysteria`;
- symlink'и `multi-user.target.wants/hysteria-server*`;
- временные `/tmp/hysteria-client-*.yaml`;
- правила ufw: `443/tcp`, `443/udp` (порт из `hysteria2_listen_port`);
- пакеты `curl`, `micro`, `qrencode`.
На **control node**: `output/<server>/` и пересборка `output/index.html`.
На **control node**:
Сохранить локальный экспорт: `EXTRA_VARS='hysteria2_uninstall_remove_local_output=false'`.
- удаляется `output/<имя_сервера>/`;
- пересобирается общий `output/index.html`.
---
@@ -383,8 +385,7 @@ ASCII QR — `hysteria share --qr` → `user.qr.txt`.
| `hysteria2_generate_qr_png` | group | PNG QR через `qrencode` |
| `hysteria2_wait_for_acme` | group | Пауза при первом ACME |
| `hysteria2_open_browser` | group | Открыть `output/index.html` после экспорта |
| `hysteria2_uninstall_remove_local_output` | group | Удалить `output/<server>/` при uninstall (`true`) |
| `hysteria2_uninstall_rebuild_global_index` | group | Пересобрать `output/index.html` (`true`) |
| `hysteria2_uninstall_rebuild_global_index` | group | Пересобрать `output/index.html` после uninstall (`true`) |
| `vault_ssh_passwords` | vault | SSH-пароли root |
| `vault_hysteria2_user_passwords` | vault | VPN-пароли по серверам |
| `vault_hysteria2_obfs_passwords` | vault | obfs-пароли по серверам |