diff --git a/cmd/bj-release/main.go b/cmd/bj-release/main.go index e8480c4..721923b 100644 --- a/cmd/bj-release/main.go +++ b/cmd/bj-release/main.go @@ -109,6 +109,13 @@ func build(args []string) { if err != nil { fatal("read dir: %v", err) } + // Версия ядра в этом релизе — требование модулей (MinCore). Не номер релиза: релиз мог выйти без + // изменений ядра (только образ, установщик) — тогда ядро сохраняет прежнюю версию, и требование + // «не ниже номера релиза» не пускало модули на это же ядро («нужно ядро не ниже .33, будет .30»). + coreVer := *version + if vb, err := os.ReadFile(filepath.Join(*dir, "bj-server.version")); err == nil && strings.TrimSpace(string(vb)) != "" { + coreVer = strings.TrimSpace(string(vb)) + } var arts []release.Artifact for _, e := range entries { if e.IsDir() || e.Name() == "manifest.json" || strings.HasSuffix(e.Name(), ".version") { @@ -124,7 +131,7 @@ func build(args []string) { if c, isComp := release.ComponentByName(e.Name()); isComp { exec, ok = c.Exec, true if !c.Core { - minCore = *version // модуль собран под ядро этого релиза: на более старое ядро не ставится + minCore = coreVer // модуль собран под ядро этого релиза: на более старое ядро не ставится } } // Своя версия компонента: <файл>.version рядом с файлом (независимые обновления).