Обновления из файла для закрытого контура: пакет с портала → проверка подписи → ядро, потом модули

- release: пакет обновления (ExtractBundle/ReadStagedManifest/WriteBundle), Artifact.MinCore,
  план блокирует модуль, которому нужно ядро новее, чем будет после установки
- bj-release: модули получают min_core = версия релиза
- настройки → Обновления: «Обновить из файла» (zip до 2 ГБ), фон как у сетевого обновления,
  причина блокировки в таблице компонентов

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q4YVo4UMopqT5DzicqpPjL
This commit is contained in:
zuevav
2026-09-18 11:27:23 +03:00
parent 5bafd60df6
commit 17d8ec3988
8 changed files with 443 additions and 2 deletions
+3
View File
@@ -36,6 +36,9 @@ type Artifact struct {
SHA256 string `json:"sha256"` // hex-хеш содержимого
Size int64 `json:"size"` // размер в байтах
Exec bool `json:"exec,omitempty"` // ставить ли +x при установке
// MinCore — минимальная версия ядра, с которой работает этот модуль. Модуль из
// релиза X собран под ядро X: ставить его на более старое ядро нельзя — сначала ядро.
MinCore string `json:"min_core,omitempty"`
}
// Manifest — описание релиза. Подписывается целиком (каноничный JSON).