3a4ce9c751
Новый docs/14-legacy-cleanup.md: как выглядит отказ установщика, полный список маркеров чужой установки, что сохранить перед очисткой, работа purge-v0.sh, ручная процедура и отдельно - случай незавершённой установки текущего поколения, где нужен repair, а не очистка. Обновлено под фактическое поведение: - README и package/docs: установка описана как две фазы, PHASE 0 ничего не меняет; добавлен troubleshooting по отказу clean-host; версии toolchain больше не передаются через окружение; - 02-build-layer: раздел про versions.env (что в нём есть и чего нет и почему), verify_versions_contract, проверка происхождения артефакта по upstream hashes.txt; - 08-orchestrator-spec: двухфазный контракт, read-only guard, идентификация поколения в install-state, ownership-aware rollback, расширенная семантическая проверка конфига, структурная редакция; - 04-admin-panel: таблица удалённых маршрутов и почему они удалены, а не оставлены заглушками; сужена формулировка гарантии санитайза; - 11-testing: новые unit-наборы, полный список инвариантов конфига, раздел про одну реализацию URI вместо двух, сценарий проверки границы установки на живом сервере; - 12-operations и 13-runbook: диагностика отказов по поколению, поведение diagnostics-бандла; - tools/build/README: контракт версий, обе суммы Bun, hashes.txt. CHANGELOG: раздел Unreleased с разбором каждого исправленного дефекта.
52 lines
1.8 KiB
Markdown
52 lines
1.8 KiB
Markdown
# HY2XS install package
|
||
|
||
Этот пакет создаётся production builder'ом на Debian 13 amd64.
|
||
|
||
Пакет предназначен для чистого Debian 13 target и содержит:
|
||
|
||
- compiled install-only orchestrator;
|
||
- bundled HY2XS admin;
|
||
- templates;
|
||
- systemd units;
|
||
- package metadata и checksums.
|
||
|
||
Запускать от root:
|
||
|
||
```sh
|
||
./install.sh --non-interactive
|
||
```
|
||
|
||
С внешним source-config:
|
||
|
||
```sh
|
||
./install.sh --config /root/custom-hy2xs.env --non-interactive
|
||
```
|
||
|
||
В baseline нет target-side JavaScript, TypeScript, frontend или Go build step.
|
||
|
||
## Установка выполняется в две фазы
|
||
|
||
```text
|
||
PHASE 0 — READ ONLY
|
||
проверка прав и checksums пакета
|
||
clean-host preflight из распакованного архива
|
||
↓ ноль изменений на сервере
|
||
PHASE 1 — MUTATION
|
||
установка orchestrator, раскладка runtime-пакета
|
||
install
|
||
```
|
||
|
||
HY2XS v1 **не устанавливается поверх** предыдущей установки и не мигрирует её
|
||
состояние. Если PHASE 0 обнаружит старую установку, установщик завершится с
|
||
ошибкой и **не изменит на сервере ничего**.
|
||
|
||
Проверить хост, ничего не устанавливая:
|
||
|
||
```sh
|
||
./orchestrator/hy2xs-orchestrator preflight-install --package-dir "$(pwd)"
|
||
```
|
||
|
||
Очистка предыдущей установки — отдельная явная операция оператора, она описана
|
||
в `docs/14-legacy-cleanup.md` репозитория проекта и выполняется скриптом
|
||
`tools/legacy/purge-v0.sh`. Установщик её никогда не запускает сам.
|