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).
Релиз (чек-лист)
- Bump
SSH_MONITOR_VERSION+version.txt git addизменённые файлыgit commit— hook обновит manifest (или вручную.local/build-release-manifest.sh)git tag X.Y.Z-SAC- Push в kalinamall (+ GitHub при необходимости)
Поле git_commit в manifest по умолчанию пустое (проверяются только SHA256 файлов). Опционально после коммита: python3 contrib/manifest/generate.py --pin-commit.
См. также auto-update.ru.md.