Files
ssh-monitor/docs/release-manifest.ru.md
T
2026-07-08 12:14:11 +10:00

2.0 KiB

Release manifest

Файлы release/manifest-VERSION.json — SHA256 агентских скриптов как в git (после checkout на Linux). Updater сверяет их до копирования на хост.

Автоматически (рекомендуется)

Один раз после clone:

Linux / Git Bash:

./contrib/install-git-hooks.sh

Windows (PowerShell):

.\contrib\install-git-hooks.ps1

При коммите, если изменились version.txt, SSH_MONITOR_VERSION в ssh-monitor или любой из агентских файлов (ssh-monitor, *.sh из списка manifest), pre-commit вызовет contrib/manifest/generate.py и добавит release/manifest-{версия}.json в коммит.

Ручная генерация (локально)

Скрипты .local/build-release-manifest.ps1 (Windows) и .local/build-release-manifest.sh (Git Bash) создаются установщиком и не коммитятся (см. .gitignore).

.\.local\build-release-manifest.ps1
.\.local\build-release-manifest.ps1 2.2.3-SAC
./.local/build-release-manifest.sh

Ядро генерации в репозитории: contrib/manifest/generate.py (используется hook и локальным wrapper).

Релиз (чек-лист)

  1. Bump SSH_MONITOR_VERSION + version.txt
  2. git add изменённые файлы
  3. git commit — hook обновит manifest (или вручную .local/build-release-manifest.sh)
  4. git tag X.Y.Z-SAC
  5. Push в kalinamall (+ GitHub при необходимости)

Поле git_commit в manifest по умолчанию пустое (проверяются только SHA256 файлов). Опционально после коммита: python3 contrib/manifest/generate.py --pin-commit.

См. также auto-update.ru.md.